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

Can Sume add trending audio to a Reel? What it does and does not do
Instagram says trending audio can affect Reel distribution. Sume does not read or attach Instagram sounds; it makes original music and clip audio instead.

Empty job_id next to job_ids: how Sume MCP treats placeholders
Some agent clients fill every optional tool field with empty strings, zeros and empty arrays. What Sume's MCP drops, what it keeps, and what still errors.

Docker Agent YAML: add Sume as a remote MCP toolset
Docker Agent takes a remote MCP URL, headers and a tools allowlist. Here is the Sume entry with a Bearer key from the environment and a read-only tool list.

Does audio off make AI video cheaper? Kling 3 yes, Wan 3.0 no
Turning generate_audio off cuts Kling 3 by a third on Sume but changes nothing on Wan 3.0, Seedance 2.5 or Omni. Which rows price sound, with a 5 s example.

On a 402, try a cheaper rung: a Python ladder with fresh keys
A 402 on Sume means nothing was reserved, so a cheaper request can go straight through. Python ladder: Seedance 720p, 480p, then Wan 480p, one key per rung.

Sume failed job says [redacted_url]: what was removed
A [redacted_url] in a Sume job error is by design: URLs, provider ids, env names and secrets are masked, and the provider reason is capped at 300 characters.

Franchise With 40 Locations: One Ad Per Store With Bulk Runs
Queue one Format run per store in a single bulk request. A queue holds 1 to 100 items, runs at concurrency 1 to 16, and each run carries its own spend cap.

Freshdesk Trigger Webhook: 1000 calls an hour and Sume bulk runs
Freshdesk automations cap webhook calls at 1000 an hour and retry failures every 30 minutes. Here is how a relay maps ticket bursts onto Sume bulk runs.

Golf Instructor Lesson Videos: Where AI Helps and Where It Does Not
A golf coach should film the real swing. Sume handles the finishing: trim at $0.02, captions at $0.20, a music bed at $0.13 and a $0.10 per-minute render.

Grafana alert webhook with HMAC to a Sume run: incident explainer
Grafana's webhook contact point can sign alerts with HMAC over timestamp:body. Verify it, then start a Sume Format run per firing alert with a stable key.

Haiku 5.5 with US-only inference: 1.1x on both price tiers
Anthropic's pricing page applies the 1.1x US-only multiplier to Haiku 5.5's over-100k prices too. A worked agent-loop table and where Sume's own cap sits.

Instagram Align for Reels: match AI shots with the last frame
Instagram's Align lines up objects between recorded clips. For AI shots, take the previous clip's last still and send it as the next clip's first frame.

Jotform webhook rawRequest and a 30 s timeout: start a Sume run
Jotform posts submissions as form data with a rawRequest field and a 30 s timeout. Answer fast, start a Sume Format run, and let a webhook return the result.

Kombucha Brand: Keep the Label Readable in AI Video With a First Frame
Start the clip from your real label photo as the first frame. Sume's Gemini Omni Flash 1.1 renders 8 seconds at 720p for $1.00 with native audio.

Is there a lipsync-1.0 endpoint on Sume? Old paths 404; use Fabric
Sume's old /v1/lipsync-1.0 paths return 404 and its model ids return model_not_found. Send the same still and audio to veed/fabric-1.0 or H3 Max lip-sync.

Make a vertical Short clip with curl and jq: submit, poll, download
A 20-line shell script that asks Sume for an 8-second 9:16 clip at 1080p, polls the job, and saves short.mp4, matched to YouTube's Shorts page.

Node script for a 9:16 TikTok video: check the model, then submit
A Node 20 fetch script that confirms a Sume model lists 9:16 and your duration, submits one 12-second 720p job, and saves an MP4 that fits TikTok's API limits.

Planlock in front of Sume MCP: approve the plan, then the calls
Planlock is an MCP proxy that enforces a human-approved plan. Where it fits in front of Sume's hosted MCP, and which Sume gates still do work behind it.

Render deploy hook returns 202: start a Sume run after a deploy
Render deploy hooks return 200 when a deploy starts and 202 when queued. Call one, then start a Sume Format run for the release only once it ships.

Revoked a Sume API key and it still works? Up to 15 seconds
After you revoke a Sume API key, the API can keep accepting it for up to 15 seconds by default, because the key lookup is cached. What that means for a leak.

Does aspect ratio change Seedance 2.5 price? Barely: under 1%
On Sume, Seedance 2.5 bills video tokens from output pixels, so 9:16, 1:1 and 16:9 cost the same and 21:9 about 0.7% more. Per-ratio table at 5 s.

Seedance 2.5 with a reference video: costs more under 22.5 s
A reference video bills at 0.6x but adds 15 assumed seconds on Sume, so Seedance 2.5 clips under 22.5 s cost more and 30 s clips cost less. Worked table.

SendGrid ECDSA event webhook vs a Sume HMAC verifier: two checks
SendGrid signs event webhooks with ECDSA, while Sume uses HMAC SHA256. Here is why one verifier will not cover both and how to start a Sume run from an event.

No dislike on Shorts: how to test three hooks with pinned Sume ids
YouTube retired the Shorts dislike button on June 25, 2026. Test hooks by making three variants on one pinned Sume video id and comparing, not by guessing.

Smartsheet webhook verification challenge, then a Sume Format run
Smartsheet checks your endpoint with a challenge before a webhook is enabled. Answer it, then use change events to start Sume Format runs with a stable key.

Sume public_reason: generation_rejected vs temporary error
How Sume picks generation_rejected, temporary_generation_error or generation_failed on a failed job from the provider HTTP status and the retryable flag.

Sume "Generation could not start": rejected request or outage
Generation could not start is the fallback when a provider rejects a submit. A 4xx gives generation_rejected_request; anything else gives submit_failed.

Sume job error details.input_field: the parameter that failed
When a provider rejects one request field, Sume publishes its name as details.input_field beside provider_error_message. Map it back to your body and fix it.

Sume job failed artifact_too_large: shrink the output
A finished file that storage refuses with HTTP 413 fails as artifact_too_large and is not retryable. Shorten the cut, lower the resolution or the bitrate.

Sume content_policy_rejected: image, music and video messages
Sume scans a provider's rejection text for six phrases and answers with one of three fixed content-policy messages and next_action fix_input.

Sume job failed: generation_output_unavailable, retry or not
generation_output_unavailable means Sume could not copy a finished output into its storage. Retryable true gives retry_later; false gives contact_support.

Sume job failed: image_content_rejected, what to change
image_content_rejected marks a non-retryable failure at an image-input stage such as first_frame. Sume sets next_action to fix_input: swap the picture.

Sume command line tool on Linux arm64: Graviton, Docker on a Mac
The Sume command line tool ships Linux arm64 and x64 binaries plus macOS arm64 and x64. Windows is x64 only. Pick the right asset for Graviton or Docker.

The agent field in Sume MCP results: next_step and poll_after
Sume's hosted MCP adds an agent object to tool results with next_step, poll_after_seconds, adjustments and recovery. What each field means and when it is null.

ClickUp taskStatusUpdated webhook: start a Sume Format run
Start a Sume Format run when a ClickUp task changes status: verify X-Signature, derive the Idempotency-Key from the task, cap spend, and write the result back.

Tour Operator Trip Teaser: 30 Seconds in One Job, and Kling 4.0?
Kling 4.0 is listed with 3 to 30 second clips, but Sume lists Kling 3 at 15 s. For a 30-second teaser in one job, Sume offers Wan 3.0 and Seedance 2.5.

Trello webhook HMAC-SHA1 vs Sume HMAC-SHA256 in one receiver
Can one server verify Trello and Sume webhooks? Yes, with two verifiers: Trello signs body plus callback URL with SHA-1, Sume signs timestamp.body with SHA-256.

Upgraded your Sume plan but ratelimit-limit is still the old number?
A plan change can take up to 60 seconds to reach the per-key rate limit, because the tier is cached. Why ratelimit-limit lags, and what changes at once.

Wan 3.0 vs Seedance 2.5: the keep rate where Wan is cheaper
Wan 3.0 at 720p costs $0.63 per 5 s and Seedance 2.5 costs $2.89 on Sume. Wan wins per kept clip unless its keep rate falls below about 21.8% of Seedance's.

Generate a Go client from the Sume OpenAPI with oapi-codegen
The full Sume spec trips oapi-codegen on a [number, null] type, but filtering to the operations you use works. Config, generated names and a short caller.

What to log from a Sume API error: request_id, code, no secrets
Log the status, error.code, error.request_id, retry-after and the path without its query. Keep keys, signed URLs and media URLs out. A 25-line Python logger.

Retry or not: a decision table for failed Sume submit calls
Which Sume errors deserve a retry with the same Idempotency-Key, which mean poll the job, and which mean fix the request. One table and a 15-line classifier.

Clear a full Sume queue: cancel queued jobs after 429 queue_full
When submits fail with 429 queue_full, list queued jobs with GET /v1/jobs?status=queued and cancel the ones you no longer need. Safe on a 409, with a script.

Python urllib gets 403 'error code: 1010' from api.sume.com: set a UA
Python's default urllib User-Agent got a plain-text HTTP 403 from api.sume.com in my test while other clients passed. Add a User-Agent and parse errors safely.

Idempotency keys for Sume batches: item index plus payload hash
A deterministic Idempotency-Key makes a rerun return the original jobs, and a changed payload gets a new key, avoiding 409 idempotency_conflict.

Crash-safe Sume submit: write the key first, reconcile on boot
If a worker dies between POST and saving the job id, list queued and processing jobs, match idempotency_key, and resubmit only keys still unknown.

Map Sume API error codes to messages your app's users can act on
A translation table from Sume HTTP codes such as 402, 409, 413, 415 and 429 to user-facing copy, plus which errors the user cannot fix and should never see raw.

Detect Sume OpenAPI drift in CI: hash the operations you call
Fetch api.sume.com/reference/json, hash only the operations you use, and fail CI when one changes. A 23-line script, plus the User-Agent a stdlib fetch needs.