video-inspect frames needs at or fps: probe a Short with frames:false

video_inspect_frames_program_required means frames is an object with no at or fps. Omit frames for 8 stills, or pass frames:false to only probe a Short upload.

4 min readSume
All posts

400 video_inspect_frames_program_required means you sent frames as an object with neither at nor fps, for example {} or { "format": "png" }. Either add one of the two, omit frames for the default 8 stills, or send frames: false to get only the probe.

The probe-only call is the cheap way to check a vertical upload before posting. YouTube lists vertical video with a maximum resolution of 1080p for Shorts (YouTube Help, read 2026-10-05), so knowing the clip's real dimensions and length up front saves a failed round trip.

The three valid shapes

The API message itself spells it out: omit frames for the default 8 stills, or pass frames:false for probe only. The next_action hint is pass_frames_at_or_fps. Options such as format, max_edge and seek only mean something next to an at or fps, which is why an options-only object is refused.

valid frames values (Sume docs read 2026-10-05)
SendGet
nothing8 stills (1 fps if the clip is under 8 s)
falseprobe facts only
{ at: [0, 2] }stills at those seconds
{ fps: 1, max_edge: 512 }a 1 fps grid, smaller stills
{ max_edge: 512 }400 video_inspect_frames_program_required

Probe-only preflight

Send this body to POST /v1/video-inspect with an Idempotency-Key header. The default mode is sync with a 30 second wait; if the job is not done by then you get a 202 and poll.

{
  "video_url": "https://media.sume.com/artifacts/artf_demo/talk.mp4",
  "frames": false
}

Using the probe result

The docs say a frames: false inspect is enough to read probe.has_audio, which matters before you ask for a transcript: a silent clip with transcribe: true fails with inspect_source_has_no_audio. Read the probe first, then decide on stills or a transcript. The transcript is a separate billed step at $0.01 per audio minute in the public pricing constant, and the docs say to confirm the live rate in GET /v1/catalog.

Where this fits in a Shorts workflow

A practical order is probe first, stills second, transcript third. The probe costs the least and answers the questions that stop a publish: is there an audio track, how long is the file, and does it fit the length you intend to post. The stills then let a reviewer, human or model, judge the opening frames. Only then spend on a transcript if you need captions or a script check. Each step is a separate request, so you can stop as soon as the answer is no.

Limits

The source must be a media.sume.com clip your workspace already owns and at most 1800 seconds. The probe tells you facts about the file; it does not decide whether a platform will classify or recommend it. Read the video inspect docs for the full table.

Sources

Related posts

More in Media tools

All Media tools posts

Written by Sume