Ontwikkelaars

API-documentatie

Alles wat je nodig hebt om met de MeloLab API te bouwen: authenticatie, credits, generatie, jobs, webhooks en bibliotheekzoekopdrachten.

Aan de slag

Authenticeer elk verzoek met je API-sleutel via de header Authorization: Bearer. De basis-URL is https://melolab.ai. Lees-endpoints verbruiken geen credits; het maken van een generatie gebruikt je bestaande MeloLab-credits met dezelfde kosten- en terugbetalingsregels als de web-app. Stuur een Idempotency-Key-header bij het maken van een generatie zodat nieuwe pogingen veilig zijn. Geslaagde antwoorden zitten in een data-object; fouten geven code, message en request_id terug.

Account

Lees je API-profiel, creditsaldo en recent gebruik.

GET/api/v1/meprofile:read

Geeft het geauthenticeerde API-profiel terug, inclusief accountniveau en API-beschikbaarheid.

curl -X GET https://melolab.ai/api/v1/me \
  -H "Authorization: Bearer $MELOLAB_API_KEY"
GET/api/v1/creditscredits:read

Geeft je bestaande MeloLab-creditsaldo terug. Verbruikt geen credits.

curl -X GET https://melolab.ai/api/v1/credits \
  -H "Authorization: Bearer $MELOLAB_API_KEY"
GET/api/v1/usageprofile:read

Geeft een gebruiksoverzicht en recente, geanonimiseerde verzoekgebeurtenissen terug.

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

Modellen

Toon beschikbare MeloLab-modellen en hun creditkosten.

GET/api/v1/modelsmodels:read

Toont beschikbare MeloLab-modellen met hun creditkosten.

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

Geeft één model terug op id.

curl -X GET https://melolab.ai/api/v1/models/suno/v5-5 \
  -H "Authorization: Bearer $MELOLAB_API_KEY"

Generaties

Maak een muziekgeneratie, toon recente generaties en poll een job tot deze klaar is.

POST/api/v1/generationsgenerations:create

Maakt een asynchrone muziekgeneratie. Gebruikt je bestaande MeloLab-credits; vereist een Idempotency-Key-header.

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

Toont je recente generatie-jobs.

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

Pollt een generatie en geeft de tracks terug zodra deze klaar is.

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

Pollt een asynchrone job (muziek, stem-splitsing of vocal-verwijdering) en geeft de output terug zodra de provider klaar is.

curl -X GET https://melolab.ai/api/v1/jobs/job_123 \
  -H "Authorization: Bearer $MELOLAB_API_KEY"

Bibliotheek

Zoek afspeelbare tracks en afspeellijsten en lees details van afzonderlijke tracks of afspeellijsten.

GET/api/v1/library/searchlibrary:read

Zoekt afspeelbare tracks en afspeellijsten, inclusief je eigen privé-items.

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

Geeft afspeelbare metadata van een track terug.

curl -X GET https://melolab.ai/api/v1/tracks/track_123 \
  -H "Authorization: Bearer $MELOLAB_API_KEY"
GET/api/v1/playlistslibrary:read

Toont de afspeellijsten die voor jou beschikbaar zijn.

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

Geeft een afspeellijst en de tracks terug.

curl -X GET https://melolab.ai/api/v1/playlists/playlist_123 \
  -H "Authorization: Bearer $MELOLAB_API_KEY"

Webhooks

Registreer HTTPS-endpoints om een melding te krijgen wanneer asynchrone jobs klaar zijn, zodat je niet hoeft te pollen. Het volledige signing secret wordt maar één keer getoond bij het maken van een endpoint.

GET/api/v1/webhook-endpoints

Toont je actieve webhook-endpoints.

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

Registreert een openbaar HTTPS-webhook-endpoint. Het signing secret wordt maar één keer teruggegeven.

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}

Werkt de URL of status van een webhook-endpoint bij.

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}

Verwijdert een webhook-endpoint.

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

Logboeken

Bekijk de API-verzoeklogboeken van de afgelopen 30 dagen.

GET/api/v1/logs

Toont de API-verzoeklogboeken van de afgelopen 30 dagen.

curl -X GET https://melolab.ai/api/v1/logs?limit=20 \
  -H "Authorization: Bearer $MELOLAB_API_KEY"

Snelheidslimieten

Lees-endpoints staan 600 verzoeken per minuut toe (50.000 per dag). Muziekgeneratie staat 12 verzoeken per minuut toe (500 per dag). Authenticatie is beperkt tot 120 verzoeken per minuut per IP. Bij overschrijding wordt 429 rate_limited geretourneerd.

Fouten

Fouten retourneren een HTTP-status plus een JSON-body { error: { code, message, request_id } }. Vermeld request_id wanneer je contact opneemt met support.

StatusCodeBetekenis
401authentication_requiredEr is geen API-sleutel opgegeven in de Authorization-header.
401invalid_api_keyDe API-sleutel is ongeldig of ingetrokken.
403insufficient_scopeDe API-sleutel mist een vereiste scope.
400invalid_requestDe aanvraagbody of parameters zijn ongeldig.
400invalid_modelDe opgevraagde model-id bestaat niet.
402insufficient_creditsNiet genoeg MeloLab-credits om deze generatie te maken.
409idempotency_conflictDe Idempotency-Key is hergebruikt met een andere aanvraagbody.
404not_foundDe opgevraagde bron is niet gevonden of is niet van jou.
429rate_limitedTe veel verzoeken; vertraag en probeer later opnieuw.
502provider_unavailableDe upstream-provider is tijdelijk niet beschikbaar.

Gratis starten

Geen creditcard nodig. Begin binnen enkele seconden.