Skip To Content

Créer des tâches avec des webhooks

Licence :

Ces fonctions nécessitent une licence pour le rôle ArcGIS Workflow Manager Server Advanced.

Les webhooks permettent aux applications d’envoyer des informations à d’autres applications et services lors d'une action ou d'un événement spécifique. ArcGIS Workflow Manager agit comme le récepteur de la charge utile du webhook et permet de traiter les informations d’un webhook entrant pour créer automatiquement une tâche à partir du modèle de tâche spécifié. Vous pouvez également enregistrer la charge utile du webhook entrant en tant que fichier et joindre ce dernier à la tâche et configurer des valeurs en sortie personnalisées pouvant être utilisées dans toute la tâche.

À compter de la version 11.2, tous les webhooks entrants nécessitent une sécurité d’en-tête. Pour autoriser Workflow Manager à utiliser les webhooks sans sécurité d’en-tête, vous devez définir la propriété allowUnsecureWebhooks sur true dans le fichier de configuration de Workflow Manager.

Attention :

Les webhooks existants ne fonctionnent pas tant que l’élément de workflow n’est pas mis à niveau vers la version la plus récente.

Créer un webhook entrant

Pour créer un webhook entrant, procédez comme suit :

  1. Accédez à l’application Web Workflow Manager.
  2. Cliquez sur l'onglet Design (Création).

    La page Design (Conception) apparaît.

    Remarque :

    Si vous ne disposez pas de privilèges suffisants, l’onglet Design (Création) n’est pas disponible.

  3. Cliquez sur Job Templates (Modèles de tâche) Job Templates.

    Le panneau Job Templates (Modèles de tâche) apparaît.

  4. Sélectionnez le modèle de tâche pour lequel vous souhaitez créer un webhook entrant.

    Le modèle de tâche apparaît dans le panneau.

  5. Cliquez sur l’onglet Automated Actions (Actions automatisées).

    Si vous ne disposez pas de licence pour le rôle ArcGIS Workflow Manager Server Advanced ou de privilèges suffisants, vous ne pouvez pas configurer d’actions automatisées.

  6. Dans la section Webhook Job Creation (Création d’une tâche de webhook), cliquez sur Add Webhook (Ajouter un webhook).

    La boîte de dialogue Create Webhook (Créer un webhook) s’affiche.

  7. Spécifiez un nom pour le webhook dans la zone de texte Name (Nom).
  8. Spécifiez un nom d'utilisateur et un mot de passe dans les zones de texte Username (Nom d’utilisateur) et Password (Mot de passe) pour créer les informations d’identification du webhook entrant.

    Vous pouvez également utiliser une expression ArcGIS Arcade dans les zones de texte Username (Nom d’utilisateur) et Password (Mot de passe) pour alimenter de manière dynamique ces valeurs à l'aide de paramètres chiffrés définis par l'utilisateur.

    Attention :

    Les informations que vous spécifiez dans les zones de texte Username (Nom d’utilisateur) et Password (Mot de passe) ne sont pas chiffrées. Il est recommandé de créer des paramètres chiffrés définis par l'utilisateur pour stocker de manière sécurisée les informations d’identification des webhooks.

    Conseil :

    Cliquez sur le bouton This input supports Arcade Expressions (Cette entrée prend en charge les expressions Arcade) This input supports Arcade expressions et sélectionnez une expression ArcGIS Arcade pour l'ajouter à la zone de texte associée.

  9. Vous pouvez également activer Fallback Username and Password (Nom d’utilisateur et mot de passe de secours) et indiquer un ensemble d’identifiants de connexion de secours dans les zones de texte Fallback Username (Nom d’utilisateur de secours) et Fallback Password (Mot de passe de secours).

    Vous pouvez également utiliser une expression ArcGIS Arcade dans les zones de texte Username (Nom d’utilisateur) et Password (Mot de passe) pour alimenter de manière dynamique ces valeurs à l'aide de paramètres chiffrés définis par l'utilisateur.

    Attention :

    Les informations que vous spécifiez dans les zones de texte Fallback Username (Nom d’utilisateur de secours) et Fallback Password (Mot de passe de secours) ne sont pas chiffrées. Il est recommandé de créer des paramètres chiffrés définis par l’utilisateur pour stocker de manière sécurisée les identifiants de connexion des webhooks.

  10. Sélectionnez une méthode d’authentification dans la section Header Security (Sécurité d’en-tête) :
    Remarque :

    Les webhooks de service d’entités entrants doivent utiliser la méthode d’authentification ArcGIS Webhook (Webhook ArcGIS).

    • Simple : valide une requête entrante en faisant correspondre l’en-tête défini et le secret.

      Spécifiez des valeurs d’authentification dans les zones de texte Header Name (Nom de l’en-tête) et Value (Valeur).

    • ArcGIS Webhook (Webhook ArcGIS) : valide une requête entrante en faisant correspondre une fonction de hachage générée à partir d’une clé secrète partagée.

      Indiquez une valeur dans la zone de texte Secret.

  11. Cliquez éventuellement sur l'onglet Payload (Charge utile) et activez Attach Response (Joindre une réponse) pour enregistrer la charge utile du webhook entrant en tant que fichier et joindre ce dernier à la tâche.
  12. Si vous le souhaitez, procédez comme indiqué ci-après pour configurer le nom de la pièce jointe et le dossier dans lequel elle sera stockée :
    1. Indiquez le nom du dossier dans lequel la pièce jointe sera stockée dans la zone de texte Folder Name (Nom du dossier).

      Le nom du dossier ne peut pas contenir de chemin du système de fichiers et de caractères spéciaux. Un dossier nommé General est automatiquement créé si aucun nom de dossier n’est fourni.

      Remarque :

      Ce dossier se trouve dans l’élément de processus et ne correspond pas à un chemin du système de fichiers.

    2. Sélectionnez l’une des options Attachment Name (Nom de la pièce jointe) suivantes :
      • Autogenerated (Généré automatiquement) : nomme automatiquement la pièce jointe avec la syntaxe suivante : <NomÉtape>_<DateExécution>_<HeureExécution>.
      • Custom (Personnalisé) : permet d’indiquer un nom de pièce jointe personnalisé.
  13. Vous pouvez suivre les étapes ci-après pour analyser la charge utile du webhook entrant et configurer des valeurs en sortie personnalisées :
    1. Si la source du webhook entrant est un webhook de service d’entités, vous pouvez éventuellement sélectionner Extract Changes (Extraire les modifications) pour utiliser les modifications extraites dans vos valeurs en sortie.
    2. Cliquez sur le bouton bascule Test Mode (Mode test) dans la section Output Values (Valeurs en sortie).
    3. Collez un exemple de la charge utile du webhook entrant dans la zone de texte Sample Response (Exemple de réponse).

      Exemple de charge utile au format JSON :

      {"spatialReference": {
        "wkid": 4326,
        "latestWkid": 4326
      },
      "location": [
        {
          "name": "380 New York Street",
          "extent": {
            "xmin": -117.196701,
            "ymin": 34.055489
          }
        }
      ]}
    4. Cliquez sur Add Output & Path (Ajouter une sortie et un chemin).
    5. Indiquez un nom pour la valeur en sortie dans la zone de texte Output Value (Valeur en sortie).

      Il s’agit du nom de valeur utilisé pour l’obtention de la valeur en sortie personnalisée.

    6. Indiquez une expression JSONPath en notation par points ou en notation par crochets pour la valeur que vous souhaitez stocker dans la zone de texte Extraction Path (Chemin d’extraction).

      Exemple d’expression JSONPath en notation par points :

      $location.0.name

      Exemple d’expression JSONPath en notation par crochets :

      $['location'][0]['name']

      La valeur apparaît dans la colonne Sample Result (Exemple de résultat).

    7. Au besoin, répétez les sous-étapes c à f pour ajouter davantage de valeurs en sortie personnalisées.
  14. Cliquez sur Save (Enregistrer).

    Le webhook entrant apparaît dans la section Webhook Job Creation (Création d’une tâche de webhook).

  15. Cliquez sur Save (Enregistrer) pour enregistrer le modèle de tâche.

    Un ID et une URL sont affectés au webhook.

  16. Survolez le webhook et cliquez sur Copy URL (Copier l’URL) Copy Step ID pour copier l’URL du webhook entrant dans le Presse-papiers et la configurer en vue de son utilisation dans l’application.

Mettre à jour un webhook entrant

Pour mettre à jour un webhook entrant, procédez comme suit :

  1. Accédez à l’application Web Workflow Manager.
  2. Cliquez sur l'onglet Design (Création).

    La page Design (Conception) apparaît.

    Remarque :

    Si vous ne disposez pas de privilèges suffisants, l’onglet Design (Création) n’est pas disponible.

  3. Cliquez sur Job Templates (Modèles de tâche) Job Templates.

    Le panneau Job Templates (Modèles de tâche) apparaît.

  4. Sélectionnez le modèle de tâche qui contient le webhook entrant à mettre à jour.

    Le modèle de tâche apparaît dans le panneau.

  5. Cliquez sur l’onglet Automated Actions (Actions automatisées).

    Si vous ne disposez pas de licence pour le rôle ArcGIS Workflow Manager Server Advanced ou de privilèges suffisants, vous ne pouvez pas configurer d’actions automatisées.

  6. Dans la section Webhook Job Creation (Création d’une tâche de webhook), survolez le webhook entrant à mettre à jour et cliquez sur Edit (Mettre à jour).

    La boîte de dialogue Create Webhook (Créer un webhook) s’affiche.

  7. Mettez à jour les paramètres du webhook entrant comme il convient.
  8. Cliquez sur Enregistrer pour enregistrer les modifications.
  9. Cliquez sur Save (Enregistrer) pour enregistrer le modèle de tâche.

    Le webhook entrant est mis à jour.

Supprimer un webhook entrant

La suppression d’un webhook entrant est définitive et irréversible. Pour supprimer un webhook entrant, procédez comme suit :

  1. Accédez à l’application Web Workflow Manager.
  2. Cliquez sur l'onglet Design (Création).

    La page Design (Conception) apparaît.

    Remarque :

    Si vous ne disposez pas de privilèges suffisants, l’onglet Design (Création) n’est pas disponible.

  3. Cliquez sur Job Templates (Modèles de tâche) Job Templates.

    Le panneau Job Templates (Modèles de tâche) apparaît.

  4. Sélectionnez le modèle de tâche qui contient le webhook entrant à supprimer.

    Le modèle de tâche apparaît dans le panneau.

  5. Cliquez sur l’onglet Automated Actions (Actions automatisées).

    Si vous ne disposez pas de licence pour le rôle ArcGIS Workflow Manager Server Advanced ou de privilèges suffisants, vous ne pouvez pas configurer d’actions automatisées.

  6. Dans la section Webhook Job Creation (Création d’une tâche de webhook), survolez le webhook entrant à supprimer et cliquez sur Delete Webhook (Supprimer un webhook) Delete Webhook.
    Attention :

    Les webhooks entrants supprimés ne peuvent pas être récupérés.

  7. Cliquez sur Save (Enregistrer) pour enregistrer le modèle de tâche.

    Le webhook est supprimé.

Rubriques connexes