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

Crowdfunding page video: Wan 3.0 hero plus Kling 3 loops, priced
Prototype photos only work as references on Wan 3.0, so it gets the hero. Kling 3 does 1080p feature loops at $0.14 a second. Whole page set: $4.40.

Custom avatars per plan: HeyGen, Colossyan, Tavus, Teams, Sume
Custom avatars each plan lists: HeyGen 1 to 10+, Colossyan 15 or 20, Tavus 0 to 7, Teams 3. Sume prices each new avatar at $0.95; no plan cap is listed.

Deno 2.9.7 traceparent fix: tag a Sume job id in a Deno.serve log
Deno 2.9.7 extracts traceparent from Deno.serve regardless of header case. In a Sume webhook handler, log the job_id with the trace so a render is traceable.

Dental clinic intro reel: one 30 s Wan 3.0 job or three Kling 3 clips
A 30-second waiting-room-to-chair story costs $3.75 as one Wan 3.0 720p job, or $4.20 as two silent Kling 3 clips. Which one to pick and why.

Digital signage loop with Omni: 9:16 at 4K, cost and limits
A 10-second 9:16 loop for a lobby screen with Gemini Omni Flash: $3.75 at 4K on Sume, $1.25 at 720p. Google labels its 4K output as upscaled.

Does SynthID survive captions and a 9:16 crop on Omni clips?
Google says SynthID is built to survive cropping, filters and compression. What that means for a captioned or reframed Omni clip, and what Sume claims.

Elixir Req: submit and poll a Sume video job after Sora
An Elixir script using Req: POST /v1/videos with an Idempotency-Key, poll every 30 seconds, stop on completed, failed or cancelled. Req never retries the POST.

Esports team intro in 21:9: Seedance 2.5 at 720p, 8 s, with cost
Seedance 2.5 on Sume renders 21:9 at 1470 x 630 for 720p. An 8-second stream-banner intro costs $4.65 at 720p, $2.15 at 480p. Rates and limits.

Esports team intro sting: 5 seconds with a logo reference
A 5-second team intro for a stream in 16:9: send the logo as a reference image to Omni Flash, $0.625 at 720p on Sume, and fix the text in a short edit.

FastAPI 0.142 native OpenTelemetry: tag spans with a Sume job id
FastAPI 0.142.0 added native OpenTelemetry. Put the Sume job_id on the current span in a webhook route so a failed render shows up next to the HTTP trace.

FastAPI background poll of a Sume job: use next_poll_after_seconds
Poll a Sume job from an asyncio task in a FastAPI 0.142 app, wait for the server-provided interval, stop at terminal, and never resubmit after a timeout.

Fastify: verify a Sume video webhook where Sora's video.completed was
Swap the Sora video.completed handler for Sume's job.completed in Fastify. Keep the raw string body, verify sume-v1 with the SDK, and refuse an empty secret.

Find the timestamp of a quote in a recording with Sume STT words
Sume's STT result returns every word with start and end seconds. A short Python function finds a quoted phrase and returns where to cut. About a cent a minute.

Typed Sume video client from the OpenAPI JSON, after Sora
Sume publishes OpenAPI 3.0.3 at api.sume.com/reference/json. List the four video operations, then use the SDK's generated calls instead of hand-typing the wire.

GLM-5.3 reasoning cannot be turned off: cap the Sume run instead
Z.ai says GLM-5.3 always reasons, with low, high and max levels. What that means for run time and for a spend cap on a Sume agent run.

GLM 5.3 Fast or Flash: which one does Sume list?
Sume's agent model list has GLM 5.3 Flash, not GLM 5.3 Fast. What Z.ai's GLM-5.3 page says and what the API's model field accepts.

Can GLM-5.3 call Sume's hosted MCP? Function calling, not MCP
Z.ai's GLM-5.3 page lists function calling and does not mention MCP. How a GLM agent reaches Sume through an MCP client or through plain HTTP.

GLM-5.3 off-peak 50% points vs a Sume dollar spend cap
Z.ai meters GLM-5.3 in points with a 50% off-peak rate. Why a Sume dollar cap is a different meter, and how to schedule agent work.

Google Ads Shorts previews: render 9:16, 16:9 and 1:1 first
Shorts previews need a Video view or reach campaign with Shorts selected. Render all three Google sizes from one master with Sume Timeline for $0.30.

Google Ads video rejects MP3, WAV and PCM: pair audio with a still
Google Ads video upload does not accept audio files such as MP3, WAV or PCM. Turn a radio spot into an MP4 with a still and your audio using Sume Timeline.

Does Google keep Omni and Veo prompts for 55 days?
Google's Gemini API page says prompts, context and outputs are kept 55 days for abuse checks. Veo files last 2 days. How that differs from a Sume request.

Haiku 5.5 charges more above 100k tokens: keep Sume tools lean
Claude Haiku 5.5 prices prompts over 100,000 tokens at five times the base rate. How a long Sume tool list and job history can push you over.

Haiku 5.5 Batch API is half price: Sume renders are not batched
Claude's Batch API gives Haiku 5.5 a 50% discount, but a Sume render is billed by Sume. How to batch the planning step and keep caps on the render.

Haiku 5.5 effort for an agent that polls Sume jobs
Claude Haiku 5.5 defaults to medium effort. What that means for a loop that calls Sume jobs_wait, and when to move to low or high.

Use a low-effort Haiku 5.5 subagent for Sume dry_run previews
Anthropic recommends low effort for subagents, and warns it can skip checks. Where a Haiku 5.5 subagent fits in front of a paid Sume call.

Haiku 5.5 vs Sonnet 5.5 token prices for an agent calling Sume
Haiku 5.5 costs $0.10 per million input tokens and Sonnet 5.5 costs $2. What the gap does and does not change for a Sume agent's spend cap.

Soul vs Seedream 5.0 Lite for 100 concept frames on Sume
100 concept frames: Soul bills $0.50 at 720p in 25 calls of four; Seedream 5.0 Lite bills $4.375 and can edit a reference. Ratios, limits and when each fits.

Hono 4.13.10 split adapters: update a Sume webhook receiver
Hono 4.13.10 moved adapters to @hono/bun, @hono/deno and @hono/cloudflare-workers. The Sume verifyWebhook call needs no change; only the entrypoint imports do.

Hono 4.13.13 deprecates app.mount(): mount a Sume webhook sub-app
Hono 4.13.13 deprecates app.mount() in favor of Mount Middleware. A Sume webhook receiver written as a Hono sub-app uses app.route() and keeps its raw body.

Hy Image 3.5 Preview: 2K or 4K? Tencent and OpenRouter differ
Tencent's launch post says up to 2K; OpenRouter's page lists resolution 1K to 4K. How to test it, and which Sume image rows list a 4K tier or pixel size.

Hy Image 3.5 Preview: n=1 and seed, against Sume's n and seed
OpenRouter lists Hy Image 3.5 Preview with n capped at 1 and a seed. Sume's Image API takes n up to 4 on most rows and returns 400 for seed. A field table.

Indie game trailer: one 30 s Seedance 2.5 job, 480p then 720p
A 30-second game trailer on Seedance 2.5 is $8.07 at 480p, $17.34 at 720p and $42.65 at 1080p on Sume. Draft cheap, pay once for the final.

Instagram Reels blurry or low resolution: probe before posting
Instagram lists blurry, low-resolution Reels among those it may show less. Check width, height and fps with Sume video inspect, then look at full-size stills.

Instagram Reels borders and logos: crop them off with video filter
Instagram lists Reels with borders, logos or watermarks among those shown less. Crop a border off with Sume video filter, using fractions, and check it free.

Instagram says muted Reels are shown less: check has_audio
Instagram's help page lists muted Reels among those you may see less often. Probe has_audio with Sume video inspect, then add sound with a Timeline render.

Jupyter: move Sora cells to Sume, where a cell rerun is a retry
Re-running a notebook cell resubmits the request. Hold one Idempotency-Key per take in a variable so Sume returns the first video job, and show the file inline.

Kling.ai headlines Kling 4.0: what an API buyer can call today
kling.ai now shows 'All-New Kling 4.0', but fal still says full launch is October. Sume lists kling-3 (4-15 s, 720p/1080p) and no 4.0 id. Prices inside.

Kotlin: submit and poll a Sume video job with java.net.http
A Kotlin port of a Sora videos call: POST /v1/videos with an Idempotency-Key, poll every 30 seconds until done, with the JDK client and kotlinx.serialization.

Language school promo, 15 s at 9:16: Seedance 2.5, Wan or Kling
A 15-second 9:16 class teaser is $1.88 on Wan 3.0 720p, $3.15 on Kling 3 with sound and $8.67 on Seedance 2.5 720p. What each buys on Sume.

LinkedIn video 10 to 60 fps: conform a 120 fps phone clip
LinkedIn Page video accepts 10 to 60 fps. A 120 fps phone clip or an 8 fps timelapse is outside that. Probe the rate, then conform it with Sume trim output.fps.

LinkedIn Page video max ratio 2.4:1: crop a 32:9 recording
LinkedIn Pages accept video from 1:2.4 to 2.4:1 and up to 4096x2304. A 5120x1440 ultrawide capture fails both. Crop it with Sume video filter to fit.

LinkedIn video ad sound rate: under 64 kHz, read it with a probe
LinkedIn's video ad spec lists AAC or MPEG4 sound at under 64 kHz. Sume video inspect returns the audio codec and sample rate so you can test a file first.

LinkedIn video ad vs Page video: which numbers differ
LinkedIn video ads and Page video use different limits for length, size and ratio. Both lists read on 2026-10-08, with the Sume tool that fixes each mismatch.

Live webinar captions now, burned-in highlight clips after
Sume has no live captions. Use a live transcriber such as MAI-Transcribe-2-Streaming ($0.54/h) for the event, then burned-in highlight clips at $0.20 each.

Longest ad video: Pinterest 15 min, LinkedIn 30 vs Sume 900 s trim
Pinterest ads reach 15 minutes, LinkedIn video ads 30, LinkedIn Pages 10. Which of those a Sume trim (900 s) or Timeline (1,800 s) render can produce.

Longest single avatar video by plan: HeyGen, Colossyan, Sume
HeyGen caps video at 1, 30 or 60 minutes by plan, Colossyan at 20 or 30 minutes. Sume Avatar 1.0 takes 4 to 60 seconds a job. What to do when yours is longer.

Microsoft Teams avatars: 3 per account, view-only on mobile
Teams meeting avatars: three per account, full use on Windows and Mac, 2-core and 6 GB minimum, guests allowed. What they cannot do, and a Sume clip.

Modal 1.6.1 endpoint logs and stats: debug a Sume webhook receiver
Modal 1.6.1 adds modal endpoint info, stats and logs. Use them to see why a Sume job webhook got a 401 or a timeout, and check the 150 s web timeout first.