Sume video tools: public URL or media import first? Per tool

Video captions takes a public HTTPS URL; trim, filter, inspect, frames, compose and detach need a workspace media.sume.com clip. A tool-by-tool input guide.

5 min readSume
All posts

Sume's video captions endpoint takes a public HTTPS video_url, while video trim, video filter, video inspect, video frames, audio detach, timeline compose and Timeline 1.0 render all need a clip that is already a media.sume.com artifact or asset in your workspace. For anything on another host, import it first with POST /v1/media-imports. Mix the two up and you get unsupported_media_source on the strict tools, or a rejected-URL error on captions.

This is straight from Sume's docs: media inputs for the public-URL rule and the per-tool pages for the workspace rule.

Which tool wants which kind of URL?

The split is by tool family, not by endpoint style.

Video input rules per Sume tool as documented, read 2026-10-02
ToolInput fieldAccepted source
video-captionsvideo_urlFetchable public HTTPS video URL
face-swap (Beta)video_urlPublic HTTPS source video
video-trimvideo_urlThis workspace's media.sume.com artifact or asset
video-filtervideo_urlThis workspace's media.sume.com artifact or asset
video-inspectvideo_urlThis workspace's media.sume.com artifact or asset
video-framesvideo_urlThis workspace's media.sume.com artifact or asset
audio-detachvideo_urlThis workspace's media.sume.com artifact or asset
timeline compose / renderimage.url, video.url, source_urlThis workspace's media.sume.com artifact or asset

What counts as a public URL for captions?

The media inputs page says input image and video URLs must be fetchable public HTTPS URLs. Localhost, private-network URLs, non-HTTPS URLs, signed or private URLs, and mismatched content types are rejected before the job is submitted. The captions page repeats this and adds that SRT uploads and provider task ids are unsupported.

A presigned S3 link or a Google Drive share link is therefore a poor fit for captions, since signed or private URLs are rejected. Put the file on a plain public HTTPS location, or use a Sume artifact URL from an earlier job.

What does import first mean for the strict tools?

The trim, filter, inspect, frames, detach and compose docs all say there is no open-internet fetch. A URL such as https://example.com/clip.mp4 is rejected at admit as unsupported_media_source, and a media.sume.com URL that is dead or belongs to another workspace is source_not_found. A URL that is on the host but not a video fails unsupported_media_type where the tool checks.

The import itself is POST /v1/media-imports, and the hosted MCP tool is media-imports_create with media-imports_get. We do not reproduce the request body here; read it in the live OpenAPI schema, which is the source of truth for field names. Generated outputs are already Sume artifacts, so they need no import.

What does a clean pipeline look like?

Most editing pipelines start from a file that lives somewhere else, so the shape is the same every time:

  • Import the source once with POST /v1/media-imports and keep the returned media.sume.com URL.
  • Run the strict tools on that URL: inspect for probe and stills, trim for the range, filter for pixels, detach for audio.
  • Trim, filter and detach each return a new artf_ artifact; pass that to the next step, including captions, where the docs' own example uses a media.sume.com/artifacts/... URL.
  • Store Sume URLs, not provider URLs. The media inputs page says outputs are mirrored into Sume-owned media URLs before they appear in public results.

Common mistakes and the error to look for

Sending a CDN link to video trim returns unsupported_media_source; import it. Sending the same link to captions can work, if it is public. Sending a signed link to captions is rejected as a signed or private URL. Passing a social URL such as a YouTube watch page to a clip tool is not supported; for the legacy scene analysis the docs say YouTube URLs return 422 unsupported_source, and Sume's docs describe social URL mirroring as a media-imports job rather than an input to a tool.

If you are unsure which family a tool belongs to, read its first request paragraph in the docs. Every strict tool says "this workspace's media.sume.com artifact or asset" in its Required line.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume