Webhooks
Les webhooks permettent à VoiceCheap de notifier votre serveur dès qu’un événement se produit, afin que vous puissiez arrêter le pollingGET /v1/translate/{projectId}/status.
Les livraisons sont tentées une fois. Il n’y a pas encore de tentatives de réessai, donc continuez à utiliser le polling comme filet de sécurité pour
tout ce que vous ne pouvez pas vous permettre de manquer. Des réessais avec backoff exponentiel sont prévus.
Configuration
- Ouvrez la page API dans votre compte VoiceCheap.
- Dans Webhooks, sélectionnez Générer le secret de signature. Le secret commence par
whsec_et est affiché une fois — copiez-le et stockez-le sur votre serveur. - Entrez votre URL de point de terminaison et enregistrez-la. Elle doit utiliser
https.
Remplacement du point de terminaison par requête
POST /v1/translate et POST /v1/projects acceptent un champ optionnel webhookUrl qui remplace le
point de terminaison du compte pour ce projet uniquement. C’est pratique pour envoyer le trafic de staging ailleurs :
Événements
Il n’y a pas d’événement de transcription distinct. La transcription s’exécute lors de la création du projet, et un projet
n’existe qu’une fois sa transcription stockée — donc
project.created signifie déjà que la transcription est
prête à être récupérée avec POST /v1/projects/{projectId}/transcript.Charge utile
Chaque livraison est unPOST avec un corps JSON :
La charge utile est volontairement légère. Appelez l’API REST pour le contenu lui-même.
Vérification de la signature
Chaque livraison comporte ces en-têtes :
La signature couvre
<timestamp>.<raw body>, elle est donc différente à chaque livraison et prouve à la fois
que la requête provient de VoiceCheap et que le corps n’a pas été modifié en transit.
Réponse
Répondez avec n’importe quel statut2xx pour accuser réception. Répondez dans les 10 secondes — accusez réception d’abord et effectuez
le travail ensuite, plutôt que de traiter avant de répondre.
Une réponse autre que 2xx ou un délai d’attente est enregistré comme une livraison échouée et, pour l’instant, n’est pas réessayé.

