Prezentare generală a documentației Suno API

Actualizat pe 2026-09-18 · echipa Suno-API

Este suficient să te înregistrezi cu un e-mail pentru a crea o cheie API. O generare costă 0,6 ¥ și returnează 2 piese, cu descărcare MP3/WAV, cover-uri, Extend, separarea stemurilor și clonare vocală. URL de bază: https://www.suno-api.io.

Această pagină descrie modelele disponibile, toate endpointurile de generare și editare, facturarea și ordinea recomandată de citire. Dacă este prima integrare, citește de sus în jos; punctele de diagnostic pentru 401/403/429 sunt tot aici.

Răspunsuri rapide

Cum obțin o cheie API? Înregistrează-te cu un e-mail, deschide consola, mergi la gestionarea tokenurilor și creează un token. Nu e nevoie de număr de telefon sau card.

Cât costă un apel? O generare costă 0,6 ¥ și returnează 2 piese. Interogările de status, WAV, versurile cu marcaje de timp și sugestiile de prompt nu costă suplimentar.

Ce modele sunt acceptate? suno-v6 (implicit), suno-v6-wild și suno-v6-mini. Modelele standard de generare v5.5 și mai vechi au fost retrase; lucrările existente nu sunt afectate.

Care este URL-ul de bază? https://www.suno-api.io, cu antetul Authorization: Bearer YOUR_API_KEY.

Modele disponibile în prezent

La generarea standard a pieselor clientul poate indica doar suno-v6, suno-v6-wild și suno-v6-mini. Dacă model lipsește, se folosește suno-v6.

Modelele standard suno-v2, suno-v3, suno-v3-5, suno-v4, suno-v4-5, suno-v4-5-all, suno-v4-5-plus, suno-v5 și suno-v5-5 au fost retrase. În sarcinile istorice aceste nume pot apărea încă, dar sunt date istorice și nu înseamnă că modelul poate fi folosit pentru cereri noi. Excepția o reprezintă separarea pe stemuri — vezi API pentru stemuri (separarea vocii și a acompaniamentului).

Autentificare

Toate endpointurile publice cu cheie API folosesc aceleași antete:

Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

URL de bază:

https://www.suno-api.io

Reguli generale pentru parametri

Limitele câmpurilor de text

Depășirea limitei returnează direct HTTP 400: nu se generează nimic, nu se pre-debitează nimic și nu se creează nicio înregistrare de sarcină. Numărătoarea se face în caractere Unicode (un ideogramă contează ca 1), iar spațiile de la început și sfârșit contează și ele.

Câmp (inclusiv aliasurile documentate pe fiecare pagină) Limită
prompt / lyrics / description / theme / gpt_description_prompt 3000 de caractere
style_tags / tags / style / original_tags 1000 de caractere
negative_tags 1000 de caractere
song_title / title 100 de caractere

Mesajul de eroare (message) indică câmpul și lungimea măsurată; aceste două numere sunt suficiente pentru a scurta textul:

{
  "error": {
    "message": "style_tags must not exceed 1000 characters; received 2772",
    "type": "invalid_request_error"
  }
}

Se aplică pentru: /api/music/create, /api/music/create/custom, /api/music/extend, /api/music/upload-cover, /api/music/generate-from-source, /api/music/add-instrumental, /api/music/add-vocal, /api/music/add-stem, /api/music/mashup, /api/music/sample, /api/music/inspo, /api/music/crop, /api/music/remove-section, /api/music/fade, /api/music/reverse, /api/music/speed, /api/music/replace-section, /api/music/generate-with-voice.

O excepție: câmpul description de la POST /api/music/sounds este limitat la 100 de caractere, fiindcă traseul efectelor sonore folosește limita mai scurtă a platformei.

Generare asincronă și adrese audio

Endpointurile de generare muzicală funcționează implicit asincron. Când primul răspuns are status egal cu pending, submitted sau processing, un audio_url, video_url sau cover_url gol este normal și nu înseamnă că sarcina a eșuat. Salvează song_id-ul real (sau client_request_id-ul returnat) și interoghează endpointul corespunzător; citește și descarcă o adresă audio doar după ce statusul este finalizat.

⚠️ Adresele audio expiră după 7 zile — mută fișierele la timp

audio_url, wav_url, video_url și adresele returnate de endpointurile de descărcare sunt servite din stocarea obiect a platformei și expiră implicit după 7 zile (fișierele sunt reciclate; o adresă veche returnează 404 / nu se descarcă).

  • În aceste 7 zile, mută fișierele în propria stocare (stocarea ta obiect, un CDN sau un disc de server). Nu trata adresele noastre ca linkuri de durată lungă.
  • O adresă expirată nu necesită regenerarea piesei și nu costă nimic în plus: apelează din nou API-ul de interogare a pieselor (sau API-ul de descărcare media) pentru o adresă nouă și validă.

Timpi de așteptare și setarea timeout-ului

Endpointurile de generare sunt sincrone: comanda este acceptată și transmisă platformei doar când sosește răspunsul. Înainte de asta, serviciul trebuie să aloce un cont și să treacă verificarea de securitate necesară, iar un răspuns intermediar nu există — niciun alt endpoint nu vede comanda. Prin urmare, singura dovadă fiabilă că „s-a generat ceva" este răspunsul în sine, nu ceea ce observi în timpul așteptării.

Timpi măsurați (producție, familia /api/music/create, 18–20 septembrie 2026)

Percentilă Așteptare
p50 aproximativ 1,2–1,6 s
p75 aproximativ 2–6 s
p90 aproximativ 42–49 s
p95 aproximativ 48–76 s
p99 aproximativ 109–160 s
maxim aproximativ 230 s

Cerințe de integrare

  1. Setează timeout-ul clientului la 300 de secunde sau mai mult. Clienții cu 30, 60 sau 120 de secunde întrerup conexiunea în timpul așteptării.
  2. Lipsa răspunsului nu înseamnă că nu s-a generat nimic. La timeout sau conexiune întreruptă, comanda poate fi deja acceptată și în generare.
  3. Nu reîncerca imediat după un timeout: o trimitere duplicată creează o a doua comandă și facturează din nou.
  4. Dacă conexiunea s-a întrerupt, listează piesele cu GET /api/music/songs (cele mai noi primele) puțin mai târziu — comenzile acceptate apar normal. Retrimite doar după ce confirmi că comanda lipsește cu adevărat.
  5. Când raportezi o problemă, include antetul de răspuns X-Oneapi-Request-Id, ca cererea exactă să poată fi găsită.

Nu vrei să ții o conexiune lungă? Folosește modul cu confirmare de primire. POST /api/music/create și POST /api/music/create/custom acceptă o confirmare opțională: adaugă "accept_mode": "async" în corp (sau antetul X-Accept-Mode: async) și endpointul răspunde imediat 202 cu un număr de confirmare, în timp ce generarea continuă în fundal; urmărește progresul cu GET /api/music/requests/{request_id}. Un client cu doar câteva zeci de secunde de timeout nu mai poate confunda „fără răspuns" cu „nimic generat" și nu mai poate plăti de două ori din cauza reîncercărilor. Vezi „Modul cu confirmare de primire" în API-ul de generare în modul simplu.

Pentru referință: python requests folosește timeout=300, urllib folosește urlopen(..., timeout=300), Node folosește req.setTimeout(300000), curl folosește --max-time 300.

Lista de endpointuri recomandate

Capacitate Metodă Cale Notă de facturare Documentație
Soldul contului GET /api/user/balance Gratuit Vezi
Generare în modul simplu POST /api/music/create Contra cost, momentan 0,6 ¥ per apel Vezi
Generare în modul personalizat POST /api/music/create/custom Contra cost; acceptă genul vocal, influența stilului și gradul de aleatoriu Vezi
Generare de voce vorbită (Speech) POST /api/music/speech Contra cost, momentan 0,6 ¥ per apel; muzică de fundal opțională Vezi
Progresul confirmării GET /api/music/requests/{request_id} Gratuit; se folosește cu accept_mode=async Vezi
Efecte sonore POST /api/music/sounds Contra cost, momentan 0,6 ¥ per apel Vezi
Generare de versuri POST /api/lyrics/generate Gratuit în cotă (10/min, 300/zi), apoi 0,1 ¥ per apel Vezi
Crearea unui profil vocal (recomandat) POST /api/music/voice-profile/create Gratuit (enhanced=true se facturează ca clonare întărită) Vezi
Cover cu propria voce (recomandat) POST /api/music/voice-profile/cover 1,2 ¥ per apel; 2,4 ¥ cu Max Mode Vezi
Listă / detalii / ștergere voci (recomandat) GET/POST /api/music/voice-profile/list, /{voice_id}, /delete Gratuit Vezi
Clonare vocală (lanț vechi, nerecomandat) POST /api/voice/clone/validate Gratuit Vezi
Interogarea unei sarcini de clonare GET /api/voice/clone/tasks/:voice_task_id Gratuit Vezi
Regenerarea textului de verificare POST /api/voice/clone/tasks/:voice_task_id/regenerate Gratuit Vezi
Trimiterea audio-ului de verificare și crearea vocii POST /api/voice/clone/tasks/:voice_task_id/generate Conform regulilor de clonare vocală Vezi
Verificarea disponibilității vocii clonate POST /api/voice/clone/tasks/:voice_task_id/check Gratuit Vezi
Ștergerea unei voci clonate DELETE /api/voice/clone/voices/:voice_task_id Gratuit Vezi
Generare cu vocea aleasă POST /api/music/generate-with-voice Contra cost, 1,2 ¥ per apel; 2,4 ¥ cu Max Mode Vezi
Rezultatele generării cu vocea aleasă GET /api/music/generate-with-voice/results Gratuit Vezi
Întărirea stilului POST /api/music/boost-style Gratuit în cotă (10/min, 300/zi), apoi 0,1 ¥ per apel Vezi
Sugestii de prompt POST /api/prompts/suggestions Gratuit în cotă (10/min, 300/zi), apoi 0,1 ¥ per apel Vezi
Încărcarea audio-ului sursă POST /api/music/upload-source Gratuit Vezi
Trimiterea unei încărcări întărite POST /api/music/enhanced-upload Contra cost, 10 ¥ per apel Vezi
Listarea sarcinilor de încărcare întărită GET /api/music/enhanced-upload Gratuit Vezi
Interogarea unei sarcini de încărcare întărită GET /api/music/enhanced-upload/:id Gratuit Vezi
Anularea unei sarcini de încărcare întărită POST /api/music/enhanced-upload/:id/cancel Gratuit; se rambursează doar etapele anulabile Vezi
Încarcă și fă cover POST /api/music/upload-cover Contra cost, momentan 0,6 ¥ per apel; pentru audio mare e mai bine upload-source + generate-from-source în doi pași Vezi
Cover dintr-un clip sursă POST /api/music/generate-from-source Contra cost, momentan 0,6 ¥ per apel Vezi
Extend POST /api/music/extend Contra cost, momentan 0,6 ¥ per apel Vezi
Înlocuirea unui segment POST /api/music/replace-section Contra cost, momentan 0,6 ¥ per apel Vezi
Get Full Song POST /api/music/concat Contra cost, fix 0,05 ¥ per apel Vezi
Remaster POST /api/music/remaster Contra cost, momentan 0,6 ¥ per apel Vezi
Adăugarea unui instrumental POST /api/music/add-instrumental Contra cost, în funcție de modelul cerut Vezi
Adăugarea vocii POST /api/music/add-vocal Contra cost, în funcție de modelul cerut Vezi
Adăugarea unei piste POST /api/music/add-stem Contra cost, în funcție de modelul cerut Vezi
Mashup POST /api/music/mashup Contra cost, în funcție de modelul cerut Vezi
Sample POST /api/music/sample Contra cost, în funcție de modelul cerut Vezi
Inspo POST /api/music/inspo Contra cost, în funcție de modelul cerut Vezi
Decupare POST /api/music/crop Contra cost, în funcție de modelul cerut Vezi
Ștergerea unui segment POST /api/music/remove-section Contra cost, în funcție de modelul cerut Vezi
Fade POST /api/music/fade Contra cost, în funcție de modelul cerut Vezi
Redare inversă POST /api/music/reverse Contra cost, în funcție de modelul cerut Vezi
Viteză POST /api/music/speed Contra cost, în funcție de modelul cerut Vezi
Stemuri (separarea vocii și a acompaniamentului) POST /api/music/separate Contra cost; two 0,6 ¥ per apel, twelve 3,0 ¥ Vezi
Eliminarea vocii POST /api/music/vocal-removal Gratuit Vezi
Ștergerea stemurilor POST /api/music/stem-delete Gratuit Vezi
Generare/obținere WAV POST /api/music/wav Gratuit Vezi
Obținere MIDI POST /api/music/download-file (kind=midi) Gratuit Vezi
Adresă media / flux de previzualizare POST /api/music/download-url, /api/music/generation-stream-url Gratuit Vezi
Descărcarea fișierului piesei POST /api/music/download-file Gratuit Vezi
Descărcarea pachetului piesei POST /api/music/download-all Gratuit Vezi
Adresă stabilă de descărcare GET /api/music/download Gratuit Vezi
Descărcare Free2 POST /api/music/free2 Contra cost, 0,2 ¥ per piesă reușită Vezi
Statusul unei anumite piese POST /api/music/query Gratuit Vezi
Istoricul pieselor contului GET /api/music/songs Gratuit Vezi
Parametrii de generare ai piesei GET /api/music/songs/:song_id Gratuit Vezi
Versuri cu marcaje de timp POST /api/lyrics/timeline Gratuit Vezi
Eligibilitate și identitate pentru licență GET /api/music/authorization/context Gratuit Vezi
Asocierea identității pentru licență POST /api/music/authorization/identity Gratuit; nu se poate modifica după confirmare Vezi
Listarea pieselor licențiabile GET /api/music/authorization/songs Gratuit; necesită identitate asociată Vezi
Emiterea unei licențe comerciale POST /api/music/authorization/certificates Gratuit; necesită eligibilitate Vezi
Istoricul licențelor GET /api/music/authorization/certificates Gratuit Vezi
Detaliile licenței GET /api/music/authorization/certificates/:id Gratuit Vezi
Descărcarea PDF-ului licenței GET /api/music/authorization/certificates/:id/download Gratuit Vezi

Endpointurile /api/voice/clone/* și /api/music/generate-with-voice aparțin lanțului timpuriu de clonare vocală și nu sunt recomandate pentru integrări noi; folosește în schimb 【Recomandat】 API-ul de profil vocal.

Parametri avansați: Max Mode și Variety

Endpointurile de generare acceptă acești doi parametri opționali (dacă lipsesc, comportamentul și prețul rămân neschimbate):

Parametru Tip Interval Note
max_mode boolean true / false Folosește mai multă putere de calcul pentru o consistență mai bună a piesei; această cerere se facturează la dublu
variety integer 0-4 Gradul de variație stilistică: 0=Off, 1=Normal, 2=High, 3=Extra, 4=Max. Dacă lipsește, se folosește nivelul implicit al modelului (familia v6: 1); fără cost suplimentar

Acceptat de: POST /api/music/create, POST /api/music/create/custom, POST /api/music/extend, POST /api/music/upload-cover, POST /api/music/generate-from-source, POST /api/music/add-instrumental, POST /api/music/add-vocal, POST /api/music/add-stem, POST /api/music/mashup, POST /api/music/sample, POST /api/music/inspo, POST /api/music/replace-section, POST /api/music/voice-profile/cover, POST /api/music/speech.

Câmpuri comune de răspuns pentru piese

Endpointurile de generare, cover, extend, separare și interogare returnează de obicei un tablou de piese cu aceste câmpuri:

Câmp Tip Note
song_id string ID-ul piesei sau al sarcinii
song_title string Titlul piesei
status string Status precum pending, completed, failed
audio_url string Adresa audio, returnată după finalizarea generării
video_url string Adresa video, poate fi goală
cover_url string Adresa imaginii de copertă
lyrics string Textul versurilor
style_tags string Etichete de stil
duration number Durata audio în secunde
created_at string Momentul creării
model_version string Versiunea modelului
generation_type string Tipul generării
error_message string Motivul eșecului

Patru pași pentru integrare (exemplu minim)

Cu acești patru pași obții prima piesă; lista completă de câmpuri pentru fiecare pas este pe pagina corespunzătoare din lista de endpointuri recomandate.

# 1) Trimite o generare: 0,6 ¥, returnează 2 piese
curl -X POST https://www.suno-api.io/api/music/create \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"description": "bright Romanian pop, piano intro, warm female vocal", "model": "suno-v6"}'

# 2) Interoghează până când status este completed (3-5 secunde e un interval bun)
curl -X POST https://www.suno-api.io/api/music/query \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"song_id": "song_id-ul returnat la pasul 1"}'

# 3) Obține o adresă media: endpointurile de citire sunt gratuite; song / wav / video / cover / midi
curl -X POST https://www.suno-api.io/api/music/download-url \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"song_id": "același song_id", "kind": "song"}'

Dacă apare o problemă: 401 / 402 / 403 / 429 în lista de erori; timeout-uri și debitări duble în secțiunea de mai sus; detaliile fiecărui endpoint în lista de mai jos.

Recomandări

Despre această documentație

Această pagină a fost reorganizată în jurul capacităților pe care Create UI le expune efectiv; integrările noi ar trebui să înceapă aici. Documentația API veche rămâne disponibilă în secțiunea „Documentația API veche (compatibil)" pentru cei care vor să păstreze metoda anterioară.

UrmătorulAPI de interogare a soldului contului

Obține o cheie API

Creează o cheie API în consolă după înregistrare. Fiecare generare costă 0,6 ¥ și returnează 2 piese, descărcările sunt nelimitate și nu este nevoie de număr de telefon.

Obține cheia API Înapoi la prezentare