Panduan pantas

Dikemas kini 2026-09-18 · pasukan Suno-API

Panduan ini membawa anda daripada mencipta kunci API sehingga lagu pertama dijana, menyemak kemajuan dan memuat turun audio dalam masa lebih kurang lima minit. Semua contoh boleh disalin dan dijalankan sebagaimana adanya.

Model lalai semasa ialah suno-v6. Model penjanaan daripada suno-v2 hingga suno-v5-5 telah dimatikan: ia mungkin muncul dalam tugasan lama tetapi tidak menerima permintaan baharu.

Langkah 1: dapatkan kunci API

  1. Buka https://www.suno-api.io.
  2. Klik Dapatkan kunci API dan daftar. Hanya e-mel diperlukan, bukan nombor telefon.
  3. Dalam konsol, buka pengurusan token dan cipta satu kunci.
  4. Salin segera — kunci hanya dipaparkan sekali. Tambah nilai baki dengan kod tebus sebelum panggilan berbayar pertama.

Langkah 2: tetapkan permintaan

Semua panggilan menggunakan URL asas dan pengepala yang sama:

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

Langkah 3: hantar permintaan pertama

Contoh 1 — menjana daripada perihalan

Perihalkan muziknya, dan API akan menulis lirik, melodi serta susunan:

curl -X POST https://www.suno-api.io/api/music/create \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "description": "lagu folk ceria tentang hari pertama musim bunga",
    "model": "suno-v6"
  }'

Respons:

[
  {
    "song_id": "abc123",
    "status": "pending",
    "song_title": "Kisah Musim Bunga",
    "description": "lagu folk ceria tentang hari pertama musim bunga",
    "created_at": "2026-04-22T10:30:00Z"
  },
  {
    "song_id": "def456",
    "status": "pending",
    "song_title": "Langkah Musim Bunga",
    "description": "lagu folk ceria tentang hari pertama musim bunga",
    "created_at": "2026-04-22T10:30:00Z"
  }
]

Setiap penjanaan menghasilkan dua versi berbeza untuk anda pilih. Satu penjanaan berharga 0,6 ¥.

Contoh 2 — menyemak kemajuan

Hantar nilai song_id yang diterima ke titik akhir pertanyaan:

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

Semasa tugasan berjalan:

[
  {
    "song_id": "abc123",
    "status": "processing",
    "song_title": "Kisah Musim Bunga",
    "progress": "60%"
  }
]

Apabila selesai:

[
  {
    "song_id": "abc123",
    "status": "completed",
    "song_title": "Kisah Musim Bunga",
    "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
  }
]

status melalui pending, submitted, processing dan berakhir dengan completed. Alamat boleh kekal kosong semasa tugasan berjalan: nilai berdasarkan status, bukan kewujudan audio_url.

Langkah 4: muat turun fail

Apabila status ialah completed, minta sahaja audio_url. Muat turun MP3 dan WAV tidak terhad dan tidak menambah kos. Jika anda perlukan audio tanpa kehilangan data untuk suntingan, gunakan titik akhir WAV.

Senario biasa

Muzik latar untuk video

{
  "description": "latar lo-fi tenang untuk video produk, tanpa vokal, dinamik stabil",
  "instrumental": true,
  "model": "suno-v6"
}

Apabila instrumental ialah true, hasilnya tidak mengandungi vokal.

Lirik dan gaya sendiri

{
  "lyrics": "[Verse 1]\nLampu kota malap perlahan-lahan\n\n[Chorus]\nKami terus melangkah",
  "style": "acoustic pop, vokal wanita hangat, 92 BPM",
  "model": "suno-v6"
}

Menyoal sehingga selesai

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": "lagu folk ceria tentang musim bunga", "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

Pengendalian ralat

Kod utama

Kod Maksud Apa yang perlu dibuat
200 Berjaya Baca isi respons
400 Permintaan tidak sah — parameter hilang atau salah Bandingkan dengan rujukan
401 Kunci tiada atau tidak sah Periksa pengepala Authorization
403 Tiada kebenaran, biasanya baki tidak cukup Tambah nilai akaun
429 Had permintaan Hantar semula dengan backoff eksponen
500 Ralat pelayan Hantar semula; jika berterusan, hubungi sokongan

Format ralat

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

Amalan terbaik

Langkah seterusnya

Dapatkan kunci API

Cipta kunci API dalam konsol selepas mendaftar. Setiap penjanaan berharga 0.6 ¥ dan mengembalikan 2 lagu, muat turun tanpa had dan nombor telefon tidak diperlukan.

Dapatkan kunci API Kembali ke gambaran