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.

GET/api/v1/meprofile:read

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"
GET/api/v1/creditscredits:read

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"
GET/api/v1/usageprofile:read

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.

GET/api/v1/modelsmodels:read

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"
GET/api/v1/models/{model_id}models:read

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.

POST/api/v1/generationsgenerations:create

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"}'
GET/api/v1/generationsgenerations:read

Liste vos jobs de génération récents.

curl -X GET https://melolab.ai/api/v1/generations \
  -H "Authorization: Bearer $MELOLAB_API_KEY"
GET/api/v1/generations/{id}generations:read

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"
GET/api/v1/jobs/{job_id}

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.

GET/api/v1/library/searchlibrary:read

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"
GET/api/v1/tracks/{id}library:read

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"
GET/api/v1/playlistslibrary:read

Liste les playlists qui vous sont accessibles.

curl -X GET https://melolab.ai/api/v1/playlists \
  -H "Authorization: Bearer $MELOLAB_API_KEY"
GET/api/v1/playlists/{id}library:read

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.

GET/api/v1/webhook-endpoints

Liste vos endpoints webhook actifs.

curl -X GET https://melolab.ai/api/v1/webhook-endpoints \
  -H "Authorization: Bearer $MELOLAB_API_KEY"
POST/api/v1/webhook-endpoints

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"}'
PATCH/api/v1/webhook-endpoints/{id}

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"}'
DELETE/api/v1/webhook-endpoints/{id}

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.

GET/api/v1/logs

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.

StatutCodeSignification
401authentication_requiredAucune clé API n’a été fournie dans l’en-tête Authorization.
401invalid_api_keyLa clé API est invalide ou révoquée.
403insufficient_scopeLa clé API n’a pas la portée requise.
400invalid_requestLe corps ou les paramètres de la requête sont invalides.
400invalid_modelL’id de modèle demandé n’existe pas.
402insufficient_creditsCrédits MeloLab insuffisants pour créer cette génération.
409idempotency_conflictLa clé Idempotency-Key a été réutilisée avec un corps de requête différent.
404not_foundLa ressource demandée est introuvable ou ne vous appartient pas.
429rate_limitedTrop de requêtes ; ralentissez et réessayez plus tard.
502provider_unavailableLe fournisseur en amont est temporairement indisponible.

Commencer gratuitement

Aucune carte bancaire requise. Créez en quelques secondes.

Voir tous les détails