Créer des webhooks

En tant qu’administrateur d’une organisation, vous pouvez configurer des webhooks pour le déploiement ArcGIS Enterprise afin d’être notifié lorsque des événements spécifiques se produisent. Les sections ci-dessous expliquent comment configurer des webhooks d’organisation et de service.

Conditions préalables à la création de webhooks

Tenez compte des points suivants avant de créer des webhooks :

  • Pour utiliser des webhooks d’organisation, l’organisation doit utiliser ArcGIS Enterprise version 10.7 ou ultérieure. Pour utiliser des webhooks de service, une organisation doit utiliser ArcGIS Enterprise version 11.0 ou ultérieure.
  • Pour créer et gérer des webhooks d’organisation, vous devez être administrateur ou être doté du rôle d’administrateur par défaut.
  • Pour créer et gérer des webhooks de service, vous devez soit posséder les privilèges d’administration Security and infrastructure (Sécurité et infrastructure), Update (Mettre à jour) et Delete (Supprimer), soit être doté du rôle d’administrateur ou d’éditeur par défaut.
  • Les récepteurs de webhook doivent être configurés de façon à communiquer via HTTPS. Quelques options sont prises en charge pour les récepteurs, tels que les récepteurs de service Web tiers (Microsoft Power Automate, Zapier et IFFT) et les services Web personnalisés. Pour accéder à des exemples de création de services Web personnalisés ou vous familiariser avec les récepteurs tiers, reportez-vous à la rubrique Référentiel de webhook.
  • Vous pouvez configurer des webhooks pour un service d’entités uniquement si ce dernier inclut la fonctionnalité de mise à jour et bénéficie du suivi des modifications sans la synchronisation.
  • Vous pouvez configurer des webhooks pour un service de géotraitement uniquement si ce dernier est asynchrone.
Remarque :

Dans cette version, les webhooks de service sont des fonctionnalités bêta. Dans la version bêta, ces fonctionnalités peuvent être incomplètes et présenter des problèmes de qualité et de performances connus qui ne sont pas pris en charge par le support technique Esri. La documentation bêta de l’API des webhooks de service est disponible dans le PDF Service webhooks administrator API guide. Pour plus d’informations sur les fonctionnalités bêta dans ArcGIS Enterprise, consultez la rubrique Fonctionnalités bêta.

Créer un webhook d’organisation

Les webhooks d’organisation vous permettent de vous abonner aux déclencheurs d’événement associés avec des éléments, des groupes et des utilisateurs du portail ArcGIS Enterprise.

Remarque :

Pour voir un exemple de requête POST qui crée un webhook autour des événements liés à des utilisateurs, des groupes et des éléments, reportez-vous à la rubrique Créer un webhook dans la documentation de l’API REST.

Pour créer un webhook pour l’organisation, procédez comme suit :

  1. Accédez au répertoire du portail ArcGIS et connectez-vous en tant que membre doté d’un rôle d’administrateur.

    Les webhooks ne peuvent être créés et gérés que par des administrateurs ou des membres dotés du rôle d’administrateur par défaut.

    https://organization.domain.com/context/sharing/rest
    

    Une fois que vous êtes connecté, la page de la ressource User (Utilisateur) du compte apparaît.

  2. Cliquez sur l’hyperlien Org ID (ID d’org) ou créez une requête au format ci-dessous, pour accéder à la page de la ressource Portal Self (Portail Auto) :
    https://organization.domain.com/context/sharing/rest/portals/self
    
  3. Faites défiler la page de la ressource Self (Auto) jusqu’en bas et cliquez sur Webhook > Create Webhook (Créer un webhook) pour accéder à l’opération Create Webhook (Créer un webhook).
  4. Au niveau de l’extrémité Create Webhook (Créer un webhook), indiquez les informations suivantes :
    1. Spécifiez un nom unique pour le webhook dans la zone de texte Name (Nom).
    2. Indiquez l’URL de charge utile du récepteur de webhook dans la zone de texte Payload URL (URL de charge utile), qui sera interrogée à la création du webhook ; cela permet de garantir l’établissement d’une connexion entre le récepteur et le portail ArcGIS Enterprise.

      Voici un exemple d’URL de charge utile :

      https://app.logic.azure.com:443/workflows/b688528a36e246279dc050f936e5ebd4/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=nHP-LBo9x-nSgMi11DSDuwRIUiJr-8yKGCy7OYaT_ow
      
    3. Vous pouvez également définir un secret pour le webhook qui peut être utilisé pour authentifier les messages du webhook auprès du récepteur. Saisissez la chaîne alphanumérique définie par l’utilisateur dans la zone de texte Secret (Optional) (Secret (Facultatif)).
    4. Vous pouvez également spécifier les informations de désactivation du webhook dans la zone de texte Configuration Properties (Propriétés de configuration).

      Par défaut, le webhook se désactive si 5 échecs se produisent en 5 jours.

    5. Sous Which events would you like to trigger this webhook (Événements déclencheurs de ce webhook), sélectionnez Let me define manually (Me laisser définir manuellement) ou Send me everything (Tout envoyer).
      • Si vous optez pour Let me define manually (Me laisser définir manuellement), répertoriez les événements déclencheurs utilisés pour ce webhook dans la zone de texte Send me changes for these comma separated events (Envoyer les modifications de ces événements séparés par des virgules). Par exemple, pour vous abonner à tous les événements liés à un groupe spécifique dans l’organisation, indiquez un événement déclencheur similaire à celui indiqué ci-dessous, où [groupID] représente l’ID unique associé à un groupe spécifique :
        /groups/[groupID]/update
        
        Pour afficher la liste de tous les déclencheurs d’événement des webhooks d’organisation, reportez-vous à la rubrique Déclencheurs d’événement.
      • Si vous sélectionnez Send me everything (Tout envoyer), vous vous abonnez à tous les événements déclencheurs pris en charge. Vous recevez alors des notifications pour chaque événement lorsqu’il se produit.
  5. Une fois les paramètres ci-dessus configurés, cliquez sur Create Webhook (Créer un webhook) pour soumettre la requête.

    Une fois l’opération terminée, un nouveau webhook est ajouté à l’organisation.

Configurer les paramètres avancés des webhooks d’organisation

Les paramètres avancés appliqués aux webhooks de l’organisation vous permettent de personnaliser davantage les performances des webhooks, en spécifiant par exemple le nombre de tentatives de livraison, l’heure de notification et la durée entre les tentatives de livraison.

Remarque :

Pour voir un exemple de requête POST qui configure ces propriétés avancées, reportez-vous à la rubrique Mettre à jour les paramètres de webhook dans la documentation de l’API REST.

Pour définir ces propriétés avancées, procédez comme suit :

  1. Accédez au répertoire du portail ArcGIS et connectez-vous en tant que membre doté d’un rôle d’administrateur. Les webhooks ne peuvent être créés et gérés que par des administrateurs ou des membres dotés du rôle d’administrateur par défaut.
    https://organization.domain.com/context/sharing/rest
    

    Une fois que vous êtes connecté, la page de la ressource User (Utilisateur) du compte apparaît.

  2. Cliquez sur l’hyperlien Org ID (ID d’org) ou créez une requête au format ci-dessous, pour accéder à la page de la ressource Portal Self (Portail Auto) :
    https://organization.domain.com/context/sharing/rest/portals/self
    
  3. Faites défiler la page de la ressource Self (Auto) jusqu’en bas et cliquez sur Webhook > Settings (Paramètres) > Update (Mettre à jour) pour accéder à l’opération Update Webhook Settings (Mettre à jour les paramètres des webhooks).
  4. Au niveau de l’extrémité Update Webhook Settings (Mettre à jour les paramètres des webhooks), indiquez les informations suivantes :
    1. Définissez une valeur pour Number of Notification Attempts (Nombre de tentatives de notification).

      Cette valeur indique le nombre de tentatives de livraison des charges utiles des webhooks. Par défaut, le portail ArcGIS Enterprise effectue trois tentatives de livraison des charges utiles. La valeur des tentatives doit être un entier compris entre 0 et 5.

    2. Définissez une valeur pour Notification Time Out in Seconds (Délai d’expiration des notifications en secondes).

      Cette valeur indique la durée, en secondes, pendant laquelle le portail ArcGIS Enterprise attend une réponse de la part d’un récepteur. Par défaut, le portail ArcGIS Enterprise attend pendant 10 secondes. La valeur de la durée d’attente du portail ArcGIS Enterprise doit être un entier compris entre 0 et 60.

    3. Définissez une valeur pour Notification Elapsed Time in Seconds (Temps écoulé des notifications en secondes).

      Cette valeur indique la durée écoulée, en secondes, entre chaque tentative de livraison de charge utile. Par défaut, le portail ArcGIS Enterprise tente de livrer une autre charge utile au bout de 5 secondes en cas d’échec de la tentative précédente, jusqu’à ce que le nombre de tentatives spécifié dans Number of Notification Attempts (Nombre de tentatives de notification) soit atteint.

  5. Une fois les paramètres ci-dessus configurés, cliquez sur Update Webhook Settings (Mettre à jour les paramètres des webhooks) pour soumettre la requête.

    Une fois l’opération terminée, les propriétés mises à jour sont appliquées à tous les webhooks d’organisation configurés.

Créer un webhook de service de géotraitement

Les webhooks de service de géotraitement vous permettent de vous abonner à des déclencheurs d’événements spécifiques associés aux services de géotraitement.

Remarque :

Pour avoir un exemple de requête POST qui crée un webhook pour des services de géotraitement, reportez-vous à la documentation bêta de l’API REST de webhook dans le PDF Service webhooks administrator API guide.

Pour créer un webhook pour un service de géotraitement, procédez comme suit :

  1. Accédez au répertoire du site administrateur de ArcGIS Enterprise et connectez-vous en tant que membre doté des privilèges d’administration appropriés.

    Les webhooks ne peuvent être créés et gérés que par des administrateurs dotés des privilèges d’administration Update (Mettre à jour), Delete (Supprimer), Security and Infrastructure (Sécurité et infrastructure) ou qui possèdent le rôle d’administrateur ou d’éditeur par défaut.

    https://organization.domain.com/context/admin
    
  2. Une fois connecté, accédez à la ressource Webhooks d’un service de géotraitement en cliquant sur Services > [ServiceName] > Webhooks > Create (Créer), où [ServiceName] représente le service pour lequel le webhook est créé. Dans le cas de services hébergés dans des dossiers spécifiques, cliquez sur Services > [FolderName] > [ServiceName] > Webhooks > Create (Créer), où [FolderName] représente le dossier dans lequel se trouve le service.
    Attention :

    Vous pouvez configurer des webhooks pour un service de géotraitement uniquement si ce dernier est asynchrone.

  3. Au niveau de l’extrémité Create Webhook (Créer un webhook), indiquez les informations suivantes :
    1. Spécifiez un nom unique pour le webhook dans la zone de texte Name (Nom). Le nom fourni doit être composé uniquement de valeurs alphanumériques, car les caractères spéciaux génèrent une réponse sous forme d’erreur.
    2. Vous pouvez également définir un secret pour le webhook qui peut être utilisé pour authentifier les messages du webhook auprès du récepteur. Saisissez la chaîne alphanumérique définie par l’utilisateur dans la zone de texte Signature Key (Clé de signature).
    3. IIndiquez l’URL de charge utile du récepteur de webhook dans la zone de texte Hook URL (URL de charge utile), qui sera interrogée à la création du webhook ; cela permet de garantir l’établissement d’une connexion entre le récepteur et l’instance ArcGIS Server du déploiement. Voici un exemple de charge utile :
      https://app.logic.azure.com:443/workflows/b688528a36e246279dc050f936e5ebd4/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=nHP-LBo9x-nSgMi11DSDuwRIUiJr-8yKGCy7OYaT_ow
      
    4. Vous pouvez également indiquer le type de support. Dans le menu déroulant Content Type (Type de contenu), sélectionnez l’une des options suivantes :
      • application/json (par défaut)
      • application/x-www-form-urlencoded
    5. Vous pouvez également définir le format des charges utiles. Dans le menu déroulant Payload Format (Format de charge utile), sélectionnez l’une des options suivantes :
      • JSON (par défaut)
      • PJSON
    6. Vous pouvez également utiliser le paramètre Active (Actif) pour activer ou désactiver les rappels lorsque le webhook est déclenché. Pour les activer, sélectionnez True (Vrai). Pour les désactiver, sélectionnez False (Faux).

      Les rappels sont activés par défaut.

  4. Une fois les paramètres ci-dessus configurés, cliquez sur Create (Créer) pour soumettre la requête.

    Une fois l’opération terminée, un nouveau webhook est appliqué au service de géotraitement spécifique.

Remarque :
Contrairement aux webhooks d’organisation et de service d’entités, les webhooks de service de géotraitement n’ont pas de déclencheurs d’événement définis par l’utilisateur. Les webhooks de service de géotraitement livrent les charges utiles une fois qu’une tâche de géotraitement est exécutée. Pour en savoir plus sur les charges utiles livrées pour les services de géotraitement, reportez-vous à la rubrique Charges utiles.

Créer un webhook de service d’entités

Les webhooks de service d’entités vous permettent de vous abonner à des déclencheurs d’événements spécifiques associés à des services d’entités.

Remarque :

Pour avoir un exemple de requête POST qui crée un webhook pour des services d’entités, reportez-vous à la documentation bêta de l’API REST de webhook dans le PDF Service webhooks administrator API guide.

Pour créer un webhook pour un service d’entités, procédez comme suit :

  1. Accédez au répertoire du site administrateur de ArcGIS Enterprise et connectez-vous en tant que membre doté des privilèges d’administration appropriés.

    Les webhooks ne peuvent être créés et gérés que par des administrateurs dotés des privilèges d’administration Update (Mettre à jour), Delete (Supprimer), Security and Infrastructure (Sécurité et infrastructure) ou qui possèdent le rôle d’administrateur ou d’éditeur par défaut.

    https://organization.domain.com/context/admin
    
  2. Une fois connecté, accédez à la ressource Webhooks d’un service d’entités en cliquant sur Services > [ServiceName] > Webhooks > Create (Créer), où [ServiceName] représente le service pour lequel le webhook est créé. Dans le cas de services hébergés dans des dossiers spécifiques, cliquez sur Services > [FolderName] > [ServiceName] > Webhooks > Create (Créer), où [FolderName] représente le dossier dans lequel se trouve le service.
    Attention :

    Vous pouvez configurer des webhooks pour un service d’entités uniquement si ce dernier inclut la fonctionnalité de mise à jour et bénéficie du suivi des modifications sans la synchronisation.

  3. Au niveau de l’extrémité Create Webhook (Créer un webhook), indiquez les informations suivantes :
    1. Spécifiez un nom unique pour le webhook dans la zone de texte Name (Nom). Le nom fourni doit être composé uniquement de valeurs alphanumériques, car les caractères spéciaux génèrent une réponse sous forme d’erreur.
    2. Répertoriez les déclencheurs d’événement qui seront utilisés par ce webhook dans la zone de texte Change Type (Type de modification). Par exemple, pour appeler le webhook lorsqu’un service d’entités est créé, utilisez le déclencheur d’événement suivant :

      Exemple

      FeaturesCreated
      
      Pour afficher la liste des déclencheurs d’événement pris en charge pour les webhooks de service d’entités, reportez-vous à la rubrique Déclencheurs d’événement.
    3. Vous pouvez également définir un secret pour le webhook qui peut être utilisé pour authentifier les messages du webhook auprès du récepteur. Saisissez la chaîne alphanumérique définie par l’utilisateur dans la zone de texte Signature Key (Clé de signature).
    4. IIndiquez l’URL de charge utile du récepteur de webhook dans la zone de texte Hook URL (URL de charge utile), qui sera interrogée à la création du webhook ; cela permet de garantir l’établissement d’une connexion entre le récepteur et l’instance ArcGIS Server du déploiement. Voici un exemple de charge utile :
      https://app.logic.azure.com:443/workflows/b688528a36e246279dc050f936e5ebd4/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=nHP-LBo9x-nSgMi11DSDuwRIUiJr-8yKGCy7OYaT_ow
      
    5. Vous pouvez également indiquer le type de support. Dans le menu déroulant Content Type (Type de contenu), sélectionnez l’une des options suivantes :
      • application/json (par défaut)
      • application/x-www-form-urlencoded
    6. Vous pouvez également définir le format des charges utiles. Dans le menu déroulant Payload Format (Format de charge utile), sélectionnez l’une des options suivantes :
      • JSON (par défaut)
      • PJSON
    7. Vous pouvez également utiliser le paramètre Active (Actif) pour activer ou désactiver les rappels lorsque le webhook est déclenché. Pour les activer, sélectionnez True (Vrai). Pour les désactiver, sélectionnez False (Faux).

      Les rappels sont activés par défaut.

    8. Ajustez la planification des webhooks en modifiant les informations Seconds (Secondes) dans la zone de texte Schedule (Planifier). Dans le cas de services d’entités fréquemment mis à jour, diminuez la valeur de Seconds (Secondes) pour recevoir des webhooks plus fréquents, mais avec moins d’informations d’événement dans la charge utile. Dans le cas de services d’entités qui ne sont pas modifiés fréquemment, augmentez la valeur de la propriété Seconds (Secondes) pour recevoir des webhooks moins fréquents, mais avec davantage d’informations dans la charge utile.

      La valeur minimale et par défaut de la planification est de 20 secondes.

  4. Une fois les paramètres ci-dessus configurés, cliquez sur Create (Créer) pour soumettre la requête.

    Une fois l’opération terminée, un nouveau webhook est appliqué au service d’entités spécifique.