mask_url on ChatGPT Image 2: not listed, only the 2.5 rows take it

Sume lists mask_url only on ChatGPT Image 2.5 Flare and Sunburst. Sending it to ChatGPT Image 2 is rejected. What to do for a masked edit on the older row.

4 min readSume
All posts

On Sume, mask_url is listed only on the two ChatGPT Image 2.5 rows, openai/gpt-image-2.5 (Flare) and openai/gpt-image-2.5-sunburst. ChatGPT Image 2 (openai/gpt-image-2) takes reference photos but does not list mask_url, so a request that sends one is rejected with 400 unsupported_parameter instead of the mask being ignored.

Why the request fails

The Image API docs say that if a request sets a parameter the selected model does not list, Sume rejects it and does not drop it silently. The mask_url row in the parameter table is described as an optional public HTTPS mask URL for ChatGPT Image 2.5 edits. The background field has the same scope.

Edit-related parameters on the ChatGPT rows in the Sume catalog (repo and docs, read 2026-10-07)
ParameterChatGPT Image 2ChatGPT Image 2.5 (Flare, Sunburst)
mask_urlNot listedListed
backgroundNot listedauto, transparent, opaque
Reference photosUp to 10Up to 16
quality valueslow, medium, highauto, low, medium, high, xhigh, max

What OpenAI asks for in a mask

OpenAI says the image and mask must be the same format and size, under 50MB, and that the mask needs an alpha channel. It also says masking is prompt-based: the model uses the mask as guidance and may not follow its exact shape. Those notes are from the OpenAI image guide and apply to the mask you build for the 2.5 rows too.

Options if you are on ChatGPT Image 2

You have two honest paths. Move the edit to a 2.5 row, or describe the region in the prompt and send the photo as a reference.

  • Switch the model id to openai/gpt-image-2.5 and keep the mask_url.
  • Stay on gpt-image-2 and write the change in words, such as "only change the left cushion".
  • Read supported_parameters from GET /v1/images/models before you add a field to a request.
  • Check the result outside the intended region either way; a mask is guidance, not a hard boundary.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume