POST /v1/music/generations crée une tâche publique TokenLab et renvoie id / task_id, status, et généralement poll_url. Votre application doit stocker cette identité de tâche, afficher la progression et interroger jusqu’à un statut terminal.
Choisissez le Flux de Travail
| Flux de travail | Champs clés | Remarques |
|---|---|---|
| Chanson complète ou instrumentale | model, prompt, title optionnel, tags, action: "MUSIC" | À utiliser lorsque l’utilisateur s’attend à un audio final |
| Paroles uniquement | model, prompt, action: "LYRICS" | À utiliser uniquement avec des modèles qui exposent la génération de paroles |
| Continuer un clip existant | continue_clip_id, continue_at optionnel | Stockez l’identité du clip/tâche publique précédente avant d’offrir la continuation |
suno_music pour la génération de musique. Pour les flux uniquement de paroles, envoyez action: "LYRICS" avec un modèle dont le contrat public documente la génération de paroles. Traitez les ID de modèle comme des ID publics TokenLab, et non comme une garantie que les champs spécifiques au fournisseur sont des champs de contrat public.
Créer une Tâche de Musique
Interroger pour la Complétion
Utilisez d’abordpoll_url. Si votre client a besoin d’une route fixe, appelez GET /v1/tasks/{id} avec le id ou task_id retourné.
pending, processing, completed, et failed. Une tâche de musique complétée peut inclure audio_url, video_url, title, lyrics, et des métadonnées normalisées. Stockez les URLs finales dans votre propre base de données afin que l’utilisateur puisse rouvrir le résultat sans redémarrer la génération.
Gestion de l’Interface Utilisateur et de l’État
- Affichez un état en attente immédiatement après la création de la tâche.
- Interrogez toutes les
5-10spour les tâches longues, puis arrêtez surcompletedoufailed. - Ne pas afficher de lecteur final tant que la tâche n’est pas
completedet qu’unaudio_urlexiste. - Pour les tâches uniquement de paroles, affichez la sortie texte séparément des tâches audio afin que les utilisateurs comprennent ce qu’ils achètent.
- Lors d’un rafraîchissement, reprenez à partir du
task_idstocké au lieu de créer une nouvelle tâche.
Facturation et Rapprochement
Les tâches de musique peuvent réserver un montant estimé au moment de la création et se régler après que le statut terminal soit connu. Stockezrequest_id, task_id, modèle, point de terminaison, et billing_transaction_id lorsqu’il apparaît. Utilisez les enregistrements d’utilisation de l’API de gestion pour le rapprochement au lieu des ID de tâche du fournisseur.
Erreurs Courantes
| Symptôme | Cause probable | Solution |
|---|---|---|
| Tâche créée mais pas de lecteur | La tâche est toujours en attente ou complétée sans audio_url | Continuez à interroger jusqu’à un statut terminal, puis traitez la sortie manquante comme un travail utilisateur échoué |
| Chansons dupliquées après rafraîchissement | L’interface utilisateur a recréé la tâche au lieu de reprendre | Persistez et réutilisez task_id |
| La tâche de paroles ne renvoie pas d’audio | action: "LYRICS" est uniquement textuel | Séparez les chemins UI de paroles et de musique |
| Paramètre non pris en charge | Le champ n’est pas dans le contrat public du modèle | Supprimez les champs spécifiques au fournisseur ou choisissez un modèle qui les documente |
Référence API
| Sujet | Référence |
|---|---|
| Créer de la Musique | Créer de la Musique |
| Obtenir le Statut de la Musique | Obtenir le Statut de la Musique |
| Obtenir le Statut de la Tâche | Obtenir le Statut de la Tâche |
| Lister les Modèles | Lister les Modèles |
| Facturation & Tarification | Facturation & Tarification |