Snelstartgids

Bijgewerkt op 2026-09-18 · Suno-API-team

Deze gids brengt je in ongeveer vijf minuten van het aanmaken van een API-sleutel naar je eerste gegenereerde nummer, het opvragen van de voortgang en het downloaden van de audio. De voorbeelden kun je zo overnemen en uitvoeren.

Het huidige standaardmodel is suno-v6. De generatiemodellen van suno-v2 tot en met suno-v5-5 zijn uitgeschakeld: ze kunnen nog in oude taken voorkomen, maar accepteren geen nieuwe aanvragen meer.

Aanbevolen · Eenvoudigst
Verbind Suno API met één zin

Open je AI-assistent en stuur de onderstaande zin. De assistent volgt de Agent Kit-onboarding en rondt de configuratie af.

Stuur deze zin naar je AI:
Download, installeer en configureer suno-api agent kit vanaf dit adres  https://www.suno-api.io/suno-agent-kit.zip

Aanbevolen: laat AI de integratie afronden

De AI leest 00_START_HERE.md en helpt bij registratie, het opslaan van de API Key, saldocontrole, uitleg van alle functies en de eerste generatie. Betaalde acties worden eerst bevestigd en time-outs worden niet automatisch opnieuw verzonden.

Stap 1: een API-sleutel aanmaken

  1. Open https://www.suno-api.io.
  2. Klik op API-sleutel ophalen en registreer je. Alleen een e-mailadres is nodig, geen telefoonnummer.
  3. Open in de console het tokenbeheer en maak een sleutel aan.
  4. Kopieer hem direct — de sleutel wordt maar één keer getoond. Waardeer je saldo met een inwisselcode op voordat je de eerste betaalde aanroep doet.

Stap 2: het verzoek instellen

Alle aanroepen gebruiken dezelfde basis-URL en dezelfde headers:

POST https://www.suno-api.io
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

Stap 3: het eerste verzoek versturen

Voorbeeld 1 — genereren vanuit een beschrijving

Beschrijf de muziek en de API schrijft tekst, melodie en arrangement:

curl -X POST https://www.suno-api.io/api/music/create \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  --max-time 300 \
  -d '{
    "description": "een vrolijk folknummer over de eerste dag van de lente",
    "model": "suno-v6"
  }'

Antwoord:

[
  {
    "song_id": "abc123",
    "status": "pending",
    "song_title": "Lenteverhaal",
    "description": "een vrolijk folknummer over de eerste dag van de lente",
    "created_at": "2026-04-22T10:30:00Z"
  },
  {
    "song_id": "def456",
    "status": "pending",
    "song_title": "Lentestappen",
    "description": "een vrolijk folknummer over de eerste dag van de lente",
    "created_at": "2026-04-22T10:30:00Z"
  }
]

Elke uitvoering levert twee verschillende versies op om uit te kiezen. Eén generatie kost ¥0,6.

Voorbeeld 2 — de voortgang opvragen

Stuur de ontvangen song_id-waarden naar het opvraag-endpoint:

curl -X POST https://www.suno-api.io/api/music/query \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "song_ids": ["abc123", "def456"],
    "model": "suno-v6"
  }'

Terwijl de taak loopt:

[
  {
    "song_id": "abc123",
    "status": "processing",
    "song_title": "Lenteverhaal",
    "progress": "60%"
  }
]

Als hij klaar is:

[
  {
    "song_id": "abc123",
    "status": "completed",
    "song_title": "Lenteverhaal",
    "audio_url": "https://media.code-go.com/assets/abc123-mp3.mp3",
    "video_url": "https://media.code-go.com/assets/abc123-mp4.mp4",
    "cover_url": "https://media.code-go.com/assets/abc123-cover.jpg",
    "duration": 168
  }
]

De status loopt van pending via submitted en processing naar completed. De adressen kunnen tijdens de uitvoering leeg blijven: beoordeel op basis van de status, niet op basis van de aanwezigheid van audio_url.

Stap 4: het bestand downloaden

Als de status completed is, vraag je gewoon de audio_url op. Downloads in MP3 en WAV zijn onbeperkt en kosten niets extra. Heb je verliesvrije audio nodig voor montage, gebruik dan het WAV-endpoint.

Veelvoorkomende scenario's

Achtergrondmuziek voor video

{
  "description": "rustige lo-fi achtergrond voor een productvideo, zonder zang, stabiele dynamiek",
  "instrumental": true,
  "model": "suno-v6"
}

Met instrumental op true bevat de uitvoer geen zang.

Eigen tekst en stijl

{
  "lyrics": "[Verse 1]\nDe stadslichten doven langzaam\n\n[Chorus]\nWij lopen gewoon door",
  "style": "acoustic pop, warme vrouwenstem, 92 BPM",
  "model": "suno-v6"
}

Opvragen tot het klaar is

import time
import requests

API_KEY = "sk-your-key-here"
BASE = "https://www.suno-api.io"
HEADERS = {"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"}

created = requests.post(
    f"{BASE}/api/music/create",
    headers=HEADERS,
    json={"description": "een vrolijk folknummer over de lente", "model": "suno-v6"},
).json()

song_ids = [track["song_id"] for track in created]

for _ in range(60):
    time.sleep(10)
    tracks = requests.post(
        f"{BASE}/api/music/query",
        headers=HEADERS,
        json={"song_ids": song_ids, "model": "suno-v6"},
    ).json()
    if all(track.get("status") == "completed" for track in tracks):
        for track in tracks:
            print(track["song_title"], track["audio_url"])
        break

Foutafhandeling

Belangrijkste statuscodes

Code Betekenis Wat te doen
200 Succes Lees de inhoud van het antwoord
400 Ongeldig verzoek — parameter ontbreekt of is misvormd Vergelijk met de referentie
401 Sleutel ontbreekt of is ongeldig Controleer de header Authorization
402 Te weinig saldo Waardeer op en probeer opnieuw
403 Sleutel uitgeschakeld of account opgeschort Neem contact op met support
429 Limiet op verzoeken Opnieuw sturen met exponentiële backoff
500 Serverfout Opnieuw sturen; blijft het aanhouden, neem contact op met support

Formaat van de fout

{
  "error": {
    "message": "Invalid API key provided",
    "type": "invalid_request_error",
    "code": "invalid_api_key"
  }
}

Wachttijden en timeouts (belangrijk): generatie-endpoints zijn synchroon — de opdracht wordt pas geaccepteerd en aan generatie overgedragen wanneer het antwoord binnenkomt. Gemeten: de meeste verzoeken antwoorden in 1-3 seconden, ongeveer 10% duurt langer dan 30 seconden en de langste is ongeveer 230 seconden. Zet de client-timeout op 300 seconden of meer (de --max-time 300 in het voorbeeld); geen antwoord betekent niet dat er niets is gegenereerd, en probeer niet direct na een timeout opnieuw (dat dupliceert de opdracht en rekent opnieuw af). Als de verbinding wegviel, controleer later met GET /api/music/songs. Zie "Wachttijden en timeout-instellingen" in het Overzicht van de nieuwe API.

Beste praktijken

Volgende stappen

VolgendeAuthenticatie

Een API-sleutel aanvragen

Maak na je registratie een API-sleutel aan in de console. Elke generatie kost ¥0,6 en levert 2 nummers op, downloads zijn onbeperkt en een telefoonnummer is niet nodig.

API-sleutel ophalen Terug naar overzicht