Reference · Tools

OpenAI Vision

Analyze images using the GPT-5.x frontier multimodal models.

Action (binary) AI v1 Binary data

OpenAI Vision analyses images with a multimodal OpenAI model, accepting the image from a URL, the binary store, or a file ID returned by OpenAI File Upload, with configurable detail level, system prompt and temperature. A typical build is checking uploaded photos meet a specification before they are accepted.

Node type
Action (binary)
Parameters
10
Outputs
Output, Error
Credentials
OpenAI

OpenAI Vision

Analyze images using the GPT-5.x frontier multimodal models.

Overview

OpenAI Vision uses the Responses API (POST /responses) to analyze images with OpenAI natively multimodal models; the Model dropdown lists the vision-capable models currently available to the workspace. Images can come from the binary store (base64-encoded), from a URL, or by OpenAI file ID. Supports system prompts, detail level (auto/low/high), temperature, and max output tokens. Each input item receives a separate vision analysis. The response text is placed in a configurable field name in the output JSON, along with model and usage metadata.

Category: AI
Tool Name: openai_vision
Version: 1

Appearance: Icon: openai | Color: #10a37f

Node Type

Action (Binary) — handles file/binary data operations

Input / Output

DirectionPort(s)
InputInput
OutputOutput, Error

Credentials

This tool requires OpenAI credentials. See the Credentials Guide for setup instructions.

Parameters

ParameterTypeRequiredDefaultDescription
ModeloptionsNo(current default)The OpenAI model to use for image analysis. The GPT-5.x frontier line is natively multimodal — pick a specific pinned version.
Options: the OpenAI vision models available to your workspace — pick one from the dropdown.
System PromptstringNoSystem instructions that set the behavior and persona of the model. Leave empty for default behavior. Supports expressions.
User MessagestringNoDescribe this image in detailThe question or instruction about the image. If empty, falls back to item.json.message. Supports expressions.
Image SourceoptionsNobinaryWhere to get the image for analysis.
Options: binary (read the image from the binary store — uploaded or piped from another node), url (fetch the image from a URL), fileId (reference an image previously uploaded via openai_file_upload)
Binary Property NamestringNodataThe name of the binary property containing the image data. Names are case-sensitive — see the upstream node’s Binary Data panel for the exact names to use. (shown when Image Source is binary)
Image URLstringNoThe URL of the image to analyze. If empty, falls back to item.json.imageUrl. Supports expressions. (shown when Image Source is url)
Image File IDstringNoOpenAI file ID (file-…) for a previously uploaded image. Falls back to item.json.imageFileId or item.json.attachmentFileId. Supports {{ $json.fileId }} expressions from an upstream openai_file_upload node. (shown when Image Source is fileId)
OptionscollectionNo{}Optional analysis settings — add only the fields you need.
— TemperaturenumberNo1Sampling temperature (0-2). Lower values make output more focused and deterministic.
— Max Output TokensnumberNo4096Maximum number of tokens the model can generate in the response.
— DetailoptionsNoautoImage detail level. “high” uses more tokens but provides better analysis of fine details.
Options: auto (let the model decide), low (low-resolution analysis — faster, fewer tokens), high (high-resolution analysis — more detailed, more tokens)
— Response Field NamestringNoresponseField name in the output JSON where the response text will be placed.
Include InputbooleanNofalseWhether to include the original input item fields in the output alongside the response.
Max ConcurrencynumberNo10Maximum number of items to process concurrently.

Output Data

One output item per input item. The analysis text lands on the field named by Response Field Name (response by default), with model and usage beside it. The rest of the input item JSON is dropped unless Include Input is on; binary data on the input item is forwarded unchanged, so the image travels with its description.

{
  "response": "A description of what the model sees in the image",
  "model": "the model that produced the analysis",
  "usage": { "input_tokens": 1180, "output_tokens": 220 }
}
  • Image tokens dominate usage on this node. Setting Detail to low is the single biggest cost lever for high-volume image pipelines.

Reference the result downstream by expression, e.g. {{ $json.response }}.

Usage Examples

  • Describe the contents of an uploaded image
  • Extract text from a screenshot using OCR
  • Classify images by their content
  • Analyze a chart or diagram from a URL
  • Identify objects in photos from binary data

Example Configuration

Describe an image piped in from an upstream node:

{
  "type": "openai_vision",
  "parameters": {
    "imageSource": "binary",
    "binaryPropertyName": "data",
    "userMessage": "Describe this image in detail"
  }
}

Read a document image at high detail and keep the original fields:

{
  "type": "openai_vision",
  "parameters": {
    "systemPrompt": "You are a precise document reader. Return only what is written.",
    "userMessage": "Extract the invoice number, date and total from this image.",
    "imageSource": "binary",
    "binaryPropertyName": "scan",
    "includeInput": true,
    "options": {
      "detail": "high",
      "temperature": 0,
      "responseFieldName": "invoiceText"
    }
  }
}

Classify images from URLs cheaply:

{
  "type": "openai_vision",
  "parameters": {
    "userMessage": "Reply with one word: PRODUCT, PERSON, or OTHER.",
    "imageSource": "url",
    "imageUrl": "{{ $json.photoUrl }}",
    "maxConcurrency": 20,
    "options": {
      "detail": "low",
      "maxOutputTokens": 8,
      "responseFieldName": "imageClass"
    }
  }
}

Error Handling

ModeBehavior
stopHalts workflow on first error
continueSkips failed items, passes successful ones through
errorPortRoutes failed items to Error output port

Tips

OpenAI Vision analyzes images using an OpenAI multimodal model — whichever option is picked in the Model dropdown — via the Responses API, with configurable detail level, system prompts, and temperature. Use it when a workflow needs visual understanding of images sourced from URLs, the binary store, or an OpenAI file ID returned by openai_file_upload, across one or more input items. Each item produces an output JSON object with response text in a configurable field, plus model identifier and token usage metadata, with failures routed to the error output.

Frequently asked questions

How can I supply the image?

Three ways: a URL, binary data from the binary store, or an OpenAI file ID from File Upload. That last one is useful when the same image will be used by several nodes.

What does the detail level change?

How closely the model examines the image, which trades cost and latency against how much fine detail it can resolve.

What does the output contain?

The response text in a configurable field, plus the model identifier and token usage metadata.

Can it process several images?

It handles one or more input items, each producing its own analysis, so a batch of images can be processed in one node run.

Build with the OpenAI Vision node

Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need OpenAI credentials first.

Open BusyBot

Last updated . Spotted something wrong? Tell us.