API de sample
Descrição do endpoint
O sampling retira um pedaço de material de uma música existente e gera uma música nova a partir dele. Atualmente o modo aberto aos clientes é o modo de sample chop.
Endpoint: POST /api/music/sample
Cobrança: Pago, cobrado conforme o modelo solicitado; o valor realmente debitado segue a configuração de preços do back-office.
Max Mode / Variety: este endpoint aceita os parâmetros opcionais max_mode e variety (0-4). Com
max_mode ativado, esta chamada é cobrada pelo dobro do preço; variety não custa nada extra. O que significam e
como enviá-los está na seção "Parâmetros avançados" da Visão geral da nova API.
Modelo recomendado: suno-v6. suno-v6, suno-v6-wild e suno-v6-mini estão disponíveis.
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.
Autenticação
| Parâmetro | Tipo | Obrigatório | Observações |
|---|---|---|---|
| Authorization | string | sim | Bearer YOUR_API_KEY |
| Content-Type | string | sim | application/json |
Parâmetros da requisição
| Parâmetro | Tipo | Obrigatório | Padrão | Observações |
|---|---|---|---|---|
| model | string | sim | - | Nome de modelo para o cliente: suno-v6, suno-v6-wild ou suno-v6-mini |
| source_clip_id | string | sim | - | O song_id real da música de origem; precisa estar concluída e acessível pela chave de API atual |
| mode | string | sim | - | Por enquanto só é suportado chop |
| start_seconds | number | sim | - | Segundo inicial do sample; deve ser maior ou igual a 0 |
| end_seconds | number | sim | - | Segundo final do sample; deve ser maior que start_seconds |
| lyrics | string | não | - | Letra ou direção criativa |
| style_tags | string | não | - | Tags de estilo |
| song_title | string | não | - | Título do resultado |
| wait_completion | boolean | não | false | Se deve esperar mais tempo antes de responder |
Exemplo de requisição
curl -X POST https://www.suno-api.io/api/music/sample \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "suno-v6",
"source_clip_id": "source_song_id",
"mode": "chop",
"start_seconds": 0,
"end_seconds": 30,
"style_tags": "funky pop, chopped sample",
"song_title": "Versão sample",
"wait_completion": false
}'
Resposta
{
"code": 200,
"message": "success",
"data": {
"clips": [
{
"song_id": "result_song_id",
"song_title": "Versão sample",
"status": "pending"
},
{
"song_id": "result_song_id_2",
"song_title": "Versão sample",
"status": "pending"
}
]
}
}
Uma chamada devolve 2 resultados (cobrados como 2 músicas); o exemplo mostra 2. Baseie-se no comprimento do array clips e não escreva um laço com número fixo. Salve clips[].song_id e faça polling na API de consulta de músicas até completed.
Observações
- Por enquanto só está aberto o modo
chop. as-is,as_is,asiseblenddevolvem atualmente HTTP 400 e não submetem qualquer tarefa de geração.start_secondsdeve ser maior ou igual a 0 e menor queend_seconds.
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