Batch image generation API: how many images can run at once?
Sume queues extra generation jobs instead of rejecting them. The per-plan concurrency and queue table, the 429 queue_full case, and how to size an image batch.

How many images run at once depends on your plan: Sume's docs list 1 processing job on Free, 4 on Pro, 8 on Startup and 20 on Scale, and valid extra jobs wait as queued instead of failing. Only when the queue is also full does a submit return 429 queue_full.
From the Generation admission and Image API docs, read 2026-09-29. The dashboard Concurrency tab and the generation_limits field in submit responses are the live source, and the docs say to prefer them over the static table.
What are the limits per plan?
| Plan | Processing at once | Queue capacity | Accepted jobs |
|---|---|---|---|
| Free | 1 | 5 | 6 |
| Pro | 4 | 20 | 24 |
| Startup | 8 | 40 | 48 |
| Scale | 20 | 100 | 120 |
What happens when I submit more than the limit?
Valid jobs are accepted as queued while queue capacity remains, then move to processing as slots open. queued is not a failure. When both are full the submit fails with 429 queue_full; wait for jobs to finish or cancel queued ones, then retry with the same idempotency key.
How should I submit a batch?
Use mode: "async" with an Idempotency-Key per item, store each job id, and poll with backoff. Do not resubmit a paid request just because your local worker timed out.
for i in 1 2 3 4; do
curl -s -X POST https://api.sume.com/v1/images \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: catalog-batch-001-item-$i" \
-d "{\"model\": \"google/nano-banana-2\", \"prompt\": \"Studio photo, item $i\", \"mode\": \"async\"}"
doneDoes a queued job cost anything while it waits?
A submit needs the estimate reserved from your balance, and without enough balance it returns 402 insufficient_credits before any provider work starts. A job that fails or is canceled is not billed for images. Check GET /v1/balance before a large batch.
Sources
Related posts
More in Developers
- Batch video processing by API: one edit, many videos
Batch video processing by API is a loop: one edit job per file, each with its own idempotency key, collected by webhook. How it works on Sume, and costs.
- Caption API script_alignment_mismatch: what it means and how to fix it
If script_text mismatches the speech, POST /v1/video-captions fails with script_alignment_mismatch or script_alignment_failed. Simplify or omit it.
- claude -p with --mcp-config: run Sume video tools from a script
Use claude --bare -p with --mcp-config and --allowedTools to call Sume's hosted MCP tools in CI; read mcp_server_errors so an unloaded server fails the job.
- Add a video tool to Claude Sonnet 5.5 in the Messages API
Define a generate_video tool with input_schema, run it against Sume's /v1/videos when Claude Sonnet 5.5 returns tool_use, and return the job id as tool_result.
Written by Sume