POST /v1/music/generations crea una tarea pública de TokenLab y devuelve id / task_id, status y generalmente poll_url. Tu aplicación debe almacenar esa identidad de tarea, mostrar el progreso y consultar hasta un estado terminal.
Elegir El Flujo de Trabajo
Consulta el catálogo de modelos actual antes de enviar una lista de modelos codificada:
suno_music para la generación de música e incluyen mv con una versión oficial del modelo Suno, como chirp-v4. Para flujos solo de letras, envía action: "LYRICS" con un modelo cuyos detalles documenten la generación de letras y omite mv. Trata los IDs de modelo como IDs públicos de TokenLab, no como una garantía de que los campos específicos del proveedor sean campos de detalles del modelo.
Crear Una Tarea de Música
Consultar Para Completar
Usapoll_url primero. Si tu cliente necesita una ruta fija, llama a GET /v1/tasks/{id} con el id o task_id devuelto.
Forma de la respuesta
La respuesta de creación es un registro de tarea que se consulta por polling, no el audio final:status es completed. Las tareas fallidas devuelven status: "failed" con error.
Los estados públicos esperados son pending, processing, completed y failed. Una tarea de música completada puede incluir audio_url, video_url, title, lyrics y metadatos normalizados. Almacena las URLs finales en tu propia base de datos para que el usuario pueda reabrir el resultado sin reiniciar la generación.
Manejo de UI y Estado
- Muestra un estado pendiente inmediatamente después de la creación de la tarea.
- Consulta cada
5-10spara tareas largas, luego detente encompletedofailed. - No muestres un reproductor final hasta que la tarea esté
completedy exista unaudio_url. - Para tareas solo de letras, renderiza la salida de texto por separado de las tareas de audio para que los usuarios entiendan lo que están comprando.
- Al actualizar, reanuda desde el
task_idalmacenado en lugar de crear una nueva tarea.
Facturación y Conciliación
Las tareas de música pueden reservar una cantidad estimada en el momento de la creación y liquidar después de que se conozca el estado terminal. Almacenarequest_id, task_id, modelo, endpoint y billing_transaction_id cuando aparezca. Usa los registros de uso de la API de Gestión para la conciliación en lugar de los IDs de tarea del proveedor.