Developers
Building on the Sume API: keys and hosts, jobs and runs, polling, webhooks, idempotency, errors and rate limits, the SDK, the CLI, and MCP auth.

X API media upload: initialize, append, finalize a Sume video
X's chunked upload now uses POST /2/media/upload/initialize, append and finalize. Download the finished Sume video, then run the three calls yourself.

X DM video limit: 140 seconds and 512 MB, and how to trim to it
X lists DM video (dm_video) at 140 seconds and 512 MB by default. Cut a clip to length with Sume video-trim, which takes 0.2 to 900 seconds.

X video audio must be AAC-LC, not HE-AAC: check an AI video
X requires AAC Low Complexity audio, mono or stereo, with H264 High Profile and YUV 4:2:0. What Sume's exact trim keeps and re-encodes, and what it leaves.

X video max 1280x1024, ratio 1:3 to 3:1, 60 fps: conform a clip
X video must be 32x32 to 1280x1024, 60 fps or less, ratio 1:3 to 3:1. Read literally, a default 1080x1920 Timeline file is over; conform with video-trim.

YouTube containsSyntheticMedia: the videos.insert field for AI video
videos.insert lists status.containsSyntheticMedia, a boolean on the videos resource. Sume returns the file; you set the flag in your own insert call.

Azure batch takes 10,000 inputs per job; Sume sends one text per job
Azure batch synthesis accepts up to 10,000 text inputs in a 2 MB JSON body. Sume TTS 1.0 takes one transcript of up to 20,000 characters per job.

Azure batch: 95% of outputs within 120 seconds; Sume TTS waits 30
Azure says half of batch outputs finish in 10 to 20 seconds and 95% within 120. Sume TTS sync mode waits at most 30 seconds, then hands you a status URL.

Azure word boundaries in ms vs Sume TTS timestamps in seconds
Azure writes word timings as AudioOffset and Duration in milliseconds, in a separate file. Sume returns words[] with start and end seconds on the job result.

Boost dull video colors by API: the vibrance filter intensity
Sume's video filter allowlists vibrance, with intensity from -2 to 2 and a default of 0. A small positive value lifts muted color; a negative one mutes it.

Deepgram Aura-2 allows 2,000 characters per request; Sume 20,000
Deepgram answers 413 when Aura text passes 2,000 characters. Sume TTS 1.0 accepts 1 to 20,000 characters per request, with a separate 1,200-second audio cap.

Deepgram Aura-2 languages: seven, and how Sume TTS sets a language
Deepgram lists English, Spanish, German, French, Dutch, Italian and Japanese for Aura. Sume TTS takes a language field per request, matched to the voice.

Deno fetch stops retrying fresh-connection POSTs: Sume keys
Deno now retries fetch transport errors only on reused connections. That cuts duplicate POSTs, but a paid Sume submit still needs an Idempotency-Key.

Remove video speckle noise by API: median filter radius
Sume's video filter allowlists median, which replaces each pixel with the middle value of its neighbours. Radius runs 1 to 127; start at 1 and compare.

Faded matte-black video look by API: raise the colorlevels black point
Sume's video filter allowlists colorlevels. Raising the output black point (romin, gomin, bomin) lifts pure black to dark gray for a faded, matte look.

Fix a yellow or blue color cast in a video by API (colortemperature)
Sume's video filter allowlists colortemperature, a Kelvin value from 1000 to 40000 with a default of 6500. Warm or cool a clip and mix it in part.

Google Cloud TTS caps requests at 5,000 bytes; Sume counts characters
Google lists 5,000 total bytes per request and says multi-byte characters such as ja-JP count toward it. Sume TTS 1.0 counts characters: up to 20,000.

Google Chirp 3 allows 200 requests a minute; Sume limits by plan
Google lists per-minute request quotas by voice type: Chirp 3 at 200, Studio 500, Standard 1,000. Sume TTS is limited by workspace concurrency on your plan.

Google Vids caption font, position, animation: Sume design overrides
Google Vids lets you change caption font, position and animation. Sume's caption overrides cover colour, size, placement, phrasing and motion, not a Latin font.

GPT Image 2.5 Flare: 5 images a minute at Tier 1 vs Sume limits
OpenAI limits Flare to 5 images per minute at Tier 1 and 250 at Tier 5. Sume applies plan concurrency, queue capacity and 429 codes instead. Both tables here.

GPT Image 2.5 largest square: 2880x2880, not 3000x3000
GPT Image 2.5 caps pixels at 8,294,400. A square tops out at 2880x2880; 3000x3000 (9,000,000) is rejected. OpenAI calls sizes above 2560x1440 experimental.

Hookdeck passes gzip bytes unchanged: verify Sume on raw bytes
Hookdeck now forwards binary and gzip bodies byte for byte. Read the raw bytes before parsing and verify the Sume sume-v1 signature over them.

Hume Octave 2 description field vs Sume TTS emotion controls
Hume lists a voice description field; acting instructions are coming soon. Sume TTS 1.0 has generation_config: emotion text, speed 0.6 to 1.5, volume 0.5 to 2.

Hume Octave takes 5,000 characters per utterance in MP3, WAV or PCM
Hume's TTS overview lists 5,000 characters per utterance and MP3, WAV or PCM output. Sume TTS 1.0 takes 20,000 characters and mp3, wav or raw containers.

Inngest retries a failed step four times: key the Sume submit
Inngest's default is four retries after the first attempt, five in all, and side effects are not exactly-once. Give the Sume submit an Idempotency-Key.

Inngest NonRetriableError and RetryAfterError for Sume errors
Map Sume HTTP errors to Inngest: NonRetriableError for 400, 401, 402 and 404, and RetryAfterError with the retry-after header on a 429.

Keep one color, gray out the rest of a video: chromahold API
Sume's video filter allowlists chromahold, which keeps one key color and turns the rest gray. Set color, similarity and blend, then check the graph for free.

Lambda durable functions with Pydantic AI: Sume submit as a step
AWS says each model and tool call becomes a durable step that is not repeated after an interruption. Here is how to shape a Sume submit as that step.

LLaDA-Image is open weights: Sume's Image API is a hosted catalog
LLaDA-Image (6B, Apache 2.0, released 2026-09-04) is a download, not an API id. Sume does not list it; use a catalog model with a text-in-image prompt.

Lyria 3.5 has no Batch API: queue many tracks on Sume instead
Google's Lyria 3.5 page says batch, Flex and Priority inference are not supported. Sume accepts many music jobs and queues them past your concurrency.

Same Lyria 3.5 prompt, different song: why, and no seed on Sume
Google says Lyria results vary between calls. Sume's music API has no seed. How to keep the take you like and generate a few to choose from.

MAI-Voice-2.1: 23 languages and voice matching; Sume takes a voice id
Microsoft says MAI-Voice-2.1 covers 23 languages and matches a voice from a short clip. Sume TTS takes a ready voice id or avatar, not reference audio.

MAI-Voice-2.1-Flash lists 45 ms; Sume TTS is an async job
Microsoft lists MAI-Voice-2.1-Flash at about 45 ms and MAI-Voice-2.1 at about 550 ms. Sume TTS 1.0 is non-streaming: a job with a poll URL or webhook.

Make AI Agent fallback connection retries once: key Sume calls
Make now retries an AI Agent run once on a fallback connection. Keep the Sume Idempotency-Key out of the model's hands so a retried run cannot bill twice.

Ming Design-Layer splits a design into RGBA layers: Sume does not
Ming-Image-0.1-Design-Layer decomposes a flat design into RGBA PNG layers. Sume's Image API returns finished images, so build layers from transparent elements.

Ming-Image-0.1-Design on Sume: not in the catalog, use these
Ming-Image-0.1-Design is an open 6B design model. Sume's image catalog does not list it, so send a listed model id such as openai/gpt-image-2.5 for posters.

Nano Banana Pro 21:9: Gemini's ratio list vs Sume's catalog
Gemini's image docs list 21:9 among ten ratios. Sume's Nano Banana Pro and Nano Banana 2 catalogs include 21:9 too; GPT Image 2.5's list does not.

Next.js dev MCP endpoint leak: keep your Sume API key out of source
CVE-2026-94486 let a malicious page read source snippets from next dev. Keep the Sume API key in an env var, server-side, and log request ids not headers.

Next.js 16.3.8 security release: does a Sume webhook route change?
Seven Next.js advisories shipped September 30 in 16.3.8 and 15.5.27. None names Route Handlers, so upgrade, then re-run a signed Sume test delivery.

OpenAI speech API has six formats; Sume TTS has mp3, wav, raw
OpenAI lists MP3, Opus, AAC, FLAC, WAV and PCM for speech output. Sume TTS 1.0 has three containers: mp3, wav and raw, with set sample rates and encodings.

Polly async needs an S3 bucket; Sume gives a status URL and webhook
Polly's StartSpeechSynthesisTask writes audio to your S3 bucket and can notify an SNS topic. Sume TTS returns a status URL, or a signed webhook on completion.

Polly speech marks need a separate request; Sume returns timings
Polly returns speech marks instead of audio when you ask for them: sentence, word and viseme metadata. Sume TTS returns words[] timings on the same job result.

Polly takes 3,000 billed characters; Sume TTS takes 20,000
Polly SynthesizeSpeech accepts 3,000 billed characters and cuts audio at 10 minutes. Sume TTS 1.0 accepts 20,000 characters and 1,200 seconds of audio per job.

Postgres 17.11 pgcrypto change: verify a Sume webhook with hmac()
The Postgres minor release changed legacy pgcrypto ciphers. Its listed changes never mention hmac(), so a Sume sume-v1 signature check in SQL still works.

Burn a rule-of-thirds grid onto a video for review with drawgrid
Sume's video filter allowlists drawgrid. Set width and height to iw/3 and ih/3 for a thirds grid. The grid is burned in, so it is a proof file.

Show only what moved between frames: tblend in difference mode
Sume's video filter allowlists tblend. In difference mode each frame is blended with the previous one so static areas go dark and movement lights up.

Add a soft glow to video by API: split, gblur, screen blend
Sume's video filter allowlists split, gblur and blend, enough for a dreamy glow: blur a copy, then screen it over the original at partial opacity.

Soften skin in video by API with smartblur (whole-frame)
Sume video filter allowlists smartblur, which blurs but keeps outlines. No face detection, so it softens the whole frame; tune radius, strength threshold.

Sora characters gone: reuse a subject with reference images
Sora's reusable Characters left with the Videos API. Sume has no saved character; send the same reference images with each request to wan-3.0 or minimax-h3.