Video editing API: which Sume endpoint for each edit

A task-to-endpoint map of Sume's video editing API: which call cuts, crops, captions, joins, or re-voices a video, and which guide explains each edit.

6 min readSume
All posts

Sume's video editing API is a set of single-purpose endpoints, not one editor: POST /v1/video-trim cuts a range, POST /v1/video-filter crops or filters, POST /v1/audio-detach pulls out the audio, POST /v1/video-captions burns captions, and POST /v1/timeline-1.0/render assembles clips on one audio spine. The tables below map each edit to its endpoint and to the post that explains it.

Rows come from each tool's docs page, the Models overview, and the Sume API reference, read on 2026-09-27. Anything described as current behavior is read from Sume's code. Every tool's caps sit in one table in Video editing API limits.

Which endpoint edits a single clip?

Each of these reads one video and returns new output.

From the Models overview, each tool's docs page, and the Sume API reference, read 2026-09-27.
EditEndpointWorth knowingGuide
Cut out one rangePOST /v1/video-trimprecision: "exact" re-encodes; keyframe copies but may start a GOP early.Trim, filter, or detach audio
Split into short clipsPOST /v1/video-trim, once per clipSources run up to 1,800 s; each clip 0.2–900 s.Split a long video into clips
Crop to verticalPOST /v1/video-filter, crop opFractions of the source frame; sources up to 300 s.Convert landscape to 9:16
Dim, blur, or adjust tonePOST /v1/video-filterdim is a built-in op; blur and tone filters go in filtergraph.ffmpeg filter allowlist
Resize or change the frame ratePOST /v1/video-trim with outputfps 24, 25, 30, or 60; exact precision only.Change frame rate or resolution
Burn captionsPOST /v1/video-captionsWord and cue times run 0–60 s.Burn captions onto a video
Pull out the audioPOST /v1/audio-detachA sample-exact wav by default, ready for audio.url.Trim, filter, or detach audio
Grab a stillPOST /v1/video-framesSources up to 300 s; video inspect stills reach 1,800 s.Extract frames from a video
Read length, size, fps, or speechPOST /v1/video-inspectSources up to 1,800 s; a transcript bills per audio minute.Video inspect API
UpscalePOST /v1/video-upscale-1.0/upscaleReserves 5 s of input unless you send duration_seconds (1–30).AI video upscaler API
Change the content with a promptPOST /v1/video-router/generate, gemini-omni-flash-1.1aspect_ratio is rejected; resolution defaults to 720p.Edit a video with a prompt

Which endpoint assembles clips and audio?

Timeline 1.0 is the assembly surface: one audio spine plus ordered video[] slots, rendered to one MP4. Most multi-step edits end in a render.

From Timeline 1.0, Timeline compose, Video trim, Video captions, and the Sume API reference, read 2026-09-27.
EditEndpointWorth knowingGuide
Join clipsPOST /v1/timeline-1.0/renderBilled per started output minute; output up to 1,800 s.Assemble a long-form video
Remove a middle sectionPOST /v1/timeline-1.0/renderTrim alone cannot: it keeps one range per job.Remove part of a video
Add transitionsvideo[].transitionNot on the first slot; at most 50% of the shorter neighbor.Video transitions API
Replace or remove the soundA render over a new audio.url, or a trim with audio: "drop"audio.mode: "silence" renders with no spine file.Replace or remove the audio
Add background musicsoundtrack on the renderThe bed must be a Sume-hosted file, like every Timeline URL.Add background music
Image and video in one framePOST /v1/timeline-1.0/composestack or overlay, up to 300 s; the MP4 then fills a video[] slot.Timeline compose and audio
Caption a video over 60 sTrim, captions, then a renderCut at sentence boundaries so no caption line spans two chunks.Add captions to a long video
Cut B-roll into a talking headAudio detach, then a renderNo trim needed: slots read the talking head with source_in.Add B-roll to a talking head
Re-voice in another languageText to speech, then a renderIn current code, a voice-language mismatch gets a 409 until you confirm it.Translate a video's voiceover

Which video URLs can each endpoint read?

Trim, filter, detach, frames, inspect, and the three Timeline endpoints read only your workspace's media.sume.com files; captions, video upscale, and the Video Router edit take a public HTTPS URL, and Sume's own job artifacts are public. Sume API media URL rules covers every endpoint's rule.

How do I chain several edits?

Feed each job's output URL into the next call. Trim, filter, detach, compose, and render results come from GET /v1/jobs/:id/result: video_url for a new MP4, audio_url for detached audio. The docs' own handoffs put those MP4s into video[] (a trim with source_in 0) and the wav into audio.url.

Two checks are free before you pay: POST /v1/video-filter/check and POST /v1/timeline-1.0/plan. An AI agent can run the same chain over hosted MCP, as in Video editing MCP server.

What can't Sume's editing endpoints do?

Know these gaps before you plan an edit:

  • Text through ffmpeg: drawtext and subtitles are not on the filter allowlist, nor are movie and lut3d. Burn on-screen text as caption cues instead.
  • Two videos on screen at once: compose puts one still and one video in a frame, and video filter reads one clip.
  • A clip's own sound in a render: in the current compiler a render plays only its spine and an optional soundtrack bed, so detach a clip's audio and pass it as one of those to keep it.
  • Lip sync to new speech: Sume's model docs say video models do not lip-sync to a later voice-over.

Sources

Related posts

More in Media tools

All Media tools posts

Written by Sume