Schnellstart

Aktualisiert am 2026-09-18 · Suno-API-Team

Diese Anleitung führt in etwa fünf Minuten von der Schlüsselerstellung über die erste Generierung und die Statusabfrage bis zum Download der Audiodatei. Alle Beispiele lassen sich direkt kopieren und ausführen.

Das aktuelle Standardmodell ist suno-v6. Die Generierungsmodelle suno-v2 bis suno-v5-5 sind eingestellt: sie können in alten Aufgaben auftauchen, nehmen aber keine neuen Anfragen an.

Schritt 1: API-Schlüssel erhalten

  1. Öffnen Sie https://www.suno-api.io.
  2. Klicken Sie auf API-Schlüssel erhalten und registrieren Sie sich. Eine E-Mail-Adresse genügt, kein Telefon.
  3. Öffnen Sie in der Konsole die Token-Verwaltung und erstellen Sie einen Schlüssel.
  4. Sofort kopieren – der Schlüssel wird nur einmal angezeigt. Laden Sie das Guthaben vor dem ersten kostenpflichtigen Aufruf mit einem Einlösecode auf.

Schritt 2: Anfrage konfigurieren

Alle Aufrufe nutzen dieselbe Basis-URL und dieselben Header:

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

Schritt 3: Erste Anfrage senden

Beispiel 1 — aus einer Zeile Beschreibung generieren

Beschreiben Sie den Song, und die API schreibt Text, Melodie und Arrangement:

curl -X POST https://www.suno-api.io/api/music/create \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "description": "ein beschwingter Folk-Song über den ersten Frühlingstag",
    "model": "suno-v6"
  }'

Antwort:

[
  {
    "song_id": "abc123",
    "status": "pending",
    "song_title": "Frühlingsgeschichte",
    "description": "ein beschwingter Folk-Song über den ersten Frühlingstag",
    "created_at": "2026-04-22T10:30:00Z"
  },
  {
    "song_id": "def456",
    "status": "pending",
    "song_title": "Schritte des Frühlings",
    "description": "ein beschwingter Folk-Song über den ersten Frühlingstag",
    "created_at": "2026-04-22T10:30:00Z"
  }
]

Jeder Lauf liefert zwei unterschiedliche Takes zur Auswahl. Eine Generierung kostet 0,6 ¥.

Beispiel 2 — Status abfragen

Übergeben Sie die zurückgegebenen song_id an den Abfrage-Endpunkt:

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"
  }'

Während der Verarbeitung:

[
  {
    "song_id": "abc123",
    "status": "processing",
    "song_title": "Frühlingsgeschichte",
    "progress": "60%"
  }
]

Nach Abschluss:

[
  {
    "song_id": "abc123",
    "status": "completed",
    "song_title": "Frühlingsgeschichte",
    "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
  }
]

Der status durchläuft pending, submitted, processing und endet bei completed. Während der Verarbeitung können die Adressen leer sein: entscheidend ist der status, nicht das Vorhandensein von audio_url.

Schritt 4: Datei herunterladen

Ist der status completed, rufen Sie einfach die audio_url ab. MP3- und WAV-Downloads sind unbegrenzt und kosten nichts extra. Für verlustfreies Material zur Weiterbearbeitung nutzen Sie den WAV-Endpunkt.

Typische Szenarien

Hintergrundmusik für Videos

{
  "description": "ruhige Lo-fi-Hintergrundmusik für ein Produktvideo, ohne Gesang, gleichmäßige Dynamik",
  "instrumental": true,
  "model": "suno-v6"
}

Mit instrumental auf true enthält die Ausgabe keinen Gesang.

Eigener Text und eigener Stil

{
  "lyrics": "[Verse 1]\nDie Lichter der Stadt erlöschen\n\n[Chorus]\nWir gehen weiter",
  "style": "acoustic pop, warme Frauenstimme, 92 BPM",
  "model": "suno-v6"
}

Bis zum Abschluss abfragen

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": "ein Folk-Song über den Frühling", "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

Fehlerbehandlung

Wichtige Statuscodes

Code Bedeutung Vorgehen
200 Erfolg Antwortkörper lesen
400 Ungültige Anfrage (Parameter fehlt oder fehlerhaft) Mit der Referenz abgleichen
401 Schlüssel fehlt oder ungültig Authorization-Header prüfen
403 Nicht erlaubt, meist unzureichendes Guthaben Konto aufladen
429 Ratenlimit Mit exponentiellem Backoff wiederholen
500 Serverfehler Wiederholen; bei Wiederholung Support kontaktieren

Format der Fehlerantwort

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

Bewährte Praktiken

Nächste Schritte

API-Schlüssel erhalten

Erstellen Sie nach der Anmeldung einen API-Schlüssel in der Konsole. Jede Generierung kostet 0,6 ¥ und liefert 2 Tracks, Downloads sind unbegrenzt und eine Telefonnummer ist nicht erforderlich.

API-Schlüssel holen Zurück zur Übersicht