- Song — the default. Describe a song (or bring lyrics) and get a finished, mixed track. It honors a requested length, can write the lyrics for you, and returns synced lyrics. It is also the mode for everything that starts from audio you already have.
- Score-first — for when you want to see and shape the composition itself (melody, chords, sections) before it is recorded. You get an editable score first, change it in plain words as often as you like, and record it when it is right.
Routing table
When in doubt, use Song mode.
The Score-first loop
- Write a score with
/music/v3/plan: either adescription(AudioPod writes the lyrics, sized to an optionaltarget_seconds) or your ownlyricswith astyle. It returns in about ten seconds with a score and no audio. - Revise it with
/music/v3/revise: “make the chorus brighter”, “take it down a key”, “simpler melody in bars 5–8”. Each revision is checked so that everything you did not ask to change stays the same, and returns a new score job you can revise again. - Record it with
/music/v3/editwhen you are happy with it, sending the latest score fromGET /music/v3/jobs/{job_id}/score.
target_seconds is a target rather than a
promise — use Song mode when you need an exact length.
Plain-English revision (
/music/v3/revise) is available when it is enabled
for your account — GET /api/v1/music/v3/availability returns
"revise": true. Otherwise the route answers 404; you can still write a
score and record it.For agents
The AudioPod MCP server exposes the same choice as tools:generate_music
(Song, the default), and compose_music → revise_music_score →
record_music_score (Score-first), with get_music_score to read a score for
free. See MCP server.