Skip to main content
POST
Source Audio Reference: No additional IDs are needed for tracks based on existing songs. Just pass task_id (the task ID from the previous run of this task) + audio_index (which result track in the data.result.music[] list, 1-based, default is 1).
For extend, custom is optional and defaults to true. With custom=true, prompt supplies the continuation lyrics. Only an explicit custom=false makes gpt_description guide the continuation.

Authorizations

string
required
All endpoints require authentication using a Bearer TokenGet an API Key:Visit the API Key management page to get your API KeyAdd the following to the request headers when using it:

Body

string
default:"suno"
Audio model. Currently pass suno (defaults to suno if omitted).
string
required
Our task_id of the job that produced the source track. If missing or the source cannot be resolved, a 400 is returned at submission time.
integer
default:"1"
Selects a track from the source task’s data.result.music[] array (1-based; default 1).
number
required
From which second should continuation begin, must be greater than or equal to 1 and less than the actual duration of the source audio track. Supports decimal seconds.
string
default:"v6"
Public version: v6 / v6-wild / v6-mini. Defaults to v6; omit this field when using custom_model_id.
string
The full UUID returned by the model-creation task. Mutually exclusive with version and persona_id.
boolean
default:"true"
true=continue with prompt lyrics; false=inspiration continuation. Omit to default to true.
string
Lyrics for the extension. Takes effect when custom=true.
string
inspiration prompt. Only effective when explicitly provided as custom=false, used to guide the direction of continuation.
string
Title. Only takes effect when custom=true.
string
Style tags. Only takes effect when custom=true.
string
Style tags to exclude. Only takes effect when custom=true.
string
Vocal gender: Male / Female. Works in both modes.
number
Style weight, 0.00–1.00 (out-of-range values return 400 directly at submission time). Only takes effect when custom=true.
number
Creativity weight, 0.00 – 1.00. Compatible with the old name weirdness_constraint; new requests should use weirdness.
number
Audio weight, 0.00–1.00. Only takes effect when custom=true.
boolean
true=rewrite the provided lyrics creatively. Only takes effect when custom=true.
string
Persona Style ID. Only applies when custom=true is used and mutually exclusive with custom_model_id.
integer
target generation duration, range 10-360 seconds. Only available when set as custom=true; actual duration will be based on the result.
string
Style variation: off / normal / high / extra / max. Optional.
boolean
default:"false"
Whether to enable Max mode. Enable it requires custom=true and charges at twice the normal price.
string
Output audio format: mp3 / m4a / wav.
Result: This is an asynchronous task. After submission, you will get task_id and then poll GET /v1/music/tasks/{task_id} every 3–5 seconds until status becomes completed or failed (music generation typically takes 30–120s; during generation, status may be pending or processing, and progress is a whole number between 0 and 100 that does not guarantee fixed changes). Once completed, read the extended track’s audio_url from data.result.music[]. If it fails, data.error.message will contain the reason, and the deducted amount will be automatically refunded.

Response

integer
Response status code
array
Returned data array