Recover an image job from the terminal: sume jobs download
The Sume CLI has no image subcommand, but sume jobs status, events, and download work on image jobs made through the API. The commands, in order.

The Sume CLI cannot create an image, but it can recover one. Image 1.0, Video 1.0, and Music 1.0 have no CLI subcommand, yet sume jobs status, sume jobs events, sume jobs result, and sume jobs download work on jobs you created through the Developer API.
That matters when a script dies after submit: with the job id you recover the result instead of paying for a second generation.
Which commands do I use?
Each command takes a job id. Use --agent --json for output a script can parse. jobs watch polls until the job is terminal or times out, and jobs download writes completed media artifacts into a folder.
| Command | Use |
|---|---|
sume jobs status <job_id> | Current state |
sume jobs events <job_id> | Timeline for debugging |
sume jobs result <job_id> | Result JSON |
sume jobs watch <job_id> | Poll until terminal or timeout |
sume jobs download <job_id> --output-dir ./out | Save media files |
sume jobs cancel <job_id> --confirm-submit | Cancel before generation starts |
What does a recovery session look like?
Submit through the API with an Idempotency-Key, keep the job id in a log, and recover with the terminal if anything breaks.
curl -sS https://api.sume.com/v1/image-1.0/generate \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{"prompt":"Studio product photo on white background"}'
sume jobs status <job_id> --agent --json
sume jobs events <job_id> --agent --json
sume jobs download <job_id> --output-dir ./outWhy not resubmit?
A local timeout is not a job outcome. Sume's docs say not to resubmit the original paid request because a local process timed out; poll the job. A new submit with a new key is a new paid job.
Image 1.0 is retiring soon, so for new work submit through POST /v1/images, and recover the job with the same commands. See Jobs and media inputs and Jobs and results.
Sources
Related posts
More in Developers
- Recraft Studio batch of 1, 2, 4, 6 or 8 images vs Sume's n range
Recraft Studio lets you choose 1, 2, 4, 6 or 8 images per generation. On Sume, n is a per-model range; read the descriptor before you plan a batch.
- Reference image rejected? A public HTTPS URL checklist
Sume rejects localhost, private-network, non-HTTPS, and signed or private URLs for reference images. Six checks, and what image_not_fetchable means.
- Remove background from a PNG that already has transparency on Sume
Sume's rmbg route accepts a PNG that already has alpha. Substantial-alpha inputs are flattened onto mid-gray #808080 first, and it is billed once.
- Retake one sentence of a voiceover and splice it in with concat parts
Re-record one sentence, not the whole TTS take: use wav sentence segments and one timeline audio concat job with source_in. Python for the parts list.
Written by Sume