This website is not affiliated with Suno. For official Suno services, please visit suno.com
Developer documentation

Suno API Documentation

Everything you need to ship AI music generation: quickstart, authentication, the full endpoint catalog (create, extend, cover, stems, MIDI, personas), and signed webhooks.

Quickstart

Your first song in three steps

  1. 1
    Create an API key. Sign up (30 free credits included) and generate a key from the dashboard.
  2. 2
    Create a generation task.
    curl -X POST https://api.aimusicapi.ai/api/v1/suno/create \
      -H "Authorization: Bearer $AIMUSICAPI_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "task_type": "create_music",
        "custom_mode": false,
        "gpt_description_prompt": "an upbeat synthwave track about night driving",
        "mv": "chirp-v5",
        "webhook_url": "https://yourapp.com/api/music-callback"
      }'
  3. 3
    Receive the result. Poll GET /api/v1/suno/task/:id or let the webhook deliver the final audio URLs to your endpoint (typical generation: 1–3 minutes).
Endpoint catalog

Every endpoint, one page

Each entry links to the full reference with request and response schemas, parameters, and copy-paste examples.

Music generation

Create music
POST /api/v1/suno/create
Generate full songs with vocals or instrumentals. Custom mode (your lyrics + style) or description mode (one prompt). Models v3.5 → V5.
Full reference
Generate lyrics
POST /api/v1/suno/lyrics
Standalone lyric generation from a theme, style, and mood.
Full reference
Task status
GET /api/v1/suno/task/:id
Poll a generation task. Or skip polling entirely with webhooks.
Full reference

Transform existing audio

Extend song
POST /api/v1/suno/upload-extend
Lengthen a track while keeping style and vocal continuity.
Full reference
Cover / restyle
POST /api/v1/suno/upload-cover
Re-render a song in a different style or with different vocals.
Full reference
Replace section
POST /api/v1/suno/replace-section
Regenerate a specific time range inside an existing song.
Full reference
Swap sound / vocals
POST /api/v1/suno/…
Keep the vocals and replace the instrumental, or the reverse.
Full reference
Upload audio
POST /api/v1/suno/upload
Bring your own audio in for any transform workflow.
Full reference

Audio processing

Stem separation
POST /api/v1/suno/stems/basic | /stems/full
4-track split, or full 12-track instrument isolation.
Full reference
Audio to MIDI
POST /api/v1/suno/audio-to-midi
Extract multi-instrument MIDI from any generated song.
Full reference
WAV export
POST /api/v1/suno/wav
Lossless WAV render of any clip for production masters.
Full reference

Voices & personas

Create persona
POST /api/v1/suno/persona
Build a reusable AI voice from a reference clip and generate with it.
Full reference

Other model families (same API key)

Producer AI (Lyria-class)
POST /api/v1/producer/create
Fast, high-fidelity generation — full songs in ~30 seconds.
Full reference
Riffusion
POST /api/v1/riffusion/create
Flexible remix-oriented generation and editing endpoints.
Full reference
Authentication
Bearer token on every request: Authorization: Bearer <your key>. Keys are created, rotated, and revoked from the dashboard; store them server-side only.
Webhooks (recommended over polling)
Pass webhook_url at task creation. Deliveries fire on succeeded, streaming, and failed, and are signed with HMAC-SHA256 (X-Webhook-Timestamp + X-Webhook-Signature headers):
// Verify webhook signatures (HMAC-SHA256 over "timestamp.rawBody")
const message = `${req.headers["x-webhook-timestamp"]}.${rawBody}`
const expected = crypto
  .createHmac("sha256", process.env.WEBHOOK_SECRET)
  .update(message)
  .digest("hex")
// compare with req.headers["x-webhook-signature"] ("sha256=<hex>")
VRAGEN

Veelgestelde vragen