API de Extend (extensão)
Descrição do endpoint
O Extend continua uma música existente a partir de um ponto no tempo escolhido e gera o trecho seguinte.
Endpoint: POST /api/music/extend
Cobrança: Pago, atualmente ¥0,6 por chamada por padrão. O valor realmente cobrado segue a configuração de preços atual do back-office.
Max Mode / Variety: este endpoint aceita os parâmetros opcionais max_mode e variety (0-4). Com
max_mode ligado, esta chamada é cobrada em 2× o preço (0,6 → 1,2 ¥ por chamada); variety não custa nada
a mais. O que significam e como enviá-los está na seção "Parâmetros avançados" da
Visão geral da nova API.
Tempos de espera e timeouts (importante): este é um endpoint síncrono — o pedido só é aceito e entregue à geração quando a resposta chega. Pelo medido, a maioria das requisições responde em 1-3 segundos, cerca de 10% leva mais de 30 segundos e a mais longa fica em torno de 230 segundos. Defina o timeout do cliente em 300 segundos ou mais; não receber resposta não significa que nada foi gerado, e não repita logo após um timeout (isso duplica o pedido e cobra de novo). Se a conexão caiu, confirme depois com
GET /api/music/songs. Veja "Tempos de espera e configuração de timeout" na Visão geral da nova API.
Parâmetros da requisição
Headers
| Parâmetro | Tipo | Obrigatório | Observações |
|---|---|---|---|
| Authorization | string | sim | Bearer YOUR_API_KEY |
| Content-Type | string | sim | application/json |
Parâmetros do body
| Parâmetro | Tipo | Obrigatório | Padrão | Observações |
|---|---|---|---|---|
| model | string | não | suno-v6 | Nome de modelo para o cliente: suno-v6, suno-v6-wild ou suno-v6-mini |
| audioId | string | sim | - | ID da música a estender |
| prompt | string | sim | - | Descrição da extensão |
| continueAt | number | sim | - | Ponto de início da extensão, em segundos. Deve ser maior que 0 e menor que a duração da música de origem; deixe ao menos 10 segundos depois do ponto de início, senão o resultado terá apenas esses segundos |
| style | string | não | - | Tags de estilo |
| negativeTags | string | não | - | Estilos excluídos |
| title | string | não | - | Título |
| sourceAudioUrl | string | não | - | URL do áudio de origem |
| sourceFileName | string | não | - | Nome do arquivo de origem |
| waitAudio | boolean | não | false | Se deve esperar o áudio terminar |
Exemplo de requisição
curl -X POST https://www.suno-api.io/api/music/extend \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "suno-v6",
"audioId": "clip_id",
"prompt": "continue o refrão com mais intensidade",
"continueAt": 60,
"style": "Mandopop, rock",
"negativeTags": "noise",
"title": "Versão estendida",
"waitAudio": false
}'
Resposta
{
"code": 200,
"message": "success",
"data": {
"clips": [
{
"song_id": "extended_clip_id",
"song_title": "Versão estendida",
"status": "pending"
}
]
}
}
Campos compatíveis
Os nomes antigos continuam aceitos:
| Campo novo | Campo antigo compatível |
|---|---|
| audioId | song_id, audio_id |
| prompt | description |
| continueAt | start_time, continue_at |
| style | style_tags, tags |
| negativeTags | negative_tags |
| waitAudio | wait_audio |
Observações
- Não comece colado no fim: a duração da extensão é basicamente "o que sobra depois do ponto de início". Quando o ponto de início fica muito perto do fim, o resultado tem apenas alguns segundos — medido, uma música de 242 segundos estendida a partir do segundo 240 produziu só 2,7 segundos (e ainda assim a chamada é cobrada). Deixe ao menos 10 segundos depois do ponto de início.
- O Extend não tem limite de "fonte curta demais": medido, um clipe de 9,6 segundos estendido a partir do segundo 5 gerou música normalmente, então fonte curta ou resto curto não são motivo de recusa.
- O ponto de início deve ser maior que 0:
continueAt=0é aceito pela plataforma e depois invalidado, sem devolver o motivo da falha, então comece logo depois do primeiro segundo. - Uma chamada devolve 2 resultados (cobrada como 2 músicas); guie-se pelo tamanho do array
clips. - O resultado é uma obra nova; a música original não é afetada.
Obter uma chave de API
Crie uma chave de API no console após o cadastro. Cada geração custa ¥0,6 e devolve 2 faixas, os downloads são ilimitados e não é preciso número de telefone.
Obter chave de API Voltar à visão geral