Canal Webhook
Canal d'alerte Webhook
Le canal webhook permet à LoadFocus d'envoyer une requête HTTP POST avec un corps JSON vers l'URL de votre choix lorsqu'une vérification surveillée change d'état. C'est le canal le plus flexible : tout ce qui accepte les webhooks JSON entrants — PagerDuty Events API, Opsgenie, Zapier, n8n, Make ou votre propre service — peut recevoir les alertes LoadFocus.
Créer un canal webhook
- Allez dans les Alert Settings et cliquez sur + New Alert Channel.
- Choisissez Webhook.
- Donnez un nom (affiché dans la liste des canaux) et collez l'URL HTTPS qui recevra le POST.
- Cliquez sur Save Configuration, activez le canal sur une vérification et choisissez les événements qu'il recevra avec les pastilles de routage par canal.
Quand LoadFocus appelle votre webhook
LoadFocus envoie un POST à votre URL pour ces événements :
| Événement | valeur event | Quand il se déclenche |
|---|---|---|
| Vérification échouée | check.failed | Une vérification passe en échec (assertion, erreur ou timeout). |
| Vérification rétablie | check.recovered | Une vérification précédemment en échec repasse au vert. |
| Vérification dégradée | check.degraded | Le temps de réponse dépasse le seuil de dégradation sans échouer. |
| Expiration SSL | ssl.expiry | 14, 7 et 3 jours avant l'expiration d'un certificat HTTPS surveillé, et le jour de l'expiration. |
| Test | test | Vous cliquez sur le bouton Test à côté du canal. |
Les pastilles Fail / Recover / Degraded / SSL sous le canal, sur la page d'édition de la vérification, déterminent lesquels de ces événements atteignent un canal. Tous sont activés par défaut.
Payload
Le corps du POST est application/json :
{"source": "loadfocus","event": "check.failed","check": {"id": "75be9e45e858177eea4a18bbdc765472","name": "Designerbox","url": "https://designerbox.ai"},"status": "failed","location": "us-east-1","timestamp": "2026-06-07T12:00:00.000Z"}
Référence des champs :
- source — toujours
loadfocus. Utilisez-le pour reconnaître l'émetteur. - event — l'un de
check.failed,check.recovered,check.degraded,ssl.expiry,test. - check.id / check.name / check.url — le moniteur qui a déclenché l'alerte.
- status — le statut de la vérification à l'envoi (
failed,passed,degradedou null pour SSL/test). - location — la région AWS d'où la vérification a été exécutée.
- timestamp — heure ISO-8601 UTC de l'événement.
Les événements d'expiration SSL ajoutent un objet details :
{"source": "loadfocus","event": "ssl.expiry","check": { "id": "...", "name": "...", "url": "https://..." },"status": null,"location": null,"timestamp": "2026-06-07T12:00:00.000Z","details": { "daysRemaining": 7, "validTo": "Aug 29 23:59:59 2026 GMT" }}
Sécurité et prérequis
- HTTPS uniquement. Les URLs de webhook doivent commencer par
https://. Les URLshttpsont rejetées. - Les adresses privées sont bloquées. Pour empêcher le server-side request forgery, LoadFocus résout votre nom d'hôte et n'appelle pas les adresses privées, loopback, link-local ou CGNAT (par exemple
10.0.0.0/8,127.0.0.1,169.254.0.0/16,192.168.0.0/16). Votre endpoint doit être accessible sur l'internet public. - Pas de redirections. LoadFocus ne suit pas les redirections HTTP sur les appels webhook — pointez le canal vers l'URL finale.
- Timeout. Chaque appel expire après 10 secondes. Il n'y a pas de relance automatique, votre récepteur doit donc accepter et mettre en file la payload rapidement.
- Vérifiez que ça marche. Utilisez le bouton Test pour envoyer un événement
testavant de compter sur le canal. Un service gratuit comme webhook.site permet d'inspecter la payload exacte.
Exemples d'intégration
- PagerDuty — pointez le canal vers votre URL d'intégration Events API v2 et n'y routez que
check.failed(désactivez Recover/Degraded/SSL) pour ouvrir des incidents sur échec. - Opsgenie — utilisez une intégration inbound API ; mappez
check.failedsur alert-create etcheck.recoveredsur alert-close. - Zapier / Make / n8n — démarrez un workflow via un trigger "Catch Hook" et branchez sur le champ
event. - Votre propre service — acceptez le POST, vérifiez
source === "loadfocus"et agissez selonevent.
Voir aussi
- Canaux d'alerte — vue d'ensemble de tous les types de canaux et du routage des événements par canal.