Which Sume calls cost nothing: checks, plans and failed images
Several Sume calls are free: video_filter check_only, timeline plan, hypit compose output check, and failed or cancelled image generations. Lint before you pay.

Four things on Sume cost nothing: a video_filter call with check_only: true, a timeline plan, a hypit compose with output: "check", and an image generation that fails or is cancelled. A few services are also free today: social scrape, voice clone, and hypit notes and align.
The four free checks
Each of these is stated in the product docs, and each exists to let you lint a request before a paid job reserves anything.
| Call | What it does | Charge |
|---|---|---|
| video_filter with check_only: true | Validates the filter without rendering | Free |
| Timeline plan | Returns a plan, creates no job | No job, no reserved credits |
| hypit compose with output: "check" | Free lint of the compose request | Free |
| Failed or cancelled image generation | Image job that does not complete | Not charged |
Use them as a gate
The cheapest bug is the one caught before a reserve. Run the check first, then submit the real job. If the check rejects the request, you have spent nothing. If it passes, the paid call is far less likely to fail late.
Images are billed all-or-nothing. A request for several images either completes and is charged, or fails and is not.
What is free today, and what is not promised
Social scrape, voice clone and hypit notes and align are priced at zero in the price book today. That is a price-book state, not a guarantee. A zero row can be changed, so keep reading the price_book_* fields on your usage rows rather than assuming zero.
Check your balance too
Balance reads cost nothing and show what is available. The balance endpoint is the one to call before any large batch.
curl https://api.sume.com/v1/balance \
-H "Authorization: Bearer $SUME_API_KEY"A lint-first pattern
A pattern that costs nothing: plan a timeline, run the filter in check-only mode, and lint hypit compose with output: "check" before the paid submit. Each step catches a different class of mistake: a bad plan, an unsupported filter graph, an invalid compose request.
Only after all three pass do you submit the job that reserves money. If a check fails, fix the request and run the check again. You can repeat that as many times as you like.
What a failure refunds
Free checks never hold money. For paid jobs that fail, the hold is released and the failed image generations are not captured. For a job that completes and bills, the charge is the usage row you can read. If the amount is wrong, the price_book_* fields show how it was computed.
Related posts
More in Developers
- Sume CLI avatar-videos batch: plan, create, watch, result
The Sume CLI batches avatar videos in four steps against local state files. What each step does, and why the per-item idempotency key makes reruns safe.
- Sume CLI quickstart: create an avatar video, follow it with jobs
Install the Sume CLI, log in, create a paid avatar video, and follow the job with sume jobs status, result and events. Why Image and Video have no CLI command.
- Map the Sume error envelope to RFC 9457 problem details in 15 lines
RFC 9457 defines type, status, title, detail and instance. Sume's error.code, message and request_id map onto them; keep the retry fields as extensions.
- Format run stuck queued? Sume waiting vs runtime_unavailable
A queued Sume Format run reports queue.state waiting or runtime_unavailable, with position always null. A bash and jq check that reads the status route.
Written by Sume