Tam şarkı birleştirme API'si (Get Full Song)
Uç nokta açıklaması
Tam şarkı birleştirme, "orijinal şarkı + yeni üretilen parça"yı tek bir eksiksiz şarkıda bir araya getirir: Extend'den sonra sonraki bölümü ekler, Replace Section'dan sonra yeni parçayı orijinalin içine yeniden diker. Resmî web arayüzü bu yeteneği Get Full Song olarak adlandırır.
Uç nokta: POST /api/music/concat
Faturalama: Ücretli, çağrı başına sabit 0,05 CNY. Birleştirme, üretim fiyatından ayrıdır ve Max Mode ile ses profili çarpanlarına katılmaz; gerçekte tahsil edilen tutar arka ofis fiyat yapılandırmasına göre belirlenir.
Bekleme süreleri ve zaman aşımları (önemli): bu uç nokta senkrondur — sipariş ancak yanıt geldiğinde kabul edilir ve birleştirmeye verilir. İstemci zaman aşımını 300 saniye veya üzerine ayarlayın; yanıt gelmemesi hiçbir şeyin birleştirilmediği anlamına gelmez ve zaman aşımından hemen sonra yeniden denemeyin (siparişi çoğaltır ve tekrar ücret alır). Bağlantı koptuysa daha sonra
GET /api/music/songsile kontrol edin.
Kimlik doğrulama
| Parametre | Tür | Zorunlu | Notlar |
|---|---|---|---|
| Authorization | string | evet | Bearer YOUR_API_KEY |
| Content-Type | string | evet | application/json |
İstek parametreleri
| Parametre | Tür | Zorunlu | Varsayılan | Notlar |
|---|---|---|---|---|
| song_id | string | evet | - | Birleştirilecek parçanın song_id değeri (Extend veya Replace Section sonucu); tamamlanmış olmalıdır |
| is_infill | boolean | hayır | false | false = uzatma birleştirmesi; true = değiştirme (infill) birleştirmesi |
| source_audio_url | string | hayır | - | Parça harici bir hesaptan geldiğinde kaynak ses adresi |
| source_file_name | string | hayır | - | Parça harici bir hesaptan geldiğinde kaynak dosya adı |
| source_title | string | hayır | - | Parça harici bir hesaptan geldiğinde kaynak başlığı |
audio_id, source_clip_id ve sourceClipId, song_id için eşdeğer yazımlardır; herhangi birini kullanın.
İstek örneği
curl -X POST https://www.suno-api.io/api/music/concat \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"song_id": "extended_or_replaced_clip_id",
"is_infill": false
}'
Bir bölümü değiştirdikten sonra birleştirmek için is_infill değerini true yapın:
{ "song_id": "infilled_clip_id", "is_infill": true }
Yanıt
{
"code": 200,
"message": "success",
"data": {
"clips": [
{
"song_id": "concat_clip_id",
"song_title": "Kaynak şarkı adı",
"status": "queued"
}
]
}
}
Birleştirme yalnızca 1 sonuç döndürür (aynı anda 2 şarkı üretmez). clips[].song_id değerini kaydedin, ardından sesi almadan önce şarkı sorgulama ve geçmiş API'si ile complete olana kadar sorgulayın.
Sonuç süresi nereden geliyor
Birleştirme iki dosyayı basitçe art arda eklemez; kaynak şarkıyı parçanın geçmişinde kayıtlı zaman noktalarına göre keser:
| Mod | Sonucun bileşimi |
|---|---|
is_infill: false |
kaynak şarkı [0 .. continue_at] + uzatma parçasının tam uzunluğu |
is_infill: true |
kaynak şarkı [0 .. başlangıç] + değiştirilen yeni parça + kaynak şarkı [bitiş .. parça sonu] |
Böylece devam noktasından sonraki orijinal ses atılır ve hiçbir bölüm baştan sona tekrarlanmaz.
Notlar
- Yalnızca tamamlanmış parçalar birleştirilebilir; hâlâ üretilen bir parça için önce bitmesini bekleyin.
- Sonuç yeni bir kayıttır; orijinal parça korunur ve kullanılmaya devam eder.
- İki farklı şarkıyı tek şarkıda birleştirmek için mashup API'sini, yalnızca bir bölümü korumak için kırpma API'sini kullanın.
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