Skip to main content
POST
Crea un’anteprima temporanea di voce clonata da 1–3 file audio caricati di tua proprietà, con autorizzazione esplicita. Si applica la quota di prova della clonazione dell’app. Salva l’anteprima selezionata prima della scadenza per conservarla.

Autenticazione e autorizzazioni

string
obbligatorio
Invia una chiave API VoiceCheap in questa intestazione. È supportato anche Authorization: Bearer con la stessa chiave API. I token di accesso OAuth sono accettati solo da MCP, non da questo endpoint REST.
Autorizzazioni richieste: voices:write. È necessario un abbonamento a pagamento attivo. Le autorizzazioni non modificano i ruoli del team, la proprietà delle risorse, i crediti multimediali o i limiti del piano.

Parametri

string
Facoltativo al livello di trasporto: se omesso, il server inserisce un identificatore prima della validazione. Fornisci un tuo UUID v4 stabile per recuperare in sicurezza una risposta persa.Formato: “uuid”. Pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$.
string
obbligatorio
Valore testuale.Lunghezza minima: 1. Lunghezza massima: 80.
array
obbligatorio
Elenco di valori. Consulta lo schema di input completo per la struttura degli elementi.Numero minimo di elementi: 1. Numero massimo di elementi: 3.
boolean
obbligatorio
Conferma di avere il permesso di clonare la persona la cui voce è presente in ciascun campione.Valore obbligatorio: true.
boolean
Valore booleano.Valore predefinito: false.
string
Valore testuale.Lunghezza massima: 35. Pattern: ^[a-z]{2,3}(-[A-Za-z0-9]{2,8})*$.
Il JSON Schema seguente conserva i nomi esatti dei campi, i tipi annidati, i valori predefiniti, i limiti e i valori accettati esposti dalla discovery. Le ulteriori regole tra campi sono elencate nelle note sull’operazione.

Idempotenza

Usa un UUID v4 in requestId o nell’intestazione HTTP Idempotency-Key per ogni modifica. Riutilizza lo stesso identificatore e argomenti identici dopo un errore di rete. Se vengono forniti entrambi, devono coincidere. Ripetere una richiesta salvata non ripete l’operazione e non consuma un’altra chiamata mensile. Le richieste non riuscite o interrotte non vengono riavviate automaticamente. Ogni modifica può restituire HTTP 202 quando un nuovo tentativo trova la stessa richiesta ancora in esecuzione, anche se la prima esecuzione è normalmente sincrona. Se l’esecuzione è completata ma resultStored è false, un nuovo tentativo restituisce HTTP 200 con lo stato della richiesta salvata anziché il risultato originale. Recupera l’output tramite l’azione di cronologia, risultato o download del relativo dominio.

Esempi di richiesta

Sostituisci gli identificatori delle risorse e le chiavi multimediali di esempio con i valori restituiti per il tuo account. Mantieni stabile l’identificatore della richiesta quando ripeti la stessa modifica.

Risposta

Questa operazione restituisce HTTP 202 mentre è in esecuzione. Salva requestId e interroga action_request_get con questo identificatore e il nome dell’operazione originale. Gli stati del polling sono running, completed, failed e interrupted. Un risultato completato può rimandare a un processo multimediale separato; prosegui con l’azione di stato o di output specifica dell’operazione. Tutte le anteprime vocali attive non salvate e le quote di creazione aggiornate, incluso il nuovo candidato di clonazione.

Campi del risultato

Recupera e monitora questa richiesta

Usa lo stesso identificatore anche dopo una connessione persa. Se resultStored è false, recupera l’output tramite la corrispondente azione di cronologia, risultato o download. Non avviare mai una seconda generazione solo per verificarne l’avanzamento.
HTTP 200

Note sull’operazione

  • Usa un requestId UUID v4 per questa modifica e riutilizzalo con argomenti identici nei nuovi tentativi. Le azioni di lunga durata restituiscono inizialmente una richiesta in stato running; questo esempio è il risultato del gestore completato disponibile da action_request_get.
  • Carica 1–3 campioni audio di proprietà dell’utente e usa i relativi valori fileKey completati. I formati dei campioni supportati sono MP3, WAV, M4A, OGG e Opus; ogni file deve essere non vuoto e avere una dimensione massima di 20 MiB (20,971,520 byte). Gli URL remoti e i caricamenti di altri account vengono rifiutati.
  • I campioni devono totalizzare almeno 10 secondi e al massimo 120 secondi di audio leggibile. Il valore predefinito di trimToMaxDuration è false; impostalo su true per accorciare proporzionalmente i campioni che totalizzano più di 120 secondi.
  • hasPermission deve essere il booleano JSON true, a conferma del permesso per ogni campione. Un valore stringa come “true” viene rifiutato.
  • name deve contenere 1–80 caratteri dopo la rimozione degli spazi iniziali e finali. Il campo opzionale language accetta un codice di 2–3 lettere con eventuali sottotag e un massimo di 35 caratteri.
  • Usa l’unica prova di anteprima di clonazione disponibile per tutta la durata dell’account. La creazione di questa anteprima non salva una voce TTS riutilizzabile né occupa uno slot di voce salvata.
  • Il nuovo candidato di clonazione ha kind: clone e dura 24 ore. La sua riproduzione è limitata a circa 10 secondi.
  • La risposta include tutte le anteprime attive non salvate. Usa voices_preview_get per aggiornare la riproduzione, quindi voices_save_preview per conservare il candidato scelto con un piano a pagamento.
  • language sceglie il testo dell’anteprima quando esiste un testo supportato; non è una richiesta di traduzione del campione caricato.
  • La cronologia dell’audio vocale e le voci personalizzate appartengono all’account autenticato. La fatturazione del team non concede accesso all’audio vocale o alle voci di un altro membro.

Utilizzo

Ogni invocazione riuscita consuma una chiamata API/MCP mensile. Si applicano anche i crediti multimediali e le quote di generazione proprie dell’operazione.

Errori