Skip to main content
POST
Create a new song with a text prompt (simple mode) or detailed controls (advanced mode). The song is generated asynchronously — the response returns immediately with a pending song ID that you can poll for status.

Request

Headers

string
required
Bearer token with your API key
string
required
application/json (or multipart/form-data if uploading lyrics_file)

Body

string
default:"advanced"
simple or advanced. Simple: one-line description, we write lyrics. Advanced: full control.
string
required
1–2000 characters. Simple mode: song description. Advanced mode: musical style (genre, mood, instruments, BPM).
string
Your own lyrics (≤12000 chars). Optional [Verse]/[Chorus] section tags allowed. Advanced mode only; exactly one lyrics source.
string
Generate lyrics from a description (≤2000 chars). E.g., “Write about summer freedom”. Advanced mode only; exactly one lyrics source.
file
Multipart upload of a .txt file (≤64 KB). Advanced mode only; exactly one lyrics source.
boolean
default:"false"
If true, song has no vocals; [Instrumental] tag is sent automatically. Allows skipping lyrics in advanced mode.
string
Male or Female. Optional.
string
default:""
From GET /songs/voices: catalog voice or saved voice owned by your workspace. Optional.
string
Styles to exclude (≤1000 chars). Optional.
string
Extra style tags (≤1000 chars). Optional.
integer
10–600 seconds. The model treats it as a hint. Optional.
string
Digit string (≤19 digits, ≤2^63-1) for repeatable results. Must be a string, not a number. Optional.
string
Display title (≤200 chars). If omitted, a title is auto-generated from lyrics. Optional.

Response

boolean
Always true on 201
string
“Your song is being created”
object
Song Object:

Errors

Example