Saltar para o conteúdo principal
GET
Convenções Gerais e Consulta de Tarefas do Suno
Esta página contém as convenções comuns de todas as interfaces de música do Suno, usada em conjunto com a documentação individual de cada endpoint. Todas as interfaces de geração / edição são tarefas assíncronas: envie para obter o task_id e, em seguida, faça polling na interface de consulta desta página para obter o resultado.

Autenticação

Todas as requisições precisam incluir no cabeçalho:
Acesse a página de gerenciamento de API Key para obter sua API Key.

Ciclo de vida da tarefa (todas as interfaces são assíncronas)

1

Enviar

POST /v1/music/generations/<operação> → retorna imediatamente o nosso task_id:
2

Fazer polling

GET /v1/music/tasks/:task_id até que status seja completed ou failed. Durante a geração, status é pending e progress vai de na fila 10 → pronto 50 → concluído 100. Recomenda-se um intervalo de polling de 3–5s; a geração de música normalmente leva 30–120s.
3

Obter resultado

Após a conclusão, obtenha audio_url / image_url / video_url, etc. de data.result.music[].
Fluxo de estados da tarefa: submittedpendingcompleted / failed. Em caso de falha, data.error.message informa o motivo e a cota pré-reservada é devolvida automaticamente.

Versão version

v3.5 / v4 / v4.5 / v4.5+ / v4.5-all / v5 / v5.5, afeta a qualidade do áudio e a cobrança; se não for informado, usa-se o padrão. A disponibilidade e os valores padrão variam conforme o endpoint — alguns suportam apenas um subconjunto e outros não têm dimensão de versão; consulte a documentação de cada endpoint.

Referência à faixa de origem: task_id + audio_index

Operações baseadas em músicas já existentes (continuação / cover / separação de faixas / adição de vocais / recorte…) não exigem que você guarde nenhum id upstream, basta informar:
  • task_id: o nosso task_id da tarefa que produziu a faixa de origem
  • audio_index: qual faixa dentro do music[] do resultado dessa tarefa (baseado em 1, padrão 1; uma geração normalmente produz 2 músicas: 1 e 2)
Se a origem não puder ser resolvida (tarefa não concluída / índice fora do intervalo / task_id inexistente), um 400 é retornado no momento do envio.

Consultar tarefa: GET /v1/music/tasks/:task_id

task_id
string
obrigatório
O nosso task_id retornado pela interface de envio.
Faça polling nessa interface até que status seja completed ou failed. Após a conclusão, obtenha os produtos de data.result.music[].

Response

task_id
string
Identificador único da tarefa
status
string
Estado da tarefa: submitted / pending / completed / failed
progress
integer
Progresso: na fila 10 → pronto 50 → concluído 100
data
object
Dados do resultado