Guides
Sume guides: the API, Formats, agents, models, media tools and pricing, each answer dated and sourced.

image_url or reference_image_urls: the Omni field for a photo
On Gemini Omni Flash 1.1, one image in image_url is a start frame; one image in reference_image_urls with no frame is reference-to-video. The price is the same.

Is 1080p worth it for 30 s AI shots? 2.46x on Seedance, 2x on Wan
On Sume, 1080p costs 2.46 times 720p for a 30 s Seedance 2.5 clip and exactly 2 times on Wan 3.0. A rule for choosing the resolution.

Is a 4:5 video a YouTube Short? 1080x1350 on Sume Timeline
YouTube's Shorts page names square or vertical videos up to 3 minutes. 4:5 is taller than wide. Sume Timeline renders 1080x1350, so verify it after upload.

Log requested vs stored model ids to find retired ids still in config
Sume runs a retired image id as its successor and stores the successor on the job. Compare the two ids after each submit to find stale config.

Music bed shorter than the voiceover: loop, fade and duck in Timeline
If a Music 1.0 bed ends before your narration, Sume's Timeline soundtrack can loop it, fade out up to 10 seconds and duck 0 to 20 dB under speech. The settings.

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 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 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.

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.

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.

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.

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.

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.

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.

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.

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.

Keyframe or exact trim for a TikTok ad: which keeps 516 kbps?
Sume video-trim exact re-encodes with libx264; keyframe copies the stream. You cannot set bitrate, so measure size / duration against TikTok's 516 kbps floor.

MAI-Voice-2.1 and MAI-Transcribe-2: what Sume lists for voice and STT
Microsoft AI's news page names MAI-Voice-2.1 and MAI-Transcribe-2. Sume lists neither; it lists Sonic TTS (38 micros a character) and STT at $0.01 a minute.

MiniMax H3 duration errors: at most 15 s, at least 5 s, Recast 30 s
Video Router refuses a MiniMax H3 job over 15 s or under 5 s with a named message, and Recast has its own 5-30 s rule. Messages, limits and a pre-check.

nano-banana-2 still works on Sume: it runs as Nano Banana 2.1 at 10c
Nano Banana 2 is retired on Sume. The ids nano-banana-2 and google/nano-banana-2 still work and run as Nano Banana 2.1, and the job stores the 2.1 id.

Nano Banana 2 is retired on Sume: the old id still works, as 2.1
google/nano-banana-2 and nano-banana-2 still work on Sume and run as Nano Banana 2.1. The job stores the 2.1 id, and the catalog lists only 2.1.