API för att ladda upp källjud
Beskrivning av ändpunkten
Att ladda upp källjud gör om en lokal eller fjärran ljudfil till ett källklipp som senare funktioner kan använda: cover, förlängning, ersätt avsnitt, separering med mera.
Ändpunkt: POST /api/music/upload-source
Fakturering: Kostnadsfritt. Den här ändpunkten laddar bara upp källjudet; den startar inget genereringsuppdrag.
Rekommenderad användning: det här är steg 1 i "cover i två steg". Ladda upp ljudet med den här ändpunkten först (kostnadsfritt, och du kan försöka igen när det misslyckas) och spara den returnerade
clip_id; när du har bekräftat att uppladdningen lyckades (statusi ett slutfört läge), anropa API för cover från ett källklipp för att starta covern — den begärans body är bara några hundra byte, så den kan inte trunkeras under överföringen för att ljudet är för stort. Jämfört med engångs-API:t ladda upp och gör cover är den här uppdelningen robustare när ljudet är stort, nätet är instabilt eller samma material ska återanvändas flera gånger (förlängning / ersättning / separering).
Tips för stora filuppladdningar
| Situation | Rekommenderat tillvägagångssätt |
|---|---|
| Ljudet är redan offentligt (har en https-direktlänk) | Använd file_url: begärans body är bara några hundra byte, det mest robusta alternativet |
| Lokal fil (Node / Python / skrivbord) | Använd multipart-uppladdning (-F "file=@source.mp3") och sätt inte Content-Type manuellt |
| Endast JSON + base64 är möjligt | Observera att Content-Length måste vara antalet byte (Buffer.byteLength), annars kan bodyn trunkeras |
När uppladdningen är klar, bekräfta alltid att status i svaret redan är slutfört och spara clip_id innan du går vidare till steg 2;
en misslyckad uppladdning debiteras inte och skapar inget genereringsuppdrag — försök bara igen.
Begäransparametrar
Headers
För JSON-begäranden:
| Parameter | Typ | Krävs | Anmärkningar |
|---|---|---|---|
| Authorization | string | ja | Bearer YOUR_API_KEY |
| Content-Type | string | ja | application/json |
Sätt inte Content-Type manuellt i multipart-begäranden; klienten skapar den automatiskt.
Body-parametrar
| Parameter | Typ | Krävs | Standard | Anmärkningar |
|---|---|---|---|---|
| model | string | nej | suno-v6 | Modellnamn mot kund: suno-v6, suno-v6-wild eller suno-v6-mini |
| file_url | string | nej | - | URL till fjärrljudet |
| file_base64 | string | nej | - | Ljud i Base64 |
| file_name | string | nej | - | Filnamn |
| upload_type | string | nej | file_upload | Uppladdningstyp |
JSON-exempelbegäran
curl -X POST https://www.suno-api.io/api/music/upload-source \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "suno-v6",
"file_url": "https://example.com/source.mp3",
"file_name": "source.mp3",
"upload_type": "file_upload"
}'
multipart-exempelbegäran
curl -X POST https://www.suno-api.io/api/music/upload-source \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "file=@source.mp3" \
-F "file_name=source.mp3" \
-F "upload_type=file_upload" \
-F "model=suno-v6"
Svar
{
"clip_id": "uploaded_clip_id",
"status": "complete",
"title": "source.mp3",
"image_url": "https://...",
"audio_url": "https://...",
"display_tags": "pop, vocal",
"inferred_description": "uploaded source audio",
"clip_metadata": {}
}
Skaffa en API-nyckel
Skapa en API-nyckel i konsolen efter registreringen. Varje generering kostar 0,6 ¥ och returnerar 2 spår, nedladdningar är obegränsade och inget telefonnummer krävs.
Hämta API-nyckel Tillbaka till översikten