Webhooks
Enregistrez des points de terminaison webhook sortants qui reçoivent des livraisons d'événements signés HMAC chaque fois que quelque chose d'intéressant se produit dans votre organisation. La page d'administration gère le CRUD des points de terminaison ; le contrat de livraison détaillé — catalogue d'événements, vérification de signature, calendrier de réessais — vit à API → Webhooks.
Où cela se trouve
Barre latérale → Webhooks sous la section Intégrations, à /organization/webhooks.
Création d'un point de terminaison
Cliquez sur + Ajouter un point de terminaison. Le dialogue demande :
- URL — l'URL HTTPS publique qui recevra les livraisons. Les tunnels (cloudflared, ngrok) fonctionnent bien pour le développement local.
- Description (facultative) — note courte, par exemple « Slack #appsec notifier » ou « Jira ticket creator ».
- Événements — quels types d'événements souscrire. Les quatre événements livrés aujourd'hui sont
assignment.created,assignment.completed,sarif.ingestedetcertificate.issued.
À la soumission, le dialogue affiche le secret de signature (whsec_…) une fois. Copiez-le immédiatement dans votre gestionnaire de secrets. Vous en avez besoin pour vérifier chaque livraison entrante ; voir API → Webhooks pour le code de vérification en Node, Python et Go.
Liste des points de terminaison
La vue liste affiche chaque point de terminaison webhook pour votre organisation. Chaque ligne porte l'URL, les événements souscrits, le créateur et un indicateur de santé en direct :
| Statut | Signification |
|---|---|
| Sain | La dernière livraison a renvoyé une réponse 2xx. |
| En échec | La dernière livraison a renvoyé une réponse non-2xx ou expiré, mais le point de terminaison est toujours retenté. |
| En attente | Le point de terminaison existe mais n'a pas encore reçu sa première livraison. |
| Désactivé | Le point de terminaison a épuisé le calendrier de réessais sur une livraison récente et a été automatiquement désactivé. L'horodatage de la dernière livraison est préservé pour que vous puissiez voir quand il a échoué. |
Modification et suppression
Cliquez sur Modifier pour mettre à jour l'URL, la description ou la liste d'abonnements aux événements. Désactiver la bascule Actif met en pause la livraison sans supprimer le point de terminaison ; la réactiver reprend la livraison et efface l'état auto-désactivé. Cliquez sur Supprimer pour retirer entièrement le point de terminaison — les livraisons en attente sont annulées et la ligne est retirée de la liste.
Inspection des livraisons récentes
Le bouton ⟳ Livraisons sur chaque ligne ouvre un tiroir listant les 50 tentatives de livraison les plus récentes pour ce point de terminaison. Chaque entrée affiche le type d'événement, l'id d'événement, le statut actuel (pending / delivered / failed / exhausted), le nombre de tentatives, le code de statut HTTP renvoyé par votre point de terminaison, tout message d'erreur et les horodatages.
Utilisez cette vue pour déboguer un consommateur qui se comporte mal sans avoir à instrumenter votre propre récepteur — si le récepteur renvoie un 5xx, le message que vous voyez ici est le même message que votre application a journalisé.
Réessai et auto-désactivation
Les livraisons échouées retentent selon un calendrier 1m → 5m → 30m → 2h pour jusqu'à cinq tentatives au total. Après le cinquième échec, le point de terminaison est auto-désactivé et la dernière livraison est marquée exhausted. Pour réactiver, corrigez le récepteur, puis cliquez sur Actif dans le dialogue Modifier ou envoyez le PATCH /api/sch/org/webhooks/{id} d'API avec {"isActive": true}.
Accès programmatique
Chaque action sur cette page est aussi accessible depuis l'API publique — voir API → Webhooks pour la surface CRUD et le contrat de livraison.