पूरा गाना जोड़ने वाला API (Get Full Song)
एंडपॉइंट विवरण
पूरा गाना जोड़ना «मूल गाना + नया बनाया गया टुकड़ा» को एक पूरा गाना बनाता है: Extend के बाद अगला हिस्सा जोड़ता है, और Replace Section के बाद नए टुकड़े को वापस मूल में सी देता है। आधिकारिक वेब इंटरफ़ेस इस क्षमता को Get Full Song कहता है।
एंडपॉइंट: POST /api/music/concat
बिलिंग: सशुल्क, प्रति कॉल 0.05 CNY निर्धारित। जोड़ना जनरेशन मूल्य से अलग है और Max Mode या वॉइस प्रोफ़ाइल गुणकों में शामिल नहीं होता; असल में कटने वाली रकम बैक-ऑफ़िस मूल्य कॉन्फ़िगरेशन के अनुसार होती है।
प्रतीक्षा समय और टाइमआउट (ज़रूरी): यह सिंक्रोनस एंडपॉइंट है — ऑर्डर तभी स्वीकार होता है और जोड़ने को सौंपा जाता है जब जवाब आ जाता है। क्लाइंट टाइमआउट 300 सेकंड या ज़्यादा रखें; जवाब न आना इसका मतलब नहीं कि कुछ जोड़ा नहीं गया, और टाइमआउट के तुरंत बाद दोबारा कोशिश न करें (इससे ऑर्डर दोहरा होता है और दोबारा शुल्क लगता है)। अगर कनेक्शन टूट गया हो, तो बाद में
GET /api/music/songsसे जाँचें।
प्रमाणीकरण
| पैरामीटर | प्रकार | ज़रूरी | नोट |
|---|---|---|---|
| Authorization | string | हाँ | Bearer YOUR_API_KEY |
| Content-Type | string | हाँ | application/json |
अनुरोध पैरामीटर
| पैरामीटर | प्रकार | ज़रूरी | डिफ़ॉल्ट | नोट |
|---|---|---|---|---|
| song_id | string | हाँ | - | जोड़े जाने वाले टुकड़े का song_id (Extend या Replace Section का नतीजा); वह पूरा हो चुका होना चाहिए |
| is_infill | boolean | नहीं | false | false = बढ़ाने के लिए जोड़ना; true = बदलने (infill) के लिए जोड़ना |
| source_audio_url | string | नहीं | - | स्रोत ऑडियो का पता, जब टुकड़ा किसी बाहरी खाते से आया हो |
| source_file_name | string | नहीं | - | स्रोत फ़ाइल का नाम, जब टुकड़ा किसी बाहरी खाते से आया हो |
| source_title | string | नहीं | - | स्रोत शीर्षक, जब टुकड़ा किसी बाहरी खाते से आया हो |
audio_id, source_clip_id और sourceClipId — song_id के समान अर्थ वाले रूप हैं; इनमें से कोई एक इस्तेमाल करें।
अनुरोध उदाहरण
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
}'
किसी हिस्से को बदलने के बाद जोड़ने के लिए is_infill को true करें:
{ "song_id": "infilled_clip_id", "is_infill": true }
प्रतिक्रिया
{
"code": 200,
"message": "success",
"data": {
"clips": [
{
"song_id": "concat_clip_id",
"song_title": "स्रोत गाने का शीर्षक",
"status": "queued"
}
]
}
}
जोड़ना केवल 1 नतीजा लौटाता है (एक बार में 2 गाने नहीं बनते)। clips[].song_id सहेजें, फिर ऑडियो लेने से पहले गाना क्वेरी और इतिहास API से complete तक पोल करें।
नतीजे की अवधि कहाँ से आती है
जोड़ना दो फ़ाइलों को सीधे एक के बाद एक नहीं चिपकाता; यह टुकड़े के इतिहास में दर्ज समय-बिंदुओं के अनुसार स्रोत गाने को काटता है:
| मोड | नतीजे की संरचना |
|---|---|
is_infill: false |
स्रोत गाना [0 .. continue_at] + बढ़ाने वाले टुकड़े की पूरी लंबाई |
is_infill: true |
स्रोत गाना [0 .. शुरुआत] + बदला गया नया टुकड़ा + स्रोत गाना [अंत .. गाने का अंत] |
इसलिए जारी रखने के बिंदु के बाद का मूल ऑडियो हटा दिया जाता है और कोई हिस्सा पूरा दोहराया नहीं जाता।
नोट
- केवल पूरे हो चुके टुकड़े ही जोड़े जा सकते हैं; अगर टुकड़ा अभी बन रहा हो तो पहले उसके पूरा होने का इंतज़ार करें।
- नतीजा एक नया रिकॉर्ड है; मूल टुकड़ा बना रहता है और आगे भी इस्तेमाल हो सकता है।
- दो अलग गानों को एक में मिलाने के लिए मैशअप API और केवल एक हिस्सा रखने के लिए क्रॉप API इस्तेमाल करें।
API कुंजी प्राप्त करें
रजिस्टर करने के बाद कंसोल में API कुंजी बनाएँ। प्रत्येक जनरेशन का खर्च 0.6 युआन है और 2 ट्रैक मिलते हैं, डाउनलोड असीमित हैं और फ़ोन नंबर की ज़रूरत नहीं है।
API कुंजी लें अवलोकन पर लौटें