Áudio
Suno Music audio
Suno AI music generator — high-quality songs with vocals, chorus and structure. Lyrics auto-written or supplied.
Categoria: Música · suno-ai-music
Como usar & limites
- Gera músicas completas com vocais, refrão e estrutura a partir de texto.
- custom_mode false: só prompt é necessário (até 500 caracteres, letra automática).
- custom_mode true: style e title passam a ser obrigatórios e o prompt vira a letra.
- make_instrumental gera sem vocais; vocal_gender (auto/male/female) só influencia com vocais.
- model_version: v5_5 (padrão), v5, v4_5plus, v4_5all, v4_5 ou v4; pesos (style/audio/weirdness) de 0 a 1.
Capacidades
O que este modelo suporta, direto do schema — sem preços, sem detalhes de infraestrutura.
| Capacidade | Valor |
|---|---|
music Música | Sim |
lyrics_input Entrada de letra | Sim |
reference_audio Áudio de referência | — |
max_prompt_length Tamanho máx. do prompt | 5000 |
instrumental_toggle Alternar instrumental | Sim |
Parâmetros
Campos aceitos em params (ou de primeira classe, quando aplicável) para POST /generations.
| Nome | Rótulo | Tipo | Obrigatório | Padrão | Opções | Mín / Máx | Descrição |
|---|---|---|---|---|---|---|---|
vocal_gender | Vocal Gender | select | Opcional | auto | auto · male · female | — | Preferência de voz: auto (padrão), male ou female (só aumenta a probabilidade). |
style_weight | Style Weight | number | Opcional | — | — | 0 – 1 | Força de adesão ao estilo, de 0 a 1. |
weirdness_constraint | Weirdness Constraint | number | Opcional | — | — | 0 – 1 | Grau de desvio criativo, de 0 a 1. |
audio_weight | Audio Weight | number | Opcional | — | — | 0 – 1 | Peso de balanceamento das características de áudio, de 0 a 1. |
negative_tags | Negative Tags | text | Opcional | — | — | — | Estilos ou características a excluir da geração. |
persona_id | Persona Id | text | Opcional | — | — | — | Id de persona a aplicar (só no modo customizado). |
make_instrumental | Make Instrumental | boolean | Opcional | false | — | — | Se ligado, gera faixa sem vocais. |
prompt | Prompt | textarea | Obrigatório | — | — | — | Ideia da música ou, no modo customizado, a letra exata. |
style | Style / genre | text | Opcional | — | — | — | Estilo/gênero; obrigatório no modo customizado. |
title | Title | text | Opcional | — | — | — | Título da faixa; obrigatório no modo customizado. |
model_version | Version | select | Opcional | v5_5 | v5_5 · v5 · v4_5plus · v4_5all · v4_5 · v4 | — | Versão: v5_5 (padrão), v5, v4_5plus, v4_5all, v4_5 ou v4. |
custom_mode | Custom Mode | boolean | Opcional | false | — | — | Se ligado, habilita controle total (style e title obrigatórios). |
Exemplo de requisição
curl -X POST https://caranguejo.art/api/v1/dev/generations \
-H "Authorization: Bearer $CK" \
-H "Content-Type: application/json" \
-d '{
"model": "suno-ai-music",
"prompt": "Uma música alegre sobre amor de verão e pôr do sol na praia.",
"params": {
"model_version": "v5_5",
"custom_mode": false,
"make_instrumental": false,
"vocal_gender": "auto"
}
}'
const res = await fetch("https://caranguejo.art/api/v1/dev/generations", {
method: "POST",
headers: {
"Authorization": "Bearer " + process.env.CK,
"Content-Type": "application/json",
},
body: JSON.stringify({
"model": "suno-ai-music",
"prompt": "Uma música alegre sobre amor de verão e pôr do sol na praia.",
"params": {
"model_version": "v5_5",
"custom_mode": false,
"make_instrumental": false,
"vocal_gender": "auto"
}
}),
});
const { data } = await res.json();
Exemplo de resposta
{
"id": "9f0c1a7e-…",
"object": "generation",
"model": "suno-ai-music",
"type": "audio",
"status": "completed",
"output": {
"assets": [
{
"url": "https://media.caranguejo.art/outputs/example.mp3",
"type": "audio"
}
]
}
}
O custo real do job é retornado em credits_charged na resposta concluída — consulte GET /balance para o saldo da conta.
Erros comuns deste tipo de job:
insufficient_credits | Saldo insuficiente para cobrir o job. |
content_policy_violation | Prompt ou mídia recusados por política de conteúdo. |
generation_timeout | O job excedeu o tempo máximo de processamento. |
rate_limited | Limite de requisições por minuto excedido. |
invalid_input | Parâmetro obrigatório ausente ou fora do schema do modelo. |
generation_failed | Falha genérica no processamento do job. |