Créer des flux de travail plus élaborés à l’aide de Webhooks

Qui peut utiliser cette fonctionnalité ?
  • Tous les membres (par défaut)
  • Disponible avec les forfaits Standard, Plus et Enterprise Grid.

Les flux de travail sont des tâches ou processus en plusieurs étapes et qui peuvent s’exécuter directement dans Slack, ou être connectés à d’autres outils et services. Les flux de travail dans Slack peuvent être aussi simples ou complexes que vous le souhaitez, et ne nécessitent généralement aucun codage.

Si vous êtes programmeur ou vous y connaissez en codage, vous pouvez créer un workflow déclenché par un événement dans un service externe (tel qu’un outil interné utilisé par votre entreprise) grâce à un Webhook.

Prérequis pour pouvoir vous lancer

  • Une bonne maîtrise de l’envoi de requêtes HTTP en ligne de commande ou avec un autre outil.
  • Une bonne compréhension de ce que sont les Webhooks entrants. Pour obtenir des conseils, consultez la documentation de l’API Slack ou demandez l’aide d’un programmeur de votre équipe.

Ce que vous allez apprendre

  • Comment configurer un Webhook pour déclencher un flux de travail dans Slack
  • Comment créer des variables personnalisées et les utiliser dans des étapes de flux de travail
  • Comment tester votre flux de travail avant de le publier

Remarque : les propriétaires et administrateurs peuvent limiter l’accès à la fonctionnalité de création de flux de travail à l’aide de Webhooks. Si vous ne voyez pas cette option dans le générateur de flux de travail, demandez l’aide d’un propriétaire ou d’un administrateur.

Conseil : Si vous avez besoin d’une piqûre de rappel concernant la configuration d’un flux de travail et la sélection d’un déclencheur, consultez l’article Configurer un flux de travail dans Slack.


Configuration d’un flux de travail

Principes de base du flux de travail avec Webhook

Dans Slack, tous les flux de travail se lancent à l’aide d’un déclencheur. Pour déclencher un flux de travail à l’aide d’un Webhook, vous devez configurer ce Webhook de façon à ce qu’il démarre votre flux de travail dans Slack lorsqu’un événement précis se produit dans un autre service. Par exemple, vous pouvez configurer un flux de travail afin qu’il publie un message dans Slack en cas de problème avec votre site web ou service et lorsqu’un incident a été signalé pour comprendre et résoudre les problèmes.

Configurer votre Webhook

Le service externe que vous avez choisi pour créer et configurer votre Webhook doit vous permettre de créer une requête HTTP POST dans Slack lorsque certains événements se produisent. Slack génère une URL de requête unique pour votre flux de travail une fois celui-ci publié, et vous devez configurer votre Webhook de façon à ce qu’il transmette des informations à Slack via le corps de la requête HTTP. Toutes les données envoyées à Slack par votre Webhook peuvent être référencées dans les étapes ultérieures du flux de travail en créant des variables.

Conseil : si vous ne savez pas comment configurer votre Webhook, nous vous recommandons de demander l’aide d’un programmeur de votre équipe ou de consulter la documentation d’aide fournie par le service que vous utilisez (Postman ou Zapier, par exemple).

Créer des variables personnalisées

Vous pouvez ajouter jusqu’à 20 variables optionnelles afin d’importer dans Slack des données provenant d’un autre service, ou intégrer des informations spécifiques à Slack, par exemple, des noms d’affichage ou des adresses e-mail dans les étapes que vous ajoutez à votre flux de travail.

Pour créer des variables personnalisées, ajoutez une paire clé/valeur dans le générateur de flux de travail sous forme de variable texte. Une fois une variable ajoutée, vous obtenez un aperçu du corps HTTP, vous permettant de vérifier que les valeurs correspondent aux sorties JSON de l’autre service que vous connectez à Slack via votre Webhook. Veuillez noter qu’il est actuellement impossible d’utiliser des structures JSON associées dans les variables de flux de travail.

Dans l’exemple ci-dessous, si l’utilisateur, la gravité et la description de l’incident ne sont pas indiqués dans votre requête de Webhook, le flux de travail échoue. 

Incident_webhook_workflow.png

Conseil : si vous devez ajouter, supprimer ou modifier des variables à tout moment, ouvrez votre flux de travail dans le générateur de flux de travail. Cliquez ensuite sur Modifier à côté de Webhook pour apporter vos modifications. Vous devez également vous assurer que les modifications apportées aux variables se répercutent dans le service externe à partir duquel votre requête de Webhook est envoyée.

Obtenir l’URL de requête web

Lorsque vous publiez votre flux de travail, Slack génère une URL de requête unique que vous pouvez ajouter à votre Webhook afin de garantir qu’il envoie la requête POST configurée au canal approprié dans Slack. Les URL de requête commencent par https://hooks.slack.com/workflows et sont suivies d’une chaîne contenant des caractères aléatoires.

Protégez bien votre URL de requête, car toute personne qui la connaît aura la possibilité de déclencher votre flux de travail.

Remarque : les flux de travail avec Webhook sont limités à une demande par seconde. Accédez au site de l’API Slack pour en savoir plus sur les limites tarifaires.


Exercice pratique de ce que vous venez d’apprendre

Ajouter des étapes

Une fois que vous avez configuré votre Webhook et créé les variables que vous souhaitez utiliser, vous voilà prêt à ajouter des étapes à votre flux de travail

  1. Ouvrez votre flux de travail dans le générateur de flux de travail. 
  2. Cliquez sur Ajouter une étape
  3. Choisissez le type d’étape que vous souhaitez ajouter, puis suivez les invites pour la personnaliser.


Tester votre flux de travail

Avant de publier votre flux de travail dans un canal utilisé activement par les membres de votre espace de travail, vous pouvez configurer la publication de la première étape dans un canal de test.

  1. Envoyez une requête POST à l’URL de requête de votre flux de travail et suivez les étapes afin de vous assurer que tout fonctionne correctement.
  2. Revenez au générateur de flux de travail et mettez à jour la première étape de votre flux de travail à publier dans votre canal préféré, puis publiez les modifications.


Générer de nouveau l’URL d’un Webhook

Si l’URL d’un Webhook a fuité ou doit être modifiée, quel que soit le motif, suivez les étapes ci-dessous : 

  1. Ouvrez le générateur de flux de travail et sélectionnez votre flux de travail dans la liste.
  2. Cliquez sur Modifier à côté de Webhook.
  3. Sélectionnez Générer de nouveau l’URL et enregistrez vos modifications.

Remarque : lorsque vous générez l’URL d’un Webhook, toute connexion existante entre votre flux de travail Slack et un autre service sera interrompue. Renseignez votre nouvelle URL auprès de l’autre service pour assurer la continuité de vos opérations.