Webhook
I webhook consentono a VoiceCheap di notificare il tuo server non appena accade qualcosa, così puoi interrompere il pollingGET /v1/translate/{projectId}/status.
Ogni consegna viene tentata una sola volta. Non sono previsti nuovi tentativi; continua a interrogare lo stato per gli eventi importanti.
Configurazione
- Apri la pagina API nel tuo account VoiceCheap.
- In Webhook, seleziona Genera chiave di firma. La chiave che inizia con
whsec_appare una sola volta: copiala e conservala sul tuo server. - Inserisci un URL
httpsin URL di destinazione e seleziona Salva.
Gli URL dei webhook devono usare HTTPS sulla porta 443 e risolversi in un indirizzo di rete pubblico. Gli URL con credenziali o frammenti, gli
indirizzi privati o riservati e i reindirizzamenti vengono rifiutati. Questo vale per l’endpoint dell’account e per gli URL specifici dei singoli
progetti.
webhooks_get, webhooks_update e webhooks_delete tramite l’API delle azioni o MCP. Usa webhooks_create_secret solo tramite l’API delle azioni REST. Conserva in modo sicuro il segreto di firma quando viene restituito; MCP non permette di eseguire questa azione né di consultarne il risultato.
Sovrascrittura dell’endpoint per richiesta
POST /v1/translate e POST /v1/projects accettano un campo opzionale webhookUrl che sovrascrive
l’endpoint dell’account solo per quel progetto. È utile per inviare il traffico di staging altrove:
Puoi impostare webhookUrl anche su POST /v1/projects/{projectId}/dub per aggiornare la destinazione di un progetto esistente.
Eventi
Non esiste un evento separato per la trascrizione. La creazione del progetto risponde prima che la trascrizione sia completata.
project.created
viene inviato solo dopo che la trascrizione è stata salvata; puoi quindi recuperarla con POST /v1/projects/{projectId}/transcript.Payload
Ogni consegna è unPOST con un corpo JSON:
Il payload è intenzionalmente leggero. Chiama l’API REST per il contenuto stesso.
Verifica della firma
Ogni consegna trasporta queste intestazioni:
La firma copre
<timestamp>.<raw body>, quindi è diversa a ogni consegna e dimostra sia
che la richiesta proviene da VoiceCheap sia che il corpo non è stato modificato durante il transito.
Risposta
Rispondi con qualsiasi stato2xx per confermare la ricezione. Rispondi entro 10 secondi — conferma prima e svolgi
il lavoro in seguito, invece di elaborare prima di rispondere.
Una risposta non 2xx o un timeout viene registrato come consegna non riuscita e, per ora, non viene riprovato.

