Aller au contenu principal

Webhooks

Open in QuickMonitoring→ Sites → [Votre site] → Paramètres → Webhooks

Envoyez les résultats d'analyse, les événements de disponibilité et les alertes vers n'importe quel endpoint HTTP — connectez QuickMonitoring à Slack, Discord, PagerDuty ou vos propres systèmes.

Ce que vous verrez​

La section Webhooks dans les paramètres du site liste tous vos webhooks configurés et permet d'en ajouter de nouveaux :

  • Nom du webhook : un nom descriptif que vous choisissez (ex. : « Alertes Slack #ops »)
  • URL de destination : l'endpoint HTTP qui recevra les événements
  • Types d'événements abonnés : les événements pour lesquels ce webhook se déclenche
  • Statut : Actif ou Inactif
  • Dernière livraison : date, heure et code de réponse de la dernière tentative d'envoi
  • Historique des livraisons : les 50 dernières tentatives avec leur statut (Réussi, Échoué) et le code HTTP retourné par votre endpoint

Comment configurer un webhook​

  1. Rendez-vous dans Sites et sélectionnez votre site.
  2. Cliquez sur Paramètres dans la barre de navigation latérale.
  3. Ouvrez l'onglet Webhooks.
  4. Cliquez sur Ajouter un webhook.
  5. Renseignez les champs :
    • Nom : un libellé descriptif pour identifier ce webhook
    • URL : l'URL vers laquelle QuickMonitoring enverra les requêtes POST
    • Types d'événements : sélectionnez les événements qui doivent déclencher ce webhook (voir Types d'événements webhook)
  6. Cliquez sur Enregistrer.

QuickMonitoring envoie immédiatement une requête de test vers l'URL configurée pour vérifier qu'elle est joignable.

Format des requêtes​

QuickMonitoring envoie les webhooks en tant que requêtes HTTP POST avec un body JSON. Les en-têtes de la requête incluent :

Content-Type: application/json
X-QuickMonitoring-Event: scan.completed
X-QuickMonitoring-Signature: sha256=...

L'en-tête X-QuickMonitoring-Signature contient une signature HMAC-SHA256 du body, calculée avec le secret de signature de votre webhook. Vérifiez toujours cette signature côté serveur pour vous assurer que la requête provient bien de QuickMonitoring.

Exemples d'intégration​

Slack — utilisez une Incoming Webhook URL Slack et configurez un endpoint intermédiaire (ou Zapier/Make) pour transformer le payload QuickMonitoring en message Slack.

PagerDuty — utilisez l'API Events v2 de PagerDuty avec l'événement uptime.down pour créer automatiquement un incident.

Discord — utilisez un Webhook de canal Discord et transformez le payload en format Discord via un endpoint intermédiaire ou Make.

Endpoint personnalisé — recevez les événements directement dans votre propre backend pour alimenter un tableau de bord interne ou déclencher des actions dans votre système.

Gestion des échecs de livraison​

Si votre endpoint retourne un code HTTP non-2xx ou ne répond pas dans le délai imparti, QuickMonitoring retente la livraison selon le calendrier suivant :

  • 1re retentative : 1 minute après l'échec
  • 2e retentative : 5 minutes après l'échec
  • 3e retentative : 30 minutes après l'échec

Après 3 échecs consécutifs, le webhook est marqué comme En échec et vous recevez un e-mail de notification. Le webhook reste actif et reprend les livraisons normalement pour les événements suivants.

Condition de validation​

Ajoutez au moins un webhook avec une URL valide dans Paramètres → Webhooks et enregistrez-le. La requête de test initiale doit recevoir une réponse 2xx de votre endpoint.

Problèmes courants​

La requête de test échoue avec « Connection refused ». Vérifiez que l'URL est accessible depuis Internet. Les URLs localhost ou les adresses IP privées ne sont pas joignables depuis les serveurs de QuickMonitoring.

Je veux tester le webhook localement pendant le développement. Utilisez un outil comme ngrok ou localtunnel pour exposer votre serveur local via une URL publique temporaire.

Je reçois les événements mais la signature ne correspond pas. Assurez-vous d'utiliser le secret de signature affiché dans QuickMonitoring (et non une clé d'API). Le HMAC est calculé sur le body brut de la requête — ne le parsez pas avant de vérifier la signature.