Être notifié par webhooks
Des notifications d'événements signées et réessayées (Standard Webhooks) pour les demandes, décisions et mouvements d'effectifs — avec journal des livraisons.
Les webhooks préviennent vos systèmes à l'instant où quelque chose se passe dans Bueggio HR — sans polling. Chaque livraison est signée selon la spécification Standard Webhooks, réessayée automatiquement en cas d'échec, et consignée dans un journal des livraisons que vous pouvez consulter.
Les événements
| Événement | Se déclenche quand |
|---|---|
leave_request.created |
Quelqu'un pose une absence (en attente ou auto-approuvée) |
leave_request.approved |
Une demande est approuvée |
leave_request.declined |
Une demande est refusée |
leave_request.cancelled |
Une réservation est annulée |
user.created |
Une personne rejoint l'organisation |
user.deactivated |
Une personne est désactivée |
Ajouter un endpoint
- Allez dans Réglages → Intégrations → Webhooks.
- Saisissez l'URL HTTPS de votre endpoint et cochez les événements à recevoir.
- Cliquez sur Ajouter l'endpoint. Bueggio HR génère un secret de signature (
whsec_…) — copiez-le dans votre récepteur pour vérifier les signatures. - Cliquez sur Envoyer un ping de test et vérifiez le journal des livraisons : un 2xx vert signifie que tout est branché.
Vérifier la signature
Chaque livraison est un POST JSON avec trois en-têtes :
-
webhook-id— identifiant unique du message (aussi votre clé de déduplication). -
webhook-timestamp— secondes Unix ; rejetez les horodatages trop anciens pour éviter les attaques par rejeu. -
webhook-signature—v1,<base64>: un HMAC-SHA256 deid.timestamp.bodyavec votre secret.
Comme c'est le schéma Standard Webhooks, inutile de l'implémenter à la main — les bibliothèques officielles (JavaScript, Python, Ruby, Go, PHP…) le vérifient en un appel. Répondez avec n'importe quel statut 2xx une fois le message accepté.
Réessais et journal des livraisons
Si votre endpoint est indisponible ou répond une erreur, la livraison est réessayée jusqu'à 5 fois avec des délais croissants, puis marquée en échec. Le journal des livraisons à côté de chaque endpoint montre chaque tentative avec son code de réponse — le premier endroit où regarder quand quelque chose n'arrive pas.
Enregistrer des endpoints par code
Les endpoints peuvent aussi être créés et supprimés via l'API (POST /api/v1/webhooks) — utile pour les outils qui auto-enregistrent leurs URL de déclenchement, comme n8n.
Dépannage
- Rien n'arrive — regardez d'abord le journal des livraisons : s'il n'y a aucune ligne, l'événement n'est pas souscrit ; si les lignes sont rouges, votre endpoint refuse ou est injoignable.
-
La vérification de signature échoue — vérifiez sur le corps brut de la requête (avant tout parsing JSON) et utilisez le secret tel que votre bibliothèque l'attend, gestion du préfixe
whsec_comprise. -
Événements en double — les réessais peuvent livrer un message plus d'une fois ; dédupliquez sur
webhook-id.