Sume timeline audio_url_required: a silent Short needs mode silence

audio_url_required means the timeline has no audio.url, no audio.parts and no mode. Add a spine, or set audio.mode to silence with a duration_seconds.

4 min readSume
All posts

audio_url_required comes back from POST /v1/timeline-1.0/render (and the unbilled /plan) when the audio object has no url, no parts[] and is not in silence mode. Fix it by either adding a Sume-hosted spine, or sending "mode": "silence" with just a duration_seconds. The next_action hint is set_audio_url_or_silence_mode.

The case that triggers it most often is a vertical clip assembled from visuals only. A Short can be silent, music is added later, and the timeline still needs to know how long the output is. YouTube describes Shorts as vertical or square and up to 3 minutes (YouTube Help, read 2026-10-05), so a 45 to 180 second duration_seconds is a typical value.

Why a spine is mandatory

In Timeline 1.0 the audio spine sets the output length: audio.duration_seconds is required and must be 1 to 1800. Video slots are placed on that spine by start and duration. With no spine file there is nothing to measure, so silence mode is the explicit way to say the length is declared, not derived.

Two ways to fix it

Option one gives the spine a file, for example a voice-over you imported with POST /v1/media-imports. Option two declares silence. Both bodies below are minimal and valid for a 12 second clip made of one slot; the clip URLs must be your own media.sume.com artifacts.

{
  "audio": { "mode": "silence", "duration_seconds": 12 },
  "video": [
    {
      "source_url": "https://media.sume.com/artifacts/artf_demo/intro.mp4",
      "start": 0,
      "duration": 12
    }
  ]
}

What silence mode refuses

Silence mode is strict. Adding url, parts, gain_db or source_in alongside it returns the matching silent_audio_takes_no_* code, and a soundtrack.duck_db fails with duck_requires_audio_spine because there is no spine to duck under. A soundtrack bed itself is allowed over silence per the docs, with its own gain_db, loop and fade_out_seconds (at most 10).

audio object states in Timeline 1.0 (Sume docs read 2026-10-05)
audio containsOutcome
duration_seconds onlyaudio_url_required
mode silence + duration_secondsvalid, silent spine
url + duration_secondsvalid, single spine
parts[] + duration_secondsvalid, up to 20 parts
url + parts[]audio_url_and_parts_exclusive

A silent-Short recipe

Declaring silence is a normal workflow, not a workaround. A visual-only cut is often built first and sound added after, because the person choosing the music may not be the person cutting.

  • Import every clip with POST /v1/media-imports so each source_url is a media.sume.com artifact.
  • Set audio.mode to silence and duration_seconds to the length you want, at most 180 for a three-minute Short.
  • Run /plan first. It returns duration_seconds, segment_count and an estimated cost without a job.
  • Render, then add sound in a second pass or send a soundtrack bed in the same request.

Limits

The plan call is free and catches this error before any credit reservation, so use it first. Render is priced at $0.10 per output minute rounded up in the public pricing constant; confirm the live rate in GET /v1/catalog. Silence mode produces a silent file, so it is not a way to meet a platform music rule by itself.

Sources

Related posts

More in Media tools

All Media tools posts

Written by Sume