Webhooks et API REST

Channels & Integrations

Webhooks et API REST

Conviro propose des webhooks pour recevoir des notifications d’événements en temps réel, ainsi qu’une API REST pour accéder par programmation à toutes les fonctionnalités de la plateforme.

Webhooks

Qu’est-ce qu’un webhook ?

Les webhooks envoient une requête HTTP POST à votre serveur dès qu’un événement précis se produit dans Conviro. Vous pouvez ainsi réagir en temps réel, sans interrogation périodique (polling).

Événements disponibles

ÉvénementDéclenché lorsque
message.newUn nouveau message est envoyé (par le visiteur ou le bot)
session.startedUne nouvelle session de conversation commence
session.closedUne conversation est fermée
session.escalatedUne conversation est escaladée
lead.capturedUn nouveau lead est capturé
lead.createdUne fiche de lead est créée
lead_form.submittedUn formulaire de lead est soumis
handoff.requestedUn transfert vers un agent humain est demandé
csat.submittedUne note CSAT est envoyée
csat.receivedUn résultat CSAT est enregistré
ai.failedL'IA ne parvient pas à produire une réponse
ticket.createdUn ticket de support est ouvert
ticket.resolvedUn ticket de support est résolu
contact.createdUn nouveau contact est créé
contact.updatedUn contact est mis à jour
contact.mergedDeux contacts sont fusionnés
contact.deletedUn contact est supprimé

Le formulaire de webhook propose aussi Tous les événements, qui abonne à chacun des événements ci-dessus (stocké sous forme de joker *) ; un même webhook accepte également une liste de noms d'événements séparés par des virgules.

Configuration

  1. Rendez-vous dans Dashboard -> Développeurs -> Webhooks.
  2. Cliquez sur Add Webhook.
  3. Saisissez l’URL de votre endpoint (elle doit être en HTTPS).
  4. Sélectionnez les événements que vous souhaitez recevoir.
  5. Cliquez sur Save.

Sécurité : signature HMAC-SHA256

Chaque payload de webhook est signé en HMAC-SHA256 à l’aide de votre secret de webhook. Vérifiez la signature sur votre serveur pour garantir l’authenticité :

X-Webhook-Signature: t=<unix_timestamp>,v1=<hex_digest>
X-Webhook-Event: <event_name>
X-Webhook-Retry: <attempt>          # only on a retried delivery

Le digest est calculé sur <unix_timestamp>.<corps_brut_de_la_requête> : vérifier le corps seul ne correspondra jamais. Découpez l'en-tête sur ,, lisez les valeurs t= et v1=, recalculez le HMAC-SHA256 de t + '.' + rawBody avec votre webhook secret, puis comparez les deux digests en temps constant. Rejetez une livraison dont l'horodatage a plus de quelques minutes, afin qu'une charge utile interceptée ne puisse pas être rejouée. Remarque : Envoyer un test vers une URL qui n'est pas un webhook enregistré est livré sans signature — il n'y a aucun secret pour le signer ; testez votre vérification sur un endpoint enregistré.

Politique de nouvelle tentative

Si votre endpoint renvoie un code de statut différent de 2xx, Conviro effectue jusqu’à 3 nouvelles tentatives avec un backoff exponentiel (1 min, 5 min, 30 min).


API REST

Authentification

  1. Générez une clé d’API dans Dashboard -> Développeurs -> Clés API -> Créer une clé API.
  2. Incluez-la dans l’en-tête Authorization :
Authorization: Bearer sk_your_api_key_here

> La clé n'est affichée qu'une seule fois. La création exige au moins une portée (scope) — Créer reste désactivé tant que vous n'en choisissez pas une — et la valeur sk_ complète apparaît une seule fois, dans une boîte de dialogue qui, volontairement, ne se ferme ni avec Échap ni en cliquant à l'extérieur. Ensuite, seul le préfixe reste lisible ; le reste est un hachage bcrypt et ne peut pas être récupéré. Copiez-la avant de fermer la boîte de dialogue. Si vous la perdez, créez une nouvelle clé et révoquez l'ancienne.

Principaux endpoints

MéthodeEndpointDescription
GET/api/chatbotsLister tous les chatbots
GET/api/chatbots/:idObtenir les détails d’un chatbot
GET/api/sessionsLister les sessions (avec filtres)
GET/api/sessions/:id/messagesObtenir les messages d’une session
POST/api/sessions/:id/messagesEnvoyer un message dans une session
GET/api/contactsLister les contacts
POST/api/contactsCréer un contact
GET/api/leadsLister les leads
POST/api/leadsCréer un lead
GET/api/analytics/overviewObtenir le résumé des statistiques

Limites de débit

  • Forfait Free : 60 requêtes/minute
  • Starter : 120 requêtes/minute
  • Pro : 300 requêtes/minute
  • Growth+ : 600 requêtes/minute

Les en-têtes de limite de débit sont inclus dans chaque réponse :

X-RateLimit-Limit: 300
X-RateLimit-Remaining: 298
X-RateLimit-Reset: 1672531200

Documentation complète

Consultez /developers pour la référence complète de l’API, avec des exemples de requêtes et de réponses.

webhookapiresthmacintegrationendpointsdeveloper

Cet article vous a-t-il été utile ?