aisplice

Riferimento API

Musica

Modelli su questo endpoint (1)

Provalo nel Workbench
POST/v1/music/generations
GET/v1/music/tasks/{task_id}
GET/v1/music/tasks/{task_id}/content

Generazione musicale asincrona per brani e basi strumentali. L'invio restituisce subito un task_id; interroga il task o ricevi una callback webhook, poi leggi l'audio finito da /content.

#Parametri della richiesta

  • modelstringobbligatorio

    Un ID di modello musicale dalla pagina dei modelli, per esempio suno.

  • promptstringobbligatorio

    Descrivi il brano, l'atmosfera, la strumentazione o la direzione del testo.

  • titlestringfacoltativo

    Titolo facoltativo del brano, inoltrato alle famiglie di modelli che lo supportano.

  • tagsstring | arrayfacoltativo

    Indicazioni facoltative di genere o stile, come cinematic, pop o ambient.

  • versionstringfacoltativo

    Selettore di versione della famiglia di modelli quando il provider espone più generazioni.

  • mvstringfacoltativo

    Selettore della modalità musicale specifico del provider; tienilo lato server a meno che gli utenti non abbiano bisogno di un controllo esplicito.

  • instrumentalbooleanfacoltativo

    Genera un output strumentale senza voce quando il modello lo supporta.

  • make_instrumentalbooleanfacoltativo

    Flag alternativo del fornitore per l'output strumentale; alcuni provider lo usano al posto di instrumental.

  • continue_clip_idstringfacoltativo

    Continua o estendi una clip precedente invece di iniziare un nuovo brano.

  • continue_atnumberfacoltativo

    Punto di ripresa in secondi per i flussi di continuazione.

  • webhook_urlstringfacoltativo

    URL HTTPS chiamato quando il task raggiunge uno stato finale.

  • webhook_secretstringfacoltativo

    Se impostato, le consegne includono X-Xiaoxiang-Signature: sha256=hex(HMAC-SHA256(body, secret)).

Inizia in modo semplice

Per la maggior parte dei prodotti, prompt basta per la prima integrazione. title, tags, version e i campi di continuazione sono controlli avanzati da aggiungere solo quando il prodotto ne ha davvero bisogno.

Stesso contratto asincrono degli altri task multimediali

La musica segue lo stesso schema invio → polling o webhook → /content dei task di immagini e video, quindi di solito un solo esecutore di task nel backend può gestirli tutti e tre.

#Errori correlati

  • 404 not_foundPercorso sconosciuto, nome del modello sconosciuto o un task_id scaduto o di un altro account.
  • 422 unprocessable_entityIl fornitore ha rifiutato i valori dei parametri inoltrati dal gateway (per esempio dimensione o durata non supportate).
  • 401Bearer token non valido o mancante. Su questo percorso non c'è error.code — basati sullo stato.
  • 402 insufficient_user_quotaIl saldo del portafoglio non copre la stima pre-riservata.
  • 429Limitazione per chiave. Corpo vuoto; attendi Retry-After. Un 429 che contiene insufficient_user_quota indica invece un limite di spesa giornaliero.
  • 503 model_not_foundModello sconosciuto, oppure nessun canale funzionante lo serve al momento.

Tabella completa dei codici di errore →

#Esempio di richiesta

# submit
curl https://www.aisplice.store/v1/music/generations \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "suno",
    "prompt": "a warm cinematic piano theme",
    "instrumental": true
  }'

# poll every 5s
curl https://www.aisplice.store/v1/music/tasks/$TASK_ID -H "Authorization: Bearer sk-YOUR_KEY"

# fetch the finished track
curl -L https://www.aisplice.store/v1/music/tasks/$TASK_ID/content \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -o song.mp3

#Risposta

response.json
// POST — submit accepted
{"task_id": "task_xxx", "status": "queued"}

// GET /v1/music/tasks/{task_id}
{
  "task_id": "task_xxx",
  "status": "in_progress",
  "progress": "42%"
}

// GET /v1/music/tasks/{task_id}/content
{
  "task_id": "task_xxx",
  "status": "completed",
  "metadata": {
    "audio_url": "https://…",
    "lyric": "…"
  }
}

Non hai ancora risolto?

Inviaci l'ID richiesta o il messaggio di errore e verificheremo.