Saltar al contenido principal
POST
/
v1
/
audios
/
generations
curl --request POST \
  --url https://api.evolink.ai/v1/audios/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "suno-v5-beta",
  "prompt": "A cheerful summer pop song about road trips and freedom"
}
'
{
  "created": 1766319090,
  "id": "task-unified-1766319089-oqs9cue4",
  "model": "suno-v5-beta",
  "object": "audio.generation.task",
  "progress": 0,
  "status": "pending",
  "task_info": {
    "can_cancel": true,
    "estimated_time": 120
  },
  "type": "audio",
  "usage": {
    "billing_rule": "per_call",
    "credits_reserved": 10,
    "user_group": "default"
  }
}

Autorizaciones

Authorization
string
header
requerido

##Todas las APIs requieren autenticación Bearer Token##

Obtener API Key:

Visita la Página de gestión de API Key para obtener tu API Key

Agregar al encabezado de la solicitud:

Authorization: Bearer YOUR_API_KEY

Cuerpo

application/json
model
enum<string>
requerido

Nombre del modelo

Compatibilidad hacia atrás: Los nombres de modelos previamente integrados (p.ej. suno-v5, suno-v4.5, suno-v4.5plus, suno-v4.5all, suno-v4) siguen siendo compatibles y se mapean automáticamente a las versiones -beta correspondientes

Opciones disponibles:

  • suno-v5-beta: Última versión V5 (Recomendada), compatible con Voice Persona, expresión musical superior, generación más rápida, prompt máx. 5000 caracteres, estilo máx. 1000 caracteres
  • suno-v4.5plus-beta: Versión mejorada V4.5+, tonos más ricos, nuevos métodos creativos, hasta 8 minutos, prompt máx. 5000 caracteres, estilo máx. 1000 caracteres
  • suno-v4.5all-beta: Versión completa V4.5, prompts más inteligentes, generación más rápida, hasta 8 minutos, prompt máx. 5000 caracteres, estilo máx. 1000 caracteres
  • suno-v4.5-beta: Versión V4.5, prompts más inteligentes, generación más rápida, hasta 8 minutos, prompt máx. 5000 caracteres, estilo máx. 1000 caracteres
  • suno-v4-beta: Versión V4, calidad vocal mejorada, hasta 4 minutos, prompt máx. 3000 caracteres, estilo máx. 200 caracteres
Opciones disponibles:
suno-v5-beta,
suno-v4.5plus-beta,
suno-v4.5all-beta,
suno-v4.5-beta,
suno-v4-beta
Ejemplo:

"suno-v5-beta"

custom_mode
boolean
requerido

Habilitar modo personalizado

Descripción:

  • false: Modo simple, solo proporciona prompt, la IA genera automáticamente letras y estilo
  • true: Modo personalizado, permite control fino de style, title, letras, etc.

Parámetros requeridos en modo personalizado:

  • style: Requerido
  • title: Requerido
  • prompt: Requerido cuando instrumental=false (usado como letras)
Ejemplo:

false

instrumental
boolean
requerido

Generar música usando modelos de Suno AI, compatible con modos vocal e instrumental

Ejemplo:

false

prompt
string

Prompt que describe el contenido musical deseado

Modo no personalizado (custom_mode=false):

  • Requerido, sirve como descripción musical, la IA genera automáticamente letras y estilo
  • Longitud máx.: 500 caracteres

Modo personalizado (custom_mode=true):

  • Requerido cuando instrumental=false, se usa como letras exactas
  • Opcional cuando instrumental=true
  • Longitud máx.: 3000 caracteres para V4, 5000 caracteres para V4.5+

Sugerencias de formato de letras:

  • Use etiquetas como [Verse], [Chorus], [Bridge] para organizar la estructura de las letras
Ejemplo:

"A cheerful summer pop song about road trips and freedom"

style
string

Especificación de estilo musical

Descripción:

  • Requerido en modo personalizado (custom_mode=true)
  • Define el género, estado de ánimo o dirección artística de la música
  • Se recomienda usar etiquetas separadas por comas en inglés

Límites de caracteres:

  • V4: Máx. 200 caracteres
  • V4.5+: Máx. 1000 caracteres

Etiquetas de estilo comunes:

  • Géneros: pop, rock, jazz, classical, electronic, hip-hop, r&b, country, folk
  • Estados de ánimo: happy, sad, energetic, calm, romantic, dark, uplifting
  • Instrumentos: piano, guitar, drums, bass, violin, saxophone, synthesizer
  • Voces: male vocals, female vocals, choir, harmonies
  • Tempo: slow, fast, upbeat, groovy, 120bpm
Ejemplo:

"pop, electronic, upbeat, female vocals"

title
string

Título de la canción

Descripción:

  • Requerido en modo personalizado (custom_mode=true)
  • Se mostrará en la interfaz del reproductor y el nombre del archivo
  • Longitud máxima: 80 caracteres
Maximum string length: 80
Ejemplo:

"Summer Dreams"

negative_tags
string

Expira en

Ejemplo:

"heavy metal, screaming"

vocal_gender
enum<string>

Preferencia de género vocal

Opciones:

  • m: Voz masculina
  • f: Voz femenina

Nota:

  • Solo es efectivo cuando custom_mode=true
  • Este parámetro solo aumenta la probabilidad, no puede garantizar que se siga el género especificado
Opciones disponibles:
m,
f
Ejemplo:

"f"

style_weight
number

Peso del estilo, controla la adherencia al estilo especificado

Rango: 0.0 ~ 1.0, un decimal

Descripción:

  • Valores más altos resultan en mayor adherencia al estilo especificado
  • Un valor de 0 se trata como no establecido
Rango requerido: 0 <= x <= 1
Ejemplo:

0.7

weirdness_constraint
number

Restricción de rareza, controla el grado de creatividad/experimentación de la salida

Rango: 0.0 ~ 1.0, un decimal

Descripción:

  • Valores más altos resultan en una salida más creativa y experimental
  • Valores más bajos resultan en una salida más tradicional y conservadora
  • Un valor de 0 se trata como no establecido
Rango requerido: 0 <= x <= 1
Ejemplo:

0.3

audio_weight
number

Peso del audio, controla el peso de las características del audio

Rango: 0.0 ~ 1.0, un decimal

Descripción:

  • El valor 0 se trata como no establecido
Rango requerido: 0 <= x <= 1
Ejemplo:

0.5

persona_id
string

Persona ID, aplica el estilo de un Persona ya creado a esta generación de música

Solo disponible cuando custom_mode=true. Se obtiene a través de la interfaz Creación de Persona Suno, permite mantener características vocales y de estilo consistentes

Cómo obtenerlo: Una vez completada la tarea de creación de Persona, obtener de result_data.persona_id

Ejemplo:

"5c57d49ef834110496fae5aa14fec441"

persona_model
enum<string>

Modo de aplicación del Persona

Opciones:

  1. style_persona: Orientado al estilo, enfatiza las características del estilo musical (arreglo, ritmo, tono), compatible con todas las versiones del modelo
  2. voice_persona: Orientado a la voz, enfatiza las características vocales (timbre, técnica vocal, registro), solo compatible con V5

Solo disponible cuando custom_mode=true, generalmente se usa junto con persona_id. Al usar voice_persona el modelo debe ser suno-v5-beta, de lo contrario se devuelve un error

Opciones disponibles:
style_persona,
voice_persona
Ejemplo:

"style_persona"

callback_url
string<uri>

URL de callback HTTPS para notificación de finalización de tarea

Etapas del callback:

  • El proceso de callback tiene tres etapas: text (generación de texto), first (primera pista completada), complete (todo completado)
  • En algunos casos, las etapas text y first pueden omitirse, devolviendo complete directamente

Restricciones de seguridad:

  • Solo se admite el protocolo HTTPS
  • Los callbacks a direcciones IP de red interna están prohibidos
  • La longitud de la URL no debe exceder 2048 caracteres

Mecanismo de callback:

  • Tiempo de espera: 10 segundos
  • Máximo 3 reintentos en caso de fallo
  • La URL de callback que devuelve un código de estado 2xx se considera exitosa
Ejemplo:

"https://your-domain.com/webhooks/suno-callback"

Respuesta

Tarea de música creada exitosamente

created
integer

Marca de tiempo de creación de la tarea

Ejemplo:

1766319090

id
string

ID de tarea, utilizado para consultar el estado y los resultados de la tarea

Ejemplo:

"task-unified-1766319089-oqs9cue4"

model
string

Nombre del modelo real utilizado

Ejemplo:

"suno-v5-beta"

object
enum<string>

Tipo de tarea

Opciones disponibles:
audio.generation.task
progress
integer

Porcentaje de progreso de la tarea (0-100)

Rango requerido: 0 <= x <= 100
Ejemplo:

0

status
enum<string>

Estado de la tarea

Opciones disponibles:
pending,
processing,
completed,
failed
Ejemplo:

"pending"

task_info
object

Detalles de la tarea de audio

type
enum<string>

Tipo de salida de la tarea

Opciones disponibles:
audio
Ejemplo:

"audio"

usage
object

Información de uso y facturación