Blog
Sume blog: agent-native video generation, Avatar 1.0 orchestration, and production APIs for builders and coding agents.

Nine 20 s voice files, one 180 s spine: Timeline audio.parts
Join nine 20-second voice files into a 180 s Short spine with Timeline 1.0 audio.parts (up to 20 slices, gapless, no re-TTS) for $0.30 inside one render.

No seed on Omni Flash: budget five takes per shot instead
Sume video models do not accept seed, so a Gemini Omni Flash 1.1 retry is a new draw. Price 3, 5 or 8 takes for 12 shots of 6 s at 720p.

One 30 s shot or three 10 s shots: same price on Seedance 2.5
On Sume, three 10 s Seedance 2.5 shots cost the same as one 30 s shot within 1 cent, plus $0.10 to join them. So cut by story, not by price.

One finished minute: two 30 s Seedance 2.5 shots plus Timeline
A 60-second video from two 30 s Seedance 2.5 shots plus one Timeline render costs $16.24 at 480p, $34.78 at 720p and $85.40 at 1080p.

One Sume webhook endpoint for three run types: verify, route
Format, action and agent runs share one signature scheme. Verify HMAC-SHA256 over timestamp.body, refuse an empty secret, then route on the event field.

A real person's photo avatar reading a script: YouTube disclosure
A Sume avatar made from a real person's photo and given a script can show them saying words they never said, which YouTube says needs a disclosure label.

Pin Gemini Omni Flash 1.1 or send sume/auto: six checks
sume/auto picks the model for video and defaults to 720p and 8 s. Pin gemini-omni-flash-1.1 when you need edit mode, 4K or fixed references. A decision table.

Pin lyria-3.5 or leave sume/music-auto? Read routed_model per job
sume/music-auto resolves to Lyria 3.5 today and can move without notice. When to pin lyria-3.5 on Sume and how job.request.routed_model records the engine.

Python check: is this MP4 over TikTok's 516 kbps? Size and duration
A short Python function turns file bytes and duration_seconds into average kbps and tests TikTok's 516 kbps floor, 500 MB cap and 10-minute limit.

Retake budget for a 500-prompt re-render: 15, 25 or 35 percent extra
Budget 500 prompts as 575, 625 or 675 renders. At 8 seconds and 720p that is $375.00 to $1,512.50 on Sume with one retake in four. Table by model.

Rotate the Sume webhook secret twice in one 24-hour window: what dies
Sume signs with both secrets for 24 hours after a rotation. Rotate a second time inside that window and the secret from two rotations back stops at once.

Seedance 2.5: nine prices for 10, 20 and 30 second clips
Seedance 2.5 on Sume at 10, 20 and 30 s across 480p, 720p and 1080p: from $2.69 to $42.65 per clip, with the arithmetic behind the spread.

sume/auto defaults to 720p and 8s: 250 old prompts, pinned vs Auto
With model sume/auto a request defaults to 720p and 8 seconds. Pinned, 250 such clips cost $150 to $605 on Sume. Auto does not disclose the family.

Sume CLI: --confirm-submit vs --confirm-paid, which one when
The Sume CLI gates non-paid writes with --confirm-submit and avatar creates with --confirm-paid. Reads need neither. Here is the split, with defaults to know.

Sume has no JSON mode: strict false changes nothing, bind a schema
Coming from OpenAI json_object? Sume Format runs have no equivalent. strict false relaxes nothing. Bind a schema or take the built-in output shape.

job.canceled: the third Sume terminal event your handler forgets
Sume sends job.completed, job.failed and job.canceled and nothing else. A handler that covers only two leaves canceled jobs open. Route all three, 204 the rest.

Sume MCP first call: mcp_health must say mcp_oauth, then tools_list
After adding the Sume connector, call mcp_health and check authenticated.auth_source is mcp_oauth. Then call tools_list to see which tools your grant exposes.

Sume webhook status is OK or ERROR; job status is completed or failed
A Sume job webhook body says status OK or ERROR, while the job endpoints say completed, failed or canceled. Branch on the event name and map both vocabularies.

Ten Sume job error categories and which ones are worth a retry
Sume failed jobs carry a category such as validation, quota or worker_timeout. Map all ten to retry, fix, top up or support in one small Python table.

Timeline 60 vs 61 seconds: the minute boundary that doubles the bill
Sume Timeline bills $0.10 per ceil(output minute). A 60-second ad costs $0.10; a 61-second ad costs $0.20. Table of boundaries from 30 to 1,800 seconds.

Timeline plan call: price a narrated render before you spend
POST /v1/timeline-1.0/plan is unbilled and returns billable_minutes and estimated_cost_usd_micros. How to price a narration plus music render first.

Clip-type route table in Python: Sora use cases to Sume models
A 30-line Python route table maps ads, demos and teasers to a Sume model, size and length, refuses a length the model cannot make, and prints the dollar cost.

Video trim end past the clip: trim_clamped_to_source and a short ad
If end is beyond the source, Sume video-trim clamps it and warns trim_clamped_to_source. Ask for 0-20 s of a 15 s clip and you get 15 s, which can break a spot.

Wan 3.0 for 500 prompts: 480p, 720p or 1080p costs 1x, 2x or 4x
On Sume, a 500-prompt Wan 3.0 library costs $250.00 at 480p, $500.00 at 720p and $1,000.00 at 1080p for 8-second clips. Resolution sets the bill.

wave_size_hint 450 is not concurrency: sizing Sume submit waves
With concurrency 100 and a 500-job queue, Sume shows wave_size_hint 450 but your in-flight budget is 100. How to compute both from generation_limits.

Which key scope each Sume webhook endpoint needs
Reading the signing secret needs account:read, rotating and Send test need account:write, and redelivering a job needs jobs:write. A least-privilege map.

Which Sume MCP URL? mcp.sume.com/mcp, not the dev host or Studio
Add https://mcp.sume.com/mcp as the connector. The dev host is internal, and Studio Agent is a separate product, not the hosted MCP connector.

Re-render 100 Sora prompts at 8s 720p 9:16: six Sume models priced
A 100-prompt library of 8-second 720p vertical clips costs $60.00 to $242.00 on Sume depending on the model. Exact per-clip cents and the arithmetic.

A mixed 1,000-prompt library: ads, demos and teasers by model, priced
Matching the model to the clip type puts a 600/250/150 library at $1,162.50 on Sume, against $3,722.50 if every clip ran on seedance-2-fast. The arithmetic.

90 s Audio Library song in a 3-minute Short: what covers the rest
YouTube lets a Shorts Audio Library song play up to 90 s in a 3-minute Short. Sume Music 1.0 is $0.125 a track; Timeline loops a bed for $0.30.

Format run input is data, not instructions: a boundary, not a sandbox
Format runs write input to a file as data, not as instructions. That helps against prompt injection but is not a sandbox. The spend cap bounds the damage.

background: transparent on the Sume image API: two GPT rows only
Transparent PNGs from the Sume image API need background: transparent, which only the two GPT Image 2.5 rows list. See the request, price and the 400 elsewhere.

Bulk queue, empty wallet: failed items, fresh key, check balance
If the wallet runs out during a bulk run, later child runs fail admission and become failed items. Check the balance, then resubmit with a fresh key.

Lost video callback? Sweep pending jobs after the 10-attempt window
Sume retries a job webhook 10 times, 30 seconds apart. If none gets through, the job is still done. A 30-line sweeper that polls pending jobs recovers it.

Continue a 30 s shot: Video frames still as the next first frame
Extract a last-second still from a 30 s Sume clip with Video frames and send it as first_frame for the next shot. Price of the chain at 720p.

Derive the Idempotency-Key from a SHA-256 of the request in Python
A key built from the path and a canonical body hash makes a retry return the original Sume job and a changed prompt a new one, with no 409 to handle.

detach_source_has_no_audio: the free probe that prevents it on Sume
Sume audio detach fails with detach_source_has_no_audio on a video with no sound track. A frames-off video inspect reads probe.has_audio first. Codes inside.

Do Omni references cost extra? Ten images bill like none
On Sume, Gemini Omni Flash 1.1 bills per output second by resolution. A clip with 10 reference images and 3 clips costs the same as one with none.

Does a replayed sume/auto video submit get the same model and price?
Yes. The Sume docs say Auto resolves from the normalized request and catalog version, so an idempotent replay returns the same route and price.

Draft 100 prompts at 480p, finish 15 at 1080p: the two-pass cost
Rendering 100 prompts at 480p on seedance-2-mini and 15 keepers at 1080p on seedance-2-fast costs $152.75 on Sume, against $545.00 for all 100 at 1080p.

Edit or regenerate an Omni clip? The per-second price is the same
On Sume, Gemini Omni Flash 1.1 edit mode and a fresh generation bill the same per output second. Compare three tries of each at 720p and pick by continuity.

Extract the first 90 seconds of a video's audio: audio-detach range
Send audio-detach range {start 0, end 90} for $0.01: 17.28 MB as 48 kHz stereo wav or 1.44 MB as 128 kbps mp3, a Shorts Audio Library song's 90 s.

Format run mcp_unavailable: failed before the model, charged false
mcp_unavailable means the per-turn tools never attached, so the run stopped before any turn. details.charged is false. Retry with a new Idempotency-Key.

output_extraction_failed: harvest_unavailable or harvest_threw?
output_extraction_failed has two reasons with opposite handling: reread a completed run, or report a host defect. Here is how to tell them apart.

provider_credits_exhausted: why a Format run says retryable false
This Format run error is on Sume's side, not your balance or input. details.retryable is false, so do not re-fire in a loop. Here is the handling.

Recast 400 "exactly one source video and 1-4 images": five causes
The Videos API refuses an h3-max-recast request that is not one video plus 1-4 images in input_references. Five causes of that 400 and what to send instead.

Can hosted MCP run a Sume Format? Call it over REST with an API key
The hosted MCP tools-and-gates inventory lists no Format-run tool. Run Formats with POST /v1/formats/{handle}/{slug}/runs and an API key that has formats:write.

A 10-minute render needs 11 to 12 jobs_wait calls, not one long one
On hosted MCP, jobs_wait holds at most 55 seconds, default 50. A ten-minute render is 11 or 12 waits on the same job id. Never resubmit the paid create.