GPT Image 2.5 request returned 202: how to get the image from the job

When GPT Image 2.5 takes longer than 30 seconds on Sume, POST /v1/images returns 202 with a job. Poll the status URL, then read the result, or use a webhook.

4 min readSume
All posts

If a GPT Image 2.5 request on Sume returns 202 instead of 200, the image is still being made: the body is a job envelope with status_url and result_url, not the picture. Poll the status URL until the job is terminal, then fetch the result URL. Sume blocks for up to 30 seconds, and 4K, high quality and large n are the settings most likely to run past that.

OpenAI's guide says complex prompts may take up to 2 minutes, so a 202 is normal. Sume behavior from the Image API docs and Jobs and results, read 2026-09-29.

How do I tell the two responses apart?

Check the status code, not the body shape.

Read 2026-09-29. From the Image API docs.
StatusBodyNext step
200Images in data[].url, with usage.costUse the URLs
202Job envelope with status_url and result_urlPoll, then fetch the result

How do I poll the job?

The result uses the standard job result shape, not the 200 image body.

curl "https://api.sume.com/v1/jobs/$JOB_ID/status" \
  -H "Authorization: Bearer $SUME_API_KEY"

curl "https://api.sume.com/v1/jobs/$JOB_ID/result" \
  -H "Authorization: Bearer $SUME_API_KEY"

Can I skip the wait entirely?

Yes. Send mode: "async" to get the job envelope at once, or mode: "webhook" with a public HTTPS webhook_url to receive the terminal event. mode: "subscribe" is not a progress stream; it is an alias of sync. wait_timeout_seconds takes 0 to 30.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume