Panoramica della documentazione Suno API

Aggiornato il 2026-09-18 · team Suno-API

Basta registrarsi con un'e-mail per creare una chiave API. Ogni generazione costa 0,6 ¥ e restituisce 2 brani, con download MP3/WAV, cover, Extend, separazione delle tracce e clonazione vocale. URL di base: https://www.suno-api.io.

Questa pagina descrive i modelli disponibili, tutti gli endpoint di generazione e modifica, la fatturazione e l'ordine di lettura consigliato. Se è la prima integrazione, legga dall'alto verso il basso; anche i percorsi di diagnosi per 401/403/429 sono qui.

Risposte rapide

Come ottengo una chiave API? Si registri con un'e-mail, apra la console, vada in gestione token e crei un token. Non servono numero di telefono né carta.

Quanto costa una chiamata? Una generazione costa 0,6 ¥ e restituisce 2 brani. Le richieste di stato, il WAV, i testi con timestamp e i suggerimenti di prompt sono gratuiti.

Quali modelli sono supportati? suno-v6 (predefinito), suno-v6-wild e suno-v6-mini. I modelli di generazione standard v5.5 e precedenti sono ritirati; i lavori esistenti non sono interessati.

Qual è l'URL di base? https://www.suno-api.io, con l'intestazione Authorization: Bearer YOUR_API_KEY.

Modelli attualmente disponibili

I modelli che il cliente può indicare nella generazione standard sono suno-v6, suno-v6-wild e suno-v6-mini. Se model viene omesso si usa suno-v6.

I modelli standard suno-v2, suno-v3, suno-v3-5, suno-v4, suno-v4-5, suno-v4-5-all, suno-v4-5-plus, suno-v5 e suno-v5-5 sono ritirati. Nelle attività storiche quei nomi possono ancora comparire, ma sono dati storici e non significano che il modello sia utilizzabile per nuove richieste. La separazione delle tracce fa eccezione: vedi API di separazione (voce/accompagnamento).

Autenticazione

Tutti gli endpoint pubblici con chiave API usano le stesse intestazioni:

Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

URL di base:

https://www.suno-api.io

Convenzioni generali sui parametri

Limiti dei campi di testo

Superare un limite restituisce HTTP 400 direttamente: non viene generato nulla, nulla viene pre-addebitato e non viene creata alcuna attività. Il conteggio è per caratteri Unicode (un ideogramma vale 1) e anche gli spazi iniziali e finali contano.

Campo (inclusi gli alias documentati per endpoint) Limite
prompt / lyrics / description / theme / gpt_description_prompt 3000 caratteri
style_tags / tags / style / original_tags 1000 caratteri
negative_tags 1000 caratteri
song_title / title 100 caratteri

Il message di errore indica il campo interessato e la lunghezza misurata: bastano quei due numeri per accorciare il testo.

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

Si applica a: /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.

Un'eccezione: il campo description di POST /api/music/sounds è limitato a 100 caratteri, perché il percorso degli effetti sonori usa il limite più corto della piattaforma.

Generazione asincrona e indirizzi audio

Gli endpoint di generazione musicale funzionano per impostazione predefinita in modo asincrono. Quando la prima risposta riporta status pari a pending, submitted o processing, un audio_url, video_url o cover_url vuoto è normale e non indica un fallimento. Salvi il song_id reale (o il client_request_id restituito) e interroghi l'endpoint corrispondente; legga e scarichi un indirizzo audio solo quando lo stato è completato.

⚠️ Gli indirizzi audio scadono dopo 7 giorni: trasferisca i file in tempo

audio_url, wav_url, video_url e gli indirizzi restituiti dagli endpoint di download provengono dallo storage a oggetti della piattaforma e scadono per impostazione predefinita dopo 7 giorni (i file vengono riciclati; un indirizzo vecchio restituisce 404 / non scarica).

  • Entro quei 7 giorni, copi i file nel proprio storage (storage a oggetti, CDN o disco del server). Non tratti i nostri indirizzi come link permanenti.
  • Un indirizzo scaduto non richiede di rigenerare il brano e non costa nulla in più: richiami l'API di interrogazione dei brani (o l'API di download dei media) per ottenere un nuovo indirizzo valido.

Tempi di attesa e impostazione dei timeout

Gli endpoint di generazione sono sincroni: l'ordine viene accettato e consegnato alla piattaforma solo quando arriva la risposta. Prima, il servizio deve pianificare un account e superare il controllo di sicurezza necessario, senza alcuna risposta intermedia: nessun altro endpoint vede l'ordine. L'unica prova affidabile che "qualcosa è stato generato" è quindi la risposta stessa, non ciò che si osserva durante l'attesa.

Tempi misurati (produzione, famiglia /api/music/create, 18–20 settembre 2026)

Percentile Attesa
p50 circa 1,2–1,6 s
p75 circa 2–6 s
p90 circa 42–49 s
p95 circa 48–76 s
p99 circa 109–160 s
massimo circa 230 s

Requisiti di integrazione

  1. Imposti il timeout del client a 300 secondi o più. I client con 30, 60 o 120 secondi si disconnettono durante l'attesa.
  2. Nessuna risposta non significa che non sia stato generato nulla. Con un timeout o una connessione caduta, l'ordine può essere già accettato e in generazione.
  3. Non ritenti subito dopo un timeout: un invio duplicato crea un secondo ordine e addebita di nuovo.
  4. Se la connessione è caduta, elenchi i brani con GET /api/music/songs (dal più recente) poco dopo: gli ordini accettati compaiono normalmente. Reinvii solo dopo aver confermato che l'ordine manca davvero.
  5. Per segnalare un problema, includa l'intestazione di risposta X-Oneapi-Request-Id, così la singola richiesta si individua subito.

Non vuole tenere una connessione lunga? Usi la modalità ricevuta di accettazione. POST /api/music/create e POST /api/music/create/custom accettano una ricevuta opzionale: aggiunga "accept_mode": "async" al corpo (o l'intestazione X-Accept-Mode: async) e l'endpoint restituisce subito 202 con un numero di ricevuta, mentre la generazione continua in background; segua l'avanzamento con GET /api/music/requests/{request_id}. Un client con poche decine di secondi di timeout non può più scambiare "nessuna risposta" per "nulla generato", né addebitare due volte per i tentativi. Vedi "Modalità ricevuta di accettazione" nell'API di generazione in modalità semplice.

Per riferimento: python requests usa timeout=300, urllib usa urlopen(..., timeout=300), Node usa req.setTimeout(300000), curl usa --max-time 300.

Elenco degli endpoint consigliati

Capacità Metodo Percorso Nota di fatturazione Documentazione
Saldo dell'account GET /api/user/balance Gratuito Vedi
Generazione modalità semplice POST /api/music/create A pagamento, attualmente 0,6 ¥ per chiamata Vedi
Generazione modalità personalizzata POST /api/music/create/custom A pagamento; supporta genere vocale, influenza dello stile e casualità Vedi
Generazione parlato (Speech) POST /api/music/speech A pagamento, attualmente 0,6 ¥ per chiamata; musica di sottofondo opzionale Vedi
Avanzamento della ricevuta GET /api/music/requests/{request_id} Gratuito; si usa con accept_mode=async Vedi
Effetti sonori POST /api/music/sounds A pagamento, attualmente 0,6 ¥ per chiamata Vedi
Generazione testi POST /api/lyrics/generate Gratuito entro la quota (10/min, 300/giorno), poi 0,1 ¥ per chiamata Vedi
Creazione profilo vocale (consigliato) POST /api/music/voice-profile/create Gratuito (enhanced=true al prezzo della clonazione potenziata) Vedi
Cover con la propria voce (consigliato) POST /api/music/voice-profile/cover 1,2 ¥ per chiamata; 2,4 ¥ con Max Mode Vedi
Elenco / dettaglio / eliminazione voci (consigliato) GET/POST /api/music/voice-profile/list, /{voice_id}, /delete Gratuito Vedi
Clonazione vocale (catena storica, sconsigliata) POST /api/voice/clone/validate Gratuito Vedi
Interrogare un'attività di clonazione vocale GET /api/voice/clone/tasks/:voice_task_id Gratuito Vedi
Rigenerare il testo di verifica POST /api/voice/clone/tasks/:voice_task_id/regenerate Gratuito Vedi
Inviare l'audio di verifica e creare la voce POST /api/voice/clone/tasks/:voice_task_id/generate Addebitato secondo le regole di clonazione vocale Vedi
Verificare se la voce clonata è utilizzabile POST /api/voice/clone/tasks/:voice_task_id/check Gratuito Vedi
Eliminare una voce clonata DELETE /api/voice/clone/voices/:voice_task_id Gratuito Vedi
Generare con una voce scelta POST /api/music/generate-with-voice A pagamento, 1,2 ¥ per chiamata; 2,4 ¥ con Max Mode Vedi
Interrogare i risultati di una voce scelta GET /api/music/generate-with-voice/results Gratuito Vedi
Rafforzamento dello stile POST /api/music/boost-style Gratuito entro la quota (10/min, 300/giorno), poi 0,1 ¥ per chiamata Vedi
Suggerimenti di prompt POST /api/prompts/suggestions Gratuito entro la quota (10/min, 300/giorno), poi 0,1 ¥ per chiamata Vedi
Caricare l'audio sorgente POST /api/music/upload-source Gratuito Vedi
Inviare un caricamento potenziato POST /api/music/enhanced-upload A pagamento, 10 ¥ per chiamata Vedi
Elencare le attività di caricamento potenziato GET /api/music/enhanced-upload Gratuito Vedi
Interrogare una singola attività GET /api/music/enhanced-upload/:id Gratuito Vedi
Annullare un'attività di caricamento potenziato POST /api/music/enhanced-upload/:id/cancel Gratuito; solo le fasi annullabili vengono rimborsate Vedi
Carica e cover POST /api/music/upload-cover A pagamento, attualmente 0,6 ¥ per chiamata; con audio grande meglio upload-source + generate-from-source in due passi Vedi
Cover da un clip sorgente POST /api/music/generate-from-source A pagamento, attualmente 0,6 ¥ per chiamata Vedi
Extend POST /api/music/extend A pagamento, attualmente 0,6 ¥ per chiamata Vedi
Sostituzione sezione POST /api/music/replace-section A pagamento, attualmente 0,6 ¥ per chiamata Vedi
Get Full Song POST /api/music/concat A pagamento, 0,05 ¥ fissi per chiamata Vedi
Remaster POST /api/music/remaster A pagamento, attualmente 0,6 ¥ per chiamata Vedi
Aggiungere strumentale POST /api/music/add-instrumental A pagamento, in base al modello richiesto Vedi
Aggiungere voce POST /api/music/add-vocal A pagamento, in base al modello richiesto Vedi
Aggiungere traccia POST /api/music/add-stem A pagamento, in base al modello richiesto Vedi
Mashup POST /api/music/mashup A pagamento, in base al modello richiesto Vedi
Sample POST /api/music/sample A pagamento, in base al modello richiesto Vedi
Inspo POST /api/music/inspo A pagamento, in base al modello richiesto Vedi
Ritaglio POST /api/music/crop A pagamento, in base al modello richiesto Vedi
Rimozione sezione POST /api/music/remove-section A pagamento, in base al modello richiesto Vedi
Dissolvenza POST /api/music/fade A pagamento, in base al modello richiesto Vedi
Riproduzione inversa POST /api/music/reverse A pagamento, in base al modello richiesto Vedi
Velocità POST /api/music/speed A pagamento, in base al modello richiesto Vedi
Separazione tracce (voce/accompagnamento) POST /api/music/separate A pagamento; two 0,6 ¥ per chiamata, twelve 3,0 ¥ Vedi
Rimozione voce POST /api/music/vocal-removal Gratuito Vedi
Eliminazione tracce POST /api/music/stem-delete Gratuito Vedi
Generare/ottenere WAV POST /api/music/wav Gratuito Vedi
Ottenere MIDI POST /api/music/download-file (kind=midi) Gratuito Vedi
Indirizzo media / stream di anteprima POST /api/music/download-url, /api/music/generation-stream-url Gratuito Vedi
Download del file del brano POST /api/music/download-file Gratuito Vedi
Download del pacchetto del brano POST /api/music/download-all Gratuito Vedi
Indirizzo di download stabile GET /api/music/download Gratuito Vedi
Download Free2 POST /api/music/free2 A pagamento, 0,2 ¥ per brano riuscito Vedi
Stato di un brano specifico POST /api/music/query Gratuito Vedi
Storico brani dell'account GET /api/music/songs Gratuito Vedi
Parametri di generazione del brano GET /api/music/songs/:song_id Gratuito Vedi
Testi con timestamp POST /api/lyrics/timeline Gratuito Vedi
Idoneità e identità di licenza GET /api/music/authorization/context Gratuito Vedi
Associare l'identità di licenza POST /api/music/authorization/identity Gratuito; non modificabile dopo la conferma Vedi
Elencare i brani licenziabili GET /api/music/authorization/songs Gratuito; richiede l'identità associata Vedi
Emettere una licenza commerciale POST /api/music/authorization/certificates Gratuito; richiede idoneità Vedi
Storico licenze GET /api/music/authorization/certificates Gratuito Vedi
Dettaglio licenza GET /api/music/authorization/certificates/:id Gratuito Vedi
Scaricare il PDF della licenza GET /api/music/authorization/certificates/:id/download Gratuito Vedi

Gli endpoint /api/voice/clone/* e /api/music/generate-with-voice appartengono alla catena iniziale di clonazione vocale e non sono consigliati per nuove integrazioni; usi invece l'【Consigliato】 API profilo vocale.

Parametri avanzati: Max Mode e Variety

Gli endpoint di generazione supportano questi due parametri opzionali (ometterli mantiene comportamento e prezzo precedenti):

Parametro Tipo Intervallo Note
max_mode boolean true / false Usa più potenza di calcolo per migliorare la coerenza dell'intero brano; questa richiesta viene addebitata al doppio del prezzo
variety integer 0-4 Grado di variazione stilistica: 0=Off, 1=Normal, 2=High, 3=Extra, 4=Max. Se omesso si usa il livello predefinito del modello (famiglia v6: 1); nessun costo aggiuntivo

Endpoint che li supportano: 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.

Campi di risposta comuni dei brani

Gli endpoint di generazione, cover, extend, separazione e interrogazione restituiscono in genere un array di brani con questi campi:

Campo Tipo Note
song_id string ID del brano o dell'attività
song_title string Titolo del brano
status string Stato come pending, completed, failed
audio_url string Indirizzo audio, restituito a generazione completata
video_url string Indirizzo video, può essere vuoto
cover_url string Indirizzo dell'immagine di copertina
lyrics string Testo del brano
style_tags string Tag di stile
duration number Durata audio in secondi
created_at string Data di creazione
model_version string Versione del modello
generation_type string Tipo di generazione
error_message string Motivo dell'errore

Quattro passi per l'integrazione (esempio minimo)

Con questi quattro passi ottiene il primo brano; l'elenco completo dei campi di ogni passo è nella pagina corrispondente dell'elenco degli endpoint consigliati.

# 1) Inviare una generazione: 0,6 ¥, restituisce 2 brani
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 Italian pop, piano intro, warm female vocal", "model": "suno-v6"}'

# 2) Interrogare finché status non è completed (3-5 secondi è un buon intervallo)
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": "il song_id restituito al passo 1"}'

# 3) Ottenere un indirizzo media: gli endpoint di lettura sono gratuiti; 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": "lo stesso song_id", "kind": "song"}'

In caso di problemi: 401 / 402 / 403 / 429 nella guida agli errori; timeout e addebiti duplicati nella sezione "Tempi di attesa e impostazione dei timeout"; il dettaglio di ogni endpoint nell'elenco qui sotto.

Raccomandazioni

Informazioni su questa documentazione

Questa pagina è stata riorganizzata sulle capacità realmente esposte dalla Create UI; le nuove integrazioni dovrebbero leggerla per prima. La documentazione API precedente resta nella sezione "Documentazione API precedente (compatibile)" per chi vuole mantenere il metodo precedente.

AvantiAPI di consultazione del saldo dell'account

Ottenere una chiave API

Dopo la registrazione puoi creare una chiave API nella console. Ogni generazione costa 0,6 ¥ e restituisce 2 brani, i download sono illimitati e non serve un numero di telefono.

Ottieni chiave API Torna alla panoramica