POST à votre URL quand quelque chose se produit dans une entreprise. Vos outils n’ont donc pas besoin d’interroger l’API en boucle.
Événements
data a la même forme que la ressource API correspondante. Par exemple, GET /appointments renvoie les objets que transporte un événement appointment.booked. Un point de terminaison de liste sert donc aussi de données d’exemple.
Ajouter un point de terminaison
Vous pouvez ajouter des points de terminaison dans le tableau de bord ou avec l’API.- Tableau de bord
- API
1
Ouvrir Webhooks
Allez dans Intégrations et cliquez sur Gérer sur la carte Webhooks. Seuls les propriétaires et les administrateurs peuvent gérer les webhooks.
2
Ajouter le point de terminaison
Cliquez sur Ajouter un point de terminaison, saisissez l’URL et choisissez les événements.
3
Copier le secret de signature
LobbyStack affiche le secret
whsec_ une seule fois. Conservez-le à un endroit où votre point de terminaison peut le lire.4
Envoyer un événement test
Cliquez sur Envoyer un événement test, puis ouvrez Journal des livraisons pour voir la réponse renvoyée par votre point de terminaison.
Charge utile
data reflète la ressource au moment où l’événement s’est produit. Récupérez de nouveau la ressource si vous avez besoin de son état actuel.
Vérifier les signatures
LobbyStack signe chaque requête avec le schéma Standard Webhooks et envoie trois en-têtes :
La signature couvre
{webhook-id}.{webhook-timestamp}.{raw body}. Sa clé est la partie du secret qui suit whsec_, décodée depuis le base64. Utilisez une bibliothèque Standard Webhooks pour la vérifier sur le corps brut de la requête, avant d’analyser le JSON :
Répondre et relancer
Renvoyez n’importe quel statut2xx en moins de 10 secondes. LobbyStack considère toute autre réponse comme un échec, y compris les délais dépassés, les redirections et les erreurs de connexion. Il ne suit pas les redirections.
Après un échec, LobbyStack fait une nouvelle tentative après 30 secondes, 2 minutes, 10 minutes, 30 minutes, 1 heure, 3 heures, 6 heures et 12 heures, soit 9 tentatives sur environ 23 heures. Chaque tentative utilise le même webhook-id, donc dédoublonnez à partir de cette valeur. Les événements peuvent arriver dans le désordre. Comparez created_at ou récupérez la ressource si l’ordre compte.
Si un événement échoue à chaque tentative et que rien n’a atteint le point de terminaison pendant cette période, LobbyStack désactive le point de terminaison et alerte votre équipe selon les choix de chaque personne dans Réglages > Notifications. Corrigez le point de terminaison, réactivez-le dans le tableau de bord ou avec PATCH /webhooks/{webhook_id} et {"status": "enabled"}, puis utilisez Renvoyer dans le journal des livraisons pour envoyer les événements manqués.
Journal des livraisons
Le journal des livraisons montre chaque événement envoyé à un point de terminaison, son statut, le dernier code de réponse, le nombre de tentatives et l’heure de la prochaine tentative. Renvoyer envoie un événement de nouveau. LobbyStack conserve 30 jours d’historique des webhooks.Changer le secret
Cliquez sur Changer le secret sur le point de terminaison. L’ancien secret cesse de fonctionner immédiatement. Mettez ensuite rapidement votre point de terminaison à jour avec le nouveau secret. Les événements dont la vérification échoue entre-temps sont relancés et arrivent une fois que votre point de terminaison utilise le nouveau secret.Règles réseau
Les points de terminaison doivent utiliserhttps:// et pointer vers une adresse publique. LobbyStack refuse les URL qui pointent vers des adresses privées, de bouclage, de liaison locale ou de métadonnées cloud, au moment où vous enregistrez le point de terminaison et à chaque livraison. Les déploiements auto-hébergés suivent la même règle.