Remove filler words from a video by API: cut at word timestamps
Descript's API lists Remove Filler Words as an Underlord edit. the Sume docs list no such op; here is how to cut um and uh yourself from words[] and a Timeline.

The Sume docs list no filler-word operation. To remove "um" and "uh" you transcribe with POST /v1/video-inspect, find the filler entries in words[] yourself, and render the stretches between them as video[] slots of a Timeline. The cut list is your code's job.
Descript's API page names "Remove Filler Words" among the Underlord edits that "can use AI credits". Sume's version is manual and built from the Video inspect and Timeline 1.0 docs, read 2026-09-30.
How do I find the fillers?
Run video inspect with transcribe: true (and frames: false). The transcript has words[]. Your code scans them for the tokens you call filler and records each one's time range. The docs show no filler labels, so which words count as filler is yours to decide. Transcription costs $0.01 per audio minute.
How do I cut them out?
Invert the list: the clips between fillers are what you keep. Each becomes one video[] slot with source_in at the clip's in-point and duration at its length; start is where it lands on the output, and video[0].start must be 0. The audio spine must be cut the same way: extract the source audio with POST /v1/audio-detach, then list the same ranges in audio.parts[] (each part takes url, source_in and duration; at most 20 parts, joined gaplessly). Note the cap of 20 parts when you count your kept ranges.
Can I smooth the cuts?
Video slots after the first can take a transition, for example a fade of 0.25 s; more than 8 adjacent fades is refused with too_many_chained_transitions. Preflight with POST /v1/timeline-1.0/plan, which is unbilled and returns segment_count and estimated_cost_usd_micros. A Timeline may have up to 200 slots and 1800 s of output.
| Step | Sume route | Who decides |
|---|---|---|
| Word list with timing | video-inspect transcribe | Sume returns it |
| Which words are filler | Your code | You |
| Assemble kept clips | timeline-1.0 render | You send the slots |
| Preview length and cost | timeline-1.0 plan | Sume, unbilled |
Sources
Related posts
More in Developers
- OpenAI response_format json_schema on a Sume scheduled run
Sume accepts an OpenAI-shaped response_format as an alias for output_schema on schedule runs. Sending both returns 400, and the schema must be strict.
- Retool Workflow webhook needs X-Workflow-Api-Key: use a relay
Retool Workflows authenticate webhooks with an X-Workflow-Api-Key header or query parameter. Sume documents no custom delivery headers: relay after verifying.
- Rough cut from a script by API: one scene per Timeline slot
Descript Quick Design splits a script into moments with changing visuals. With Sume you map each scene to a Timeline video slot over a voiceover spine yourself.
- Search footage for a spoken phrase with an API: words with timing
DaVinci Resolve 21 lists IntelliSearch. To find a spoken phrase in a clip by API, transcribe with video inspect and search words[] in your own code.
Written by Sume