Desired feature:
- label individual images sent as multiple images with multiple prompts
- Solution: either allow multiple form-data fields of “prompt” and “image” ingested into model context in order arbitrarily, or a 1:1 match of prompt array to image array.
Reasoning:
- The responses API can do this, multimodal content parts of a user message passed as context beyond a tool prompt
Reasoning why Responses is not wanted
- inputs into chat: pay again on the same images for “vision” multiple times for no purpose
- tool call pattern: requires the AI to want to use the tool and then write its own prompt
- tool call pattern: the AI model can easily write its own unwarranted refusals or chat responses without the images
- tool call pattern: internal iterations possible, paying again and again for vision-based chat context, allowing multiple tool calls and loops
- tool call pattern: the AI can emit tool calls wrong, or write loops, iterate on its errors for more unwanted context billing and distraction, or fail when tool counts are limited
- input as user: can be interpreted wanting “chat” or ideas instead of an absolute single function
- output to user: useless chatting
- complete lack of transparency: no control over what the image tool is actually taking as input, no documentation of
image_gencontext scraping, injected tool instructions that are not the developers’ - completely outside the scope of making images
- designed as a zero-imagination “do no better than free ChatGPT at extreme expense”
Bug report + feature request
Images Edits API: duplicate prompt error when attempting multi-part repeat field key capabilities suggests using a prompt[] array syntax instead, but prompt[] is rejected; request support for multi-prompt labeling aligned with image[]
Summary
When sending multiple prompt fields in a multipart request to POST /v1/images/edits, the API returns an error instructing developers to use array syntax (prompt[]=...). However, when using prompt[], the API rejects the request with “expected a string, got an array”. This is misleading about any support and makes it unclear how to provide per-image labels/instructions. Additionally, I request a supported structured mechanism for associating prompts/labels with specific images (1:1 mapping with image[]), similar in spirit to messages-based vision inputs.
Endpoint / Model
- Endpoint:
POST https://api.openai.com/v1/images/edits - Model tested:
gpt-image-1.5
Expected Behavior (bug)
If the API error message suggests prompt[], then one of the following should be true:
prompt[]should be accepted by the endpoint, OR- The error message should not suggest
prompt[]for endpoints that require a single prompt string.
Actual Behavior (bug)
- Repeating
promptreturns a duplicate-parameter error that suggestsprompt[]. - Using
prompt[]results ininvalid_type(array rejected).
Steps to Reproduce (minimal)
- Send a normal edits request with a single prompt: works.
- Send the same request but include multiple prompts: rejected with
duplicate_parameterand hint to useprompt[]. - Send prompts using
prompt[]: rejected withinvalid_type.
Evidence / Responses
Control request (single prompt) succeeds:
- HTTP 200
- Request ID:
req_b4be2e3ea83f423c9c2d1623d27abf85 - Response includes
data[0].b64_jsonandusage.
Duplicate prompt rejected with misleading hint:
- HTTP 400
- Request ID:
req_5d9f922c3a144d0196c5d2080aee0abd - Error:
{
"error": {
"message": "Duplicate parameter: 'prompt'. You provided multiple values for this parameter, whereas only one is allowed. If you are trying to provide a list of values, use the array syntax instead e.g. 'prompt[]=<value>'.",
"type": "invalid_request_error",
"param": "prompt",
"code": "duplicate_parameter"
}
}
Array syntax rejected:
- HTTP 400
- Request ID:
req_22e1c6ba565f4863bf62299cde1a6159 - Error:
{
"error": {
"message": "Invalid type for 'prompt': expected a string, but got an array instead.",
"type": "invalid_request_error",
"param": "prompt",
"code": "invalid_type"
}
}
Indexed syntax also rejected as array:
- HTTP 400
- Request ID:
req_42cf5096889b46569f872e350b78e4cc - Error (same
invalid_type).
Impact
- Developers are given incorrect guidance by the error message and waste time trying an approach the endpoint cannot accept.
- There is no structured way to attach per-image labels/captions/instructions to the multiple images that can be supplied for edits, which is a common need for reliable composition (“use image A as the logo reference, image B as the character reference, image C as the background style reference”, etc.).
- This gap is especially noticeable given that other OpenAI endpoints support interleaved/structured multimodal inputs.
Requested Fix (bug)
Update the duplicate-parameter error message for /v1/images/edits (and likely /v1/images/generations) to be endpoint/schema-aware, e.g.:
- “Duplicate parameter:
prompt. Only one prompt string is supported for Images endpoints. Please provide a singlepromptvalue.”
Or at minimum remove the prompt[] suggestion in contexts where the schema defines prompt as a string.
Requested feature
Give “edits” users parity at and beyond what ChatGPT and “chatting” tool already does. The API is for developers and original ideas, not roadblocks and gating features to only ChatGPT subscribers.