Hızlı başlangıç

2026-09-18 tarihinde güncellendi · Suno-API ekibi

Bu kılavuz sizi yaklaşık beş dakika içinde API anahtarı oluşturmaktan ilk şarkıyı üretmeye, ilerlemeyi sorgulamaya ve sesi indirmeye götürür. Örnekleri olduğu gibi kopyalayıp çalıştırabilirsiniz.

Geçerli varsayılan model suno-v6. suno-v2 ile suno-v5-5 arasındaki üretim modelleri kapatıldı: eski görevlerde görünebilirler, ancak yeni istekleri kabul etmezler.

Adım 1: API anahtarı alın

  1. https://www.suno-api.io adresini açın.
  2. API anahtarı al düğmesine tıklayıp kaydolun. Yalnızca e-posta gerekir, telefon numarası istemez.
  3. Konsolda token yönetimini açın ve bir anahtar oluşturun.
  4. Hemen kopyalayın — anahtar yalnızca bir kez gösterilir. İlk ücretli çağrıdan önce bakiyenizi bir kullanım koduyla yükleyin.

Adım 2: İsteği yapılandırın

Tüm çağrılar aynı temel adresi ve aynı başlıkları kullanır:

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

Adım 3: İlk isteği gönderin

Örnek 1 — açıklamadan üretim

Müziği tarif edin; API sözleri, melodiyi ve düzenlemeyi yazar:

curl -X POST https://www.suno-api.io/api/music/create \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "description": "ilkbaharın ilk günü hakkında neşeli bir folk şarkısı",
    "model": "suno-v6"
  }'

Yanıt:

[
  {
    "song_id": "abc123",
    "status": "pending",
    "song_title": "İlkbahar Hikayesi",
    "description": "ilkbaharın ilk günü hakkında neşeli bir folk şarkısı",
    "created_at": "2026-04-22T10:30:00Z"
  },
  {
    "song_id": "def456",
    "status": "pending",
    "song_title": "İlkbahar Adımları",
    "description": "ilkbaharın ilk günü hakkında neşeli bir folk şarkısı",
    "created_at": "2026-04-22T10:30:00Z"
  }
]

Her çalıştırma seçebileceğiniz iki farklı sürüm döndürür. Bir üretim 0,6 ¥ tutar.

Örnek 2 — ilerlemeyi sorgulama

Dönen song_id değerlerini sorgu uç noktasına gönderin:

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

Görev çalışırken:

[
  {
    "song_id": "abc123",
    "status": "processing",
    "song_title": "İlkbahar Hikayesi",
    "progress": "60%"
  }
]

Tamamlandığında:

[
  {
    "song_id": "abc123",
    "status": "completed",
    "song_title": "İlkbahar Hikayesi",
    "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 alanı pending, submitted, processing değerlerinden geçip completed olur. Adresler görev sürerken boş kalabilir: audio_url varlığına değil, status değerine bakın.

Adım 4: Dosyayı indirin

status değeri completed olduğunda audio_url adresini isteyin. MP3 ve WAV indirme sınırsızdır ve ek ücret almaz. Kurgu için kayıpsız sese ihtiyacınız varsa WAV uç noktasını kullanın.

Yaygın senaryolar

Video için fon müziği

{
  "description": "ürün videosu için sakin lo-fi fon, vokalsiz, dengeli dinamik",
  "instrumental": true,
  "model": "suno-v6"
}

instrumental değeri true olduğunda çıktıda vokal bulunmaz.

Kendi sözleriniz ve stiliniz

{
  "lyrics": "[Verse 1]\nŞehrin ışıkları yavaşça sönüyor\n\n[Chorus]\nBiz yürümeye devam ediyoruz",
  "style": "acoustic pop, sıcak kadın vokal, 92 BPM",
  "model": "suno-v6"
}

Tamamlanana kadar sorgulama

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": "ilkbahar hakkında neşeli bir folk şarkısı", "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

Hata yönetimi

Temel kodlar

Kod Anlamı Ne yapmalı
200 Başarılı Yanıt gövdesini okuyun
400 Geçersiz istek — parametre eksik veya bozuk Belgeyle karşılaştırın
401 Anahtar yok veya geçersiz Authorization başlığını kontrol edin
403 İzin yok, genellikle bakiye yetersiz Hesabı yükleyin
429 İstek limiti Üstel geri çekilmeyle yeniden deneyin
500 Sunucu hatası Yeniden deneyin; sürerse desteğe başvurun

Hata biçimi

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

En iyi uygulamalar

Sonraki adımlar

API anahtarı alın

Kaydolduktan sonra konsoldan bir API anahtarı oluşturun. Her üretim 0,6 ¥ tutarındadır ve 2 parça döner, indirmeler sınırsızdır ve telefon numarası gerekmez.

API anahtarı al Genel bakışa dön