Stream partial images from the Sume Image API? 400, use async events
stream: true returns 400 streaming_not_supported and every catalog row reports supports_streaming false. For progress, submit async and read job events.

No streaming today. Every row in GET /v1/images/models reports supports_streaming: false, and stream: true returns 400 streaming_not_supported. The field is in the schema so that clients written for the streaming form need no code change when Sume ships it. Until then, use mode: "async" and read GET /v1/jobs/{id}/events, or a webhook for the terminal event.
What each mode gives you
The Image API docs warn that mode: "subscribe" is not a progress stream: it is an alias of sync and gives one bounded 30-second wait.
| Mode | What you get |
|---|---|
| sync (default on this route) | One wait up to 30s, then 200 or a 202 envelope |
| subscribe | Same as sync |
| async | 202 at once; poll status or read events |
| webhook | 202 at once; terminal callback to your HTTPS URL |
A progress-friendly flow
Submit async, show a spinner from the status poll, and replace it with the image URL when terminal and result_ready are true. Image jobs are short, so a poll every few seconds, honoring next_poll_after_seconds, is enough for a UI.
Skeleton cards in the UI cost nothing and hide the wait better than partial images would.
curl -s https://api.sume.com/v1/images \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"openai/gpt-image-2.5","prompt":"lighthouse at dusk","mode":"async"}'Reference
The job pattern is in Jobs and results. Current credits are on the rate card.
Sources
Related posts
More in Developers
- 402 insufficient_credits: read required and available credits
The Sume 402 body gives details.required_credits and details.available_credits, whole credits. Compute the shortfall in Python and stop a batch cleanly.
- k6 2.3 --once and --scenario: smoke-test the Sume API without spend
Use k6 --once and --scenario for a Sume API smoke test that costs nothing: models, a deliberate 400, and a paced balance read that counts 429s.
- Kling 4 or Vidu Q4 on Sume: model_not_found and what to call
Sume has no kling-4 or vidu-q4 row, so a submit with those ids fails with 404 model_not_found. Call kling-3, wan-3.0 or sume/auto. Read 2026-10-13.
- Launch-day checklist before moving off kling-3 on Sume
Before you swap kling-3 for a newer Kling or another family, check the catalog, 1080p-only output, 4-15 s, no references, and ratio support. Read 2026-10-13.
Written by Sume