Développeurs
Documentation de l’API
Tout ce qu’il faut pour développer avec l’API MeloLab : authentification, crédits, génération, jobs, webhooks et recherche dans la bibliothèque.
Prise en main
Authentifiez chaque requête avec votre clé API via l’en-tête Authorization: Bearer. L’URL de base est https://melolab.ai. Les endpoints de lecture ne consomment pas de crédits ; créer une génération utilise vos crédits MeloLab existants, avec les mêmes règles de coût et de remboursement que l’application web. Envoyez un en-tête Idempotency-Key lors de la création d’une génération pour sécuriser les nouvelles tentatives. Les réponses réussies sont encapsulées dans un objet data ; les erreurs renvoient code, message et request_id.
Compte
Consultez votre profil API, votre solde de crédits et votre utilisation récente.
Renvoie le profil API authentifié, y compris le niveau de compte et la disponibilité de l’API.
curl -X GET https://melolab.ai/api/v1/me \
-H "Authorization: Bearer $MELOLAB_API_KEY"Renvoie votre solde de crédits MeloLab existant. Ne consomme pas de crédits.
curl -X GET https://melolab.ai/api/v1/credits \
-H "Authorization: Bearer $MELOLAB_API_KEY"Renvoie un résumé d’utilisation et des événements de requêtes récents et anonymisés.
curl -X GET https://melolab.ai/api/v1/usage \
-H "Authorization: Bearer $MELOLAB_API_KEY"Modèles
Listez les modèles MeloLab disponibles et leur coût en crédits.
Liste les modèles MeloLab disponibles avec leur coût en crédits.
curl -X GET https://melolab.ai/api/v1/models \
-H "Authorization: Bearer $MELOLAB_API_KEY"Renvoie un modèle par son id.
curl -X GET https://melolab.ai/api/v1/models/suno/v5-5 \
-H "Authorization: Bearer $MELOLAB_API_KEY"Générations
Créez une génération de musique, listez les générations récentes et interrogez un job jusqu’à son achèvement.
Crée une génération de musique asynchrone. Utilise vos crédits MeloLab existants ; nécessite un en-tête Idempotency-Key.
curl -X POST https://melolab.ai/api/v1/generations \
-H "Authorization: Bearer $MELOLAB_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model_id":"suno/v5-5","prompt":"warm lofi beat for a focus playlist"}'Liste vos jobs de génération récents.
curl -X GET https://melolab.ai/api/v1/generations \
-H "Authorization: Bearer $MELOLAB_API_KEY"Interroge une génération et renvoie ses titres une fois terminée.
curl -X GET https://melolab.ai/api/v1/generations/gen_123 \
-H "Authorization: Bearer $MELOLAB_API_KEY"Interroge un job asynchrone (musique, séparation de stems ou suppression de voix) et renvoie les sorties une fois le fournisseur terminé.
curl -X GET https://melolab.ai/api/v1/jobs/job_123 \
-H "Authorization: Bearer $MELOLAB_API_KEY"Bibliothèque
Recherchez des titres et playlists lisibles, et consultez les détails d’un titre ou d’une playlist.
Recherche des titres et playlists lisibles, y compris vos éléments privés.
curl -X GET https://melolab.ai/api/v1/library/search?q=lofi \
-H "Authorization: Bearer $MELOLAB_API_KEY"Renvoie les métadonnées lisibles d’un titre.
curl -X GET https://melolab.ai/api/v1/tracks/track_123 \
-H "Authorization: Bearer $MELOLAB_API_KEY"Liste les playlists qui vous sont accessibles.
curl -X GET https://melolab.ai/api/v1/playlists \
-H "Authorization: Bearer $MELOLAB_API_KEY"Renvoie une playlist et ses titres.
curl -X GET https://melolab.ai/api/v1/playlists/playlist_123 \
-H "Authorization: Bearer $MELOLAB_API_KEY"Webhooks
Enregistrez des endpoints HTTPS pour être notifié quand les jobs asynchrones se terminent, sans avoir à interroger. Le secret de signature complet n’est affiché qu’une seule fois, à la création de l’endpoint.
Liste vos endpoints webhook actifs.
curl -X GET https://melolab.ai/api/v1/webhook-endpoints \
-H "Authorization: Bearer $MELOLAB_API_KEY"Enregistre un endpoint webhook HTTPS public. Le secret de signature n’est renvoyé qu’une seule fois.
curl -X POST https://melolab.ai/api/v1/webhook-endpoints \
-H "Authorization: Bearer $MELOLAB_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com/melolab/webhook"}'Met à jour l’URL ou le statut d’un endpoint webhook.
curl -X PATCH https://melolab.ai/api/v1/webhook-endpoints/wh_123 \
-H "Authorization: Bearer $MELOLAB_API_KEY" \
-H "Content-Type: application/json" \
-d '{"status":"disabled"}'Supprime un endpoint webhook.
curl -X DELETE https://melolab.ai/api/v1/webhook-endpoints/wh_123 \
-H "Authorization: Bearer $MELOLAB_API_KEY"Journaux
Consultez les journaux de requêtes API des 30 derniers jours.
Liste les journaux de requêtes API des 30 derniers jours.
curl -X GET https://melolab.ai/api/v1/logs?limit=20 \
-H "Authorization: Bearer $MELOLAB_API_KEY"Limites de débit
Les endpoints de lecture autorisent 600 requêtes par minute (50 000 par jour). La génération de musique autorise 12 requêtes par minute (500 par jour). L’authentification est limitée à 120 requêtes par minute par IP. En cas de dépassement, 429 rate_limited est renvoyé.
Erreurs
Les erreurs renvoient un statut HTTP et un corps JSON { error: { code, message, request_id } }. Indiquez request_id lorsque vous contactez le support.
| Statut | Code | Signification |
|---|---|---|
| 401 | authentication_required | Aucune clé API n’a été fournie dans l’en-tête Authorization. |
| 401 | invalid_api_key | La clé API est invalide ou révoquée. |
| 403 | insufficient_scope | La clé API n’a pas la portée requise. |
| 400 | invalid_request | Le corps ou les paramètres de la requête sont invalides. |
| 400 | invalid_model | L’id de modèle demandé n’existe pas. |
| 402 | insufficient_credits | Crédits MeloLab insuffisants pour créer cette génération. |
| 409 | idempotency_conflict | La clé Idempotency-Key a été réutilisée avec un corps de requête différent. |
| 404 | not_found | La ressource demandée est introuvable ou ne vous appartient pas. |
| 429 | rate_limited | Trop de requêtes ; ralentissez et réessayez plus tard. |
| 502 | provider_unavailable | Le fournisseur en amont est temporairement indisponible. |