Qu'est-ce qu'un webhook Slack ?
Un webhook Slack (officiellement, un incoming webhook) est une URL unique qui permet à un service externe de publier des messages dans un canal Slack. Pas besoin de jeton de bot ni de flux OAuth : le service envoie une requête HTTP POST avec un payload JSON, et le message apparaît dans le canal. Le webhook Slack est donc le moyen le plus simple de montrer à votre équipe les alertes de surveillance de votre site dès qu'une panne survient.
Comment fonctionnent les incoming webhooks
Chaque URL de webhook appartient à une app Slack et est liée au canal choisi lors de sa création. Lorsque votre service de surveillance détecte un problème, il envoie à cette URL une requête POST avec un corps JSON comme {"text": "example.com est hors ligne"}. Slack publie le message dans le canal. Les messages peuvent être du texte brut ou utiliser Block Kit pour des mises en page plus riches.
Comment créer un incoming webhook Slack
Aujourd'hui, la configuration passe par une app Slack que vous créez sur api.slack.com/apps. Comptez environ cinq minutes. La console Slack est en anglais : nous citons donc les libellés d'origine.
Vous devez avoir le droit d'installer des apps dans votre espace de travail Slack. Si votre espace de travail restreint l'installation d'apps, Slack vous invitera à demander l'approbation d'un administrateur.
- 1
Créer une app Slack
Rendez-vous sur api.slack.com/apps et cliquez sur « Create New App ». Choisissez « From scratch », donnez un nom à l'app, par exemple « Website Monitor », sélectionnez l'espace de travail qui recevra les alertes et cliquez sur « Create App ».
- 2
Activer les incoming webhooks
Dans les paramètres de l'app, ouvrez « Incoming Webhooks » dans la barre latérale gauche et activez « Activate Incoming Webhooks ».
- 3
Ajouter un webhook à l'espace de travail
Faites défiler la page et cliquez sur « Add New Webhook to Workspace ». Slack vous demande dans quel canal l'app doit publier : choisissez un canal dédié comme #alerts, puis approuvez la demande.
- 4
Copier l'URL du webhook
De retour sur la page « Incoming Webhooks », votre nouvelle URL apparaît sous « Webhook URLs for Your Workspace ». Elle ressemble à ceci : https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX. Copiez-la et traitez-la comme un mot de passe.
Tester votre webhook Slack
Avant de connecter un service de surveillance, vérifiez que le webhook fonctionne en envoyant un message de test depuis votre terminal. Remplacez l'URL par la vôtre :
curl -X POST -H 'Content-type: application/json' \
--data '{"text":"Test alert from my monitoring setup"}' \
https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXXSi tout est bien configuré, Slack répond « ok » et le message apparaît dans votre canal.
Connecter le webhook Slack à nanokoi.io
Les alertes Slack sont incluses dans toutes les offres nanokoi.io, y compris l'offre Free. Une fois votre URL de webhook en main :
- 1Ouvrez les paramètres de notification de votre compte nanokoi.io
- 2Activez « Activer les notifications Slack »
- 3Collez votre URL de webhook dans le champ « Slack Webhook URL »
- 4Cliquez sur « Tester le Webhook » et vérifiez que le message de test arrive dans votre canal
Dès lors, nanokoi.io publie dans le canal chaque fois qu'une vérification échoue. Les alertes peuvent provenir de la surveillance de l'uptime, de la surveillance des certificats SSL ou de la surveillance DNS, et vous pouvez utiliser les alertes par e-mail et par webhook générique en parallèle de Slack.
Limites des incoming webhooks Slack
Les incoming webhooks sont volontairement simples. Gardez ces limites en tête lorsque vous planifiez vos alertes :
- Chaque webhook publie dans un seul canal. Créez un webhook par canal si vous voulez répartir les alertes sur plusieurs canaux
- Impossible de modifier le canal, le nom d'utilisateur ou l'icône depuis le payload : ils dépendent de l'app et du canal choisi
- Les messages envoyés via un webhook ne peuvent pas être modifiés ni supprimés par la suite
- Slack limite les incoming webhooks à environ un message par seconde, avec de courtes rafales autorisées
- Les anciennes intégrations personnalisées « Incoming WebHooks » sont une fonctionnalité héritée : utilisez une app Slack pour toute nouvelle configuration
Erreurs courantes des webhooks Slack
Si un message n'arrive pas, la réponse de Slack vous en donne la raison. Les erreurs les plus fréquentes sont :
invalid_payload
Le corps JSON est mal formé. Vérifiez les guillemets, l'échappement et l'en-tête Content-type: application/json.
no_text
Le champ obligatoire text est absent du payload.
no_service
Le webhook a été désactivé ou supprimé, ou l'URL est incorrecte. Créez un nouveau webhook et mettez à jour l'URL dans votre service de surveillance.
channel_is_archived
Le canal a été archivé. Désarchivez-le ou ajoutez un nouveau webhook pour un autre canal.
action_prohibited
Un administrateur de l'espace de travail a restreint les publications via cette app ou dans ce canal.
Bonnes pratiques pour les alertes de surveillance dans Slack
Quelques habitudes suffisent pour que les alertes Slack restent utiles plutôt que bruyantes :
- Gardez l'URL du webhook secrète : elle contient un jeton, ne la publiez donc jamais dans un dépôt public. Slack détecte et révoque activement les URL de webhook divulguées
- Utilisez un canal dédié aux alertes pour que les incidents ne se perdent pas dans les conversations quotidiennes
- Envoyez les alertes critiques et les notifications de routine dans des canaux différents, avec un webhook par canal
- Testez le webhook après chaque modification de votre app Slack, du canal ou des permissions de l'espace de travail
- Gardez les alertes par e-mail activées en secours en cas de panne de Slack
- Supprimez de votre app Slack les webhooks que vous n'utilisez plus
FAQ sur les webhooks Slack
Les incoming webhooks Slack sont-ils gratuits ?
Oui. Vous pouvez créer une app Slack et des incoming webhooks avec n'importe quelle offre Slack, y compris l'offre gratuite.
Un webhook Slack peut-il publier dans plusieurs canaux ?
Non. Chaque incoming webhook est lié au canal choisi lors de son ajout. Pour publier dans plusieurs canaux, ajoutez un webhook par canal à votre app Slack.
Que faire si l'URL de mon webhook a fuité ?
Supprimez le webhook depuis la page « Incoming Webhooks » de votre app, créez-en un nouveau et mettez à jour l'URL partout où elle est utilisée. Slack révoque aussi les URL de webhook qu'il trouve exposées publiquement.
Dois-je coder pour envoyer les alertes nanokoi.io vers Slack ?
Non. Collez l'URL du webhook dans les paramètres de notification de nanokoi.io et cliquez sur « Tester le Webhook » : nanokoi.io met en forme et envoie les messages d'alerte pour vous.
Recevez les alertes de votre site dans Slack
Surveillez jusqu'à 5 URL gratuitement et recevez des alertes par Slack, e-mail ou webhook lorsqu'une vérification échoue. Besoin de vérifications plus fréquentes ou de plus d'URL ? Comparez les offres.
Commencer la surveillance gratuitementAucune carte bancaire requise