Skip to main content
POST
Suno Upload Extend
suno-upload-extend continues a public audio file from a chosen second, without a separate upload step. Confirm live rates on the SnapGen models page. Failed tasks are not charged.
string
required
Set to suno-upload-extend.
string
required
Public http or https URL of the song. The provider recommends keeping it under 8 minutes.
number
required
Second in the song where the new part starts, from 1 to 3,600. Keep it below the song’s length.
string
default:"v6"
Suno model version: v6, v6-wild, or v6-mini. Omit it when you send custom_model_task_id.
string
The id of a succeeded suno-custom-model task. Generates with that custom model instead of a public version, so don’t send version or persona_task_id.
string
Lyrics for the continuation, up to 5,000 characters. Omit it for an instrumental continuation.
string
Track title, up to 80 characters.
string
Style tags, up to 1,000 characters.
string
Styles to avoid, up to 1,000 characters.
number
Style weight, from 0 to 1.
number
Creativity, from 0 to 1. Higher values are more experimental.
number
Audio weight, from 0 to 1.
boolean
true rewrites the lyrics you send creatively.
string
male or female vocals.
string
The id of a succeeded suno-persona task. The song is sung with that Persona. Can’t be combined with custom_model_task_id.
integer
Target length in seconds, from 10 to 360. The finished track can be shorter or longer.
string
Style variation: off, normal, high, extra, or max. It doesn’t turn on Max mode or change the price.
boolean
default:"false"
true turns on Suno Max mode and bills twice the request price.
string
Output format: mp3, m4a, or wav. The provider picks one if you omit it.
string
Optional public https URL that receives one signed event when the task finishes. See Task webhooks.
string
Required with webhook: 16 to 256 characters, used to sign the delivery.

Request rules

The gateway checks these before it reserves any balance:
  • Send either version or custom_model_task_id, not both.
  • persona_task_id can’t be combined with custom_model_task_id.

Request

The response is HTTP 202 with a task object and a Location: /v1/tasks/{id} header. Poll GET /v1/tasks/{id} every 10 to 20 seconds until status is succeeded or failed.

Result

result.tracks[] lists every track in its original order, each with its index and audio_url, plus title, image_url, duration_seconds, lyrics, and tags when the provider returns them. result.urls lists the audio URLs.
Result URLs are kept for about 72 hours. Download the files you want to keep. See Music generation tasks for the task lifecycle, result fields, webhooks, and errors.