Música

Criar Música

Cria uma tarefa de geração de música usando Suno

POST
/v1/music/generations

Gere música e letras usando IA. Esta é uma API assíncrona. A resposta de criação retorna uma identidade de tarefa e, quando disponível, também pode incluir um poll_url preferido.

Corpo da Requisição

modelstringpadrão: suno_music

ID do modelo musical, como suno-music. Para gerar somente letras, escolha um modelo cujas operações públicas atuais incluam lyrics.

promptstring

Descrição musical ou texto de substituição. Obrigatório para música, letras, upload-cover, upload-extend e replace-section; opcional para add-instrumental e separação de faixas.

titlestring

Título para a música gerada.

tagsstring

Tags de estilo (ex: "pop, upbeat, electronic").

negative_tagsstring

Estilos a evitar. Obrigatório quando audio_operation é add-instrumental.

actionstring

Valor opcional MUSIC ou LYRICS. Escolha um modelo que aceite a operação pública correspondente; este campo não adiciona geração de letras a um modelo exclusivo de música.

mvstring

Seletor de versão Suno. Obrigatório para geração, upload-cover, upload-extend, add-instrumental e substituição a partir de audio_url. Omita em letras, substituição a partir de task_id + audio_id e separação de faixas. Valores aceitos: chirp-v3-5, chirp-v4, chirp-v4-5, chirp-v4.5, chirp-v4-5plus, chirp-v4.5plus, chirp-v4-5all, chirp-v4.5all, chirp-v5, chirp-v5-5, chirp-v5.5.

make_instrumentalboolean

Defina como true para gerar uma saída instrumental sem vocais.

audio_urlstring

URL de áudio de referência ou enviado que seja publicamente acessível. Sem audio_operation, a TokenLab usa o fluxo upload-cover.

audio_operationstring

Operação de áudio: upload-cover, upload-extend, add-instrumental, replace-section, vocal-separate, multi-stem-separation, advanced-split.

vocal-separate, multi-stem-separation e advanced-split exigem task_id + audio_id; advanced-split também exige stem_name. upload-extend exige continue_at maior que 0. add-instrumental exige audio_url, title, tags e negative_tags.

replace-section exige prompt, tags, title, infill_start_s, infill_end_s e full_lyrics. Escolha exatamente uma origem: task_id + audio_id ou audio_url + mv. O intervalo substituído deve durar de 6 a 60 segundos.

task_idstring

ID de uma tarefa de origem da sua organização, para substituir áudio gerado ou separar faixas.

audio_idstring

ID do áudio retornado no resultado da tarefa de origem. Obrigatório junto com task_id para substituir áudio gerado ou separar faixas.

infill_start_snumber

Início da substituição em segundos, no mínimo 0. Obrigatório para replace-section.

infill_end_snumber

Fim da substituição em segundos. Obrigatório para replace-section, de 6 a 60 segundos após infill_start_s.

full_lyricsstring

Letra completa da música resultante. Obrigatória para replace-section.

stem_namestring

Nome da faixa. Obrigatório para advanced-split.

continue_clip_idstring

ID de um clipe anterior para continuar a partir dele.

continue_atnumber

Ponto de continuação em segundos. Obrigatório e maior que 0 para upload-extend.

prompt aceita até 5000 caracteres; tags e negative_tags, até 1000 cada. As operações e parâmetros aceitos dependem dos detalhes atuais do modelo.

Resposta

idstring

ID da tarefa para consultar o status.

task_idstring

Alias do mesmo ID de tarefa assíncrona, quando retornado.

poll_urlstring

URL de polling prioritária quando disponível.

statusstring

Status da tarefa: pending, processing, completed ou failed.

createdinteger

Timestamp Unix de criação da tarefa, quando retornado.

Requisição

curl -X POST "https://api.tokenlab.sh/v1/music/generations" \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "suno-music",
    "mv": "chirp-v4",
    "prompt": "An upbeat electronic dance track with heavy bass",
    "title": "Night Drive",
    "tags": "electronic, EDM, energetic"
  }'

Resposta

Response
{
  "id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "task_id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "poll_url": "/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "status": "pending",
  "model": "suno-music"
}

Autorização

BearerAuth
AuthorizationBearer <token>

Autenticação por Chave de API. Crie ou gerencie chaves de API em Dashboard > API > API Keys.

Local: header

Cabeçalhos

X-TokenLab-Delivery-Policy?string

Política de entrega por solicitação. Substitui os padrões da API key e do Workspace. Tenta automaticamente o TokenLab Verified primeiro e pode alternar uma vez para Official apenas antes da saída, aceitação da solicitação ou criação de recurso persistente.

Valores permitidos

  • "auto"
  • "verified"
  • "official"

Corpo da requisição

application/json

Resposta

application/json

application/json