Which field holds the file URL in a Sume media job result
Sume media jobs return different result keys: audio_url for detach, video_url for trim and filter, frames for stills. A field map for no-code steps.

Every Sume media tool submits to its own route but finishes the same way: you read GET /v1/jobs/:id/result and take the output from the result. The key differs by tool. In a no-code flow, mapping the wrong key leaves the next step with an empty URL, so it is worth a table.
Audio detach, video trim and video filter have no GET /v1/<tool>/:id of their own, so you poll the job envelope with GET /v1/jobs/:id/status and read the result when it is result_ready.
The map
| Tool | result kind | Where the output is | Default mode |
|---|---|---|---|
| Audio detach | audio_detach | audio_url | async |
| Video trim | video_trim | video_url | async |
| Video filter | video_filter | video_url | async |
| Video inspect | video_inspect | probe, frames[].url, transcript | sync |
| Video frames | video_frames | frames[].url | async, always 202 |
| Video captions | video_caption | video_url / artifacts | per request |
Rules that help in a flow
- The output URL is a new
artf_artifact onmedia.sume.com, never the source file. - Chain by passing the output URL as the next tool's
video_url, since every Sume media tool wants amedia.sume.comfile. - A sync submit that exceeds 30 seconds returns
202, so a flow must handle both a200and a202.
Reading it in code
def output_url(result):
kind = result.get("kind")
if kind == "audio_detach":
return result["audio_url"]
if kind in ("video_trim", "video_filter"):
return result["video_url"]
raise ValueError(f"no single file url for {kind}")
print(output_url({"kind": "video_trim", "video_url": "https://media.sume.com/artifacts/a.mp4"}))For the video captions row, read the resource at GET /v1/video-captions/:id, which returns the captioned video_url.
Sources
Related posts
More in Media tools
- Which Sume media step caps your clip: 1800, 900 or 300 s
Trim takes a 1800 s source, video filter and video frames stop at 300 s, compose at 300 s, Timeline at 1800 s. One table of every length cap.
- Whoosh and riser transition sounds from a music prompt on Sume
Sume has no sound-effects endpoint. Prompt the music router for a riser or hit, cut it with Timeline audio split at $0.01, and lay it under a cut.
- Wine tasting video music: a 2-minute refined, quiet bed
Brief a refined 2-minute instrumental for a wine tasting video that stays under the host's voice: one generation and a two-minute render, $0.325 on Sume.
- Winter coat lookbook clip with a size and care plate over the footage
Put a still size-and-care plate over a coat clip with Timeline compose overlay: width_ratio, margin_ratio and position set the plate, $0.02 a clip on Sume.
Written by Sume