API de sample
Descripción del endpoint
El sampling toma un fragmento de material de una canción existente y genera una canción nueva a partir de él. Actualmente el modo abierto a los clientes es el modo de sample chop.
Endpoint: POST /api/music/sample
Facturación: De pago, facturada según el modelo solicitado; el importe realmente cobrado sigue la configuración de precios del back-office.
Max Mode / Variety: este endpoint admite los parámetros opcionales max_mode y variety (0-4). Con
max_mode activado, esta llamada se factura al doble de precio; variety no cuesta nada extra. Qué significan y
cómo enviarlos está en la sección «Parámetros avanzados» del Resumen de la nueva API.
Modelo recomendado: suno-v6. Se pueden usar suno-v6, suno-v6-wild y suno-v6-mini.
Tiempos de espera y timeouts (importante): es un endpoint síncrono — el pedido solo se acepta y se entrega a generación cuando llega la respuesta. Según lo medido, la mayoría de las peticiones responden en 1-3 segundos, alrededor del 10% tardan más de 30 segundos y la más lenta ronda los 230 segundos. Configura el timeout del cliente en 300 segundos o más; no recibir respuesta no significa que no se haya generado nada, y no reintentes justo después de un timeout (eso duplica el pedido y vuelve a cobrar). Si la conexión se cayó, confírmalo más tarde con
GET /api/music/songs. Consulta «Tiempos de espera y configuración de timeout» en el Resumen de la nueva API.
Autenticación
| Parámetro | Tipo | Obligatorio | Notas |
|---|---|---|---|
| Authorization | string | sí | Bearer YOUR_API_KEY |
| Content-Type | string | sí | application/json |
Parámetros de la petición
| Parámetro | Tipo | Obligatorio | Por defecto | Notas |
|---|---|---|---|---|
| model | string | sí | - | Nombre de modelo para el cliente: suno-v6, suno-v6-wild o suno-v6-mini |
| source_clip_id | string | sí | - | El song_id real de la canción de origen; debe estar completada y ser accesible con la clave de API actual |
| mode | string | sí | - | Por ahora solo se admite chop |
| start_seconds | number | sí | - | Segundo de inicio del sample; debe ser mayor o igual que 0 |
| end_seconds | number | sí | - | Segundo de fin del sample; debe ser mayor que start_seconds |
| lyrics | string | no | - | Letra o dirección creativa |
| style_tags | string | no | - | Etiquetas de estilo |
| song_title | string | no | - | Título del resultado |
| wait_completion | boolean | no | false | Si debe esperar más tiempo antes de responder |
Ejemplo de petición
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": "Versión sample",
"wait_completion": false
}'
Respuesta
{
"code": 200,
"message": "success",
"data": {
"clips": [
{
"song_id": "result_song_id",
"song_title": "Versión sample",
"status": "pending"
},
{
"song_id": "result_song_id_2",
"song_title": "Versión sample",
"status": "pending"
}
]
}
}
Una llamada devuelve 2 resultados (se factura como 2 canciones); el ejemplo muestra 2. Guíate por la longitud del array clips y no escribas un bucle con un número fijo. Guarda clips[].song_id y sondea la API de consulta de canciones hasta completed.
Notas
- Por ahora solo está abierto el modo
chop. as-is,as_is,asisyblenddevuelven actualmente HTTP 400 y no envían ninguna tarea de generación.start_secondsdebe ser mayor o igual que 0 y menor queend_seconds.
Obtener una clave de API
Crea una clave de API en la consola después de registrarte. Cada generación cuesta 0,6 ¥ y devuelve 2 pistas, las descargas son ilimitadas y no hace falta número de teléfono.
Obtener clave de API Volver al resumen