Créer un workflow qui appelle une API externe - Data360_Govern - Dernière

Aide Data360 Govern

Product type
Logiciels
Portfolio
Verify
Product family
Data360
Product
Precisely Data Integrity Suite > Govern
Data360 Govern
Version
Dernière
Language
Français
Product name
Data360 Govern
Title
Aide Data360 Govern
Copyright
2024
First publish date
2014

Vous pouvez utiliser l’activité de workflow Requête HTTP pour envoyer une requête à un système externe lorsqu’une action spécifique se produit dans Data360 Govern.

L’exemple suivant décrit comment créer un workflow qui se connecte à l’API Jira pour créer un ticket Jira lorsqu’un utilisateur signale un problème de qualité des données dans Data360 Govern :

Étape Description
Étape 1 - Construire le workflow

Utilisez l’éditeur de workflow pour construire votre workflow.

Étape 2 - Configurer l’activité Requête HTTP

Configurez l’activité Requête HTTP pour envoyer une requête POST à Jira afin de créer un ticket.

Étape 3 - Configurer les transitions conditionnelles

Utilisez des transitions conditionnelles pour déterminer quel e-mail (échec ou réussite) est envoyé à l’initiateur du workflow.

Étape 4 - Configurer les activités Notification par e-mail

Configurez le workflow pour qu’il envoie un e-mail informant l’initiateur du résultat de la requête HTTP.

Étape 5 - Ajouter une tâche de réponse HTTP Une tâche de réponse HTTP peut être ajoutée au workflow pour permettre aux étapes suivantes d’extraire les propriétés basées sur JSON de l’API.

Étape 1 - Construire le workflow

Cet exemple suppose que vous avez déjà créé un type d’action sur lequel vous souhaitez baser le workflow. Pour plus d’informations sur les types d’action, reportez-vous à Définir des types d’action.

  1. Accédez à Configuration > Workflows.
  2. Cliquez sur le bouton Ajouter dans le panneau Types de workflows pour créer un workflow.
  3. Entrez un nom pour le workflow, par exemple, « Créaction du ticket Jira ».
  4. Dans la liste Modifier le type, sélectionnez Élément ajouté.
  5. Dans la liste Type d’objet, sélectionnez votre type d’action de qualité des données, par exemple Type d’action :: signaler un problème de qualité des données.
  6. Cliquez sur Suivant.
  7. Construisez le workflow en faisant glisser les activités requises de la gauche de l’écran vers la zone de modification du workflow. Par exemple :

    Workflow de requête HTTP

Conseil : Pour plus d’informations sur la création d’un workflow qui déclenché lorsqu’un utilisateur signale un problème, reportez-vous à Créer un workflow de type d’action.

Étape 2 - Configurer l’activité Requête HTTP

Configurez l’activité Requête HTTP pour envoyer une requête POST à Jira afin de créer un ticket.

Les paramètres exacts requis pour configurer l’activité Requête HTTP varient en fonction de l’API externe à laquelle vous vous connectez. L’exemple suivant montre comment configurer cette activité de workflow pour se connecter à l’API Jira.

  1. Sélectionnez l’activité Requête HTTP dans le workflow que vous avez créé à l’étape précédente.
  2. Ajoutez la requête En-têtes :
    Clé Valeur
    Autorisation De base <base64 encoded email address:API key>
    Content-Type application/json

    Vous pouvez également utiliser un jeton de workflow dans le champ Valeur de l’en-tête. Il ne peut cependant pas être utilisé dans le champ Clé. Pour inclure un jeton, effectuez l’une des actions suivantes :

    • L’entrer manuellement.
    • Le copier à partir d’un autre endroit et le coller dans le champ Valeur.

    Lorsque le workflow s’exécute, les jetons sont remplacés par leur valeur.

    Pour créer votre valeur d’en-tête Autorisation : combinez l’adresse e-mail que vous utilisez pour vous connecter à Jira avec votre clé d’API Jira, au format suivant :<email_address>:<API_key>. Ensuite, chiffrez cette valeur par base64. Prenez la valeur codée en base64 et ajoutez-la à la colonne de la valeur de l’en-tête Autorisation, précédée des mots Basic et d’une espace, par exemple :

    Basic FG5vYmxlQGluZm7mbXguY30uOmD5S3QoEjAnejKLUYpWZ2Y1enlvPLMxOQ==

    Pour obtenir des informations sur l’obtention de votre clé d’API Jira, consultez la documentation Jira, par exemple : https://confluence.atlassian.com/cloud/api-tokens-938839638.html

    Remarque : Si vous utilisez l’un des en-têtes Contenu suivants, vous devez également spécifier une valeur dans le champ Corps : « Content-Type », « Content-MD5 », « Content-Encoding » et « Content-Length ». Si vous utilisez l’un de ces en-têtes sans aucune valeur Corps, l’étape du workflow Requête HTTP ne sera pas terminée.
  3. Sélectionnez la méthode. Choisissez parmi : GET, POST, PUT ou DELETE. Dans ce cas, sélectionnez POST.
  4. Entrez l’URL du point de terminaison d’API externe, par exemple : https://example.atlassian.net/rest/api/2/issue
    Conseil : Vous pouvez utiliser les jetons Ajout de la valeur du champ dans l’URL en copiant et en collant la valeur à partir du champ Corps. Reportez-vous à Configurer des notifications par e-mail pour les exemples de jeton.
  5. Entrez la requête Corps. Par exemple, pour créer un ticket dans Jira, vous pouvez utiliser JSON pour référencer la clé et les champs du projet Jira :
    {   "fields": {       "project":       {         "key": "TEST"       },       "summary": "Data quality issue",       "description": "A data quality issue has been raised in Data360 Govern.",       "issuetype": {         "name": "Bug"       }   } }

    Ainsi, un nouveau bug Jira est créé dans le projet « TEST », avec un résumé et une description qui correspondent aux informations incluses dans le corps de la requête :

  6. Définissez la période Délai d’attente de requête requise, jusqu’à un maximum de 600 secondes. La valeur par défaut est 90 secondes.

Pour plus d’informations sur le déploiement de cet exemple, consultez la documentation Jira, par exemple : https://developer.atlassian.com/server/jira/platform/jira-rest-api-examples/

Étape 3 - Configurer les transitions conditionnelles

Utilisez des transitions conditionnelles pour déterminer quel e-mail (échec ou réussite) est envoyé à l’initiateur du workflow.

Conseil : Si vous ne vous êtes pas encore familiarisé avec les transitions de workflow, reportez-vous à Transitions.
  1. Sur la transition menant à la réussite de l’activité Notification par e-mail, ajoutez la condition suivante :
    Champ Opérateur Valeur
    Requête HTTP :: code de statut < 299

    Cette option spécifie qu’un e-mail indiquant que la requête HTTP a abouti sera envoyé si le code de statut de la réponse HTTP est inférieur à 299.

  2. Sur la transition menant à l’échec de l’activité Notification par e-mail, ajoutez la condition suivante :
    Champ Opérateur Valeur
    Requête HTTP :: code de statut > 299

    Cette option spécifie qu’un e-mail indiquant que la requête HTTP a échoué sera envoyé si le code de statut de la réponse HTTP est supérieur à 299.

Étape 4 - Configurer les activités Notification par e-mail

  1. Sélectionnez l’activité Notification par e-mail ayant abouti et entrez un nom comme « Réussite de la requête POST ».
  2. Dans Type de destinataire, sélectionnez Initiateur.
  3. Entrez un objet et un corps pour l’e-mail. Par exemple, le corps pourrait être :

    Un ticket Jira a été créé pour suivre un problème de qualité des données. Le code de statut de la réponse HTTP est : [HTTPREQUEST|365|statusCode]Le corps de réponse est : [HTTPREQUEST|365|responseBody]

    Cet exemple utilise les jetons Requête HTTP :: code de statut et Requête HTTP :: corps de réponse, qui seront remplacés par les valeurs de réponse de l’API dans l’e-mail envoyé à l’initiateur, par exemple :

    Réponse HTTP de l’e-mail du workflow

    Dans l’e-mail, le corps de réponse fournit le numéro de ticket du nouveau bug créé dans Jira.

  4. Sélectionnez l’activité Notification par e-mail ayant échoué et entrez un nom comme « Échec de la requête POST ».
  5. Dans Type de destinataire, sélectionnez Initiateur.
  6. Entrez un objet et un corps pour l’e-mail. Par exemple, le corps pourrait être :

    Une erreur s’est produite et a empêché la création d’un ticket Jira. Le code de statut de la réponse HTTP est : [HTTPREQUEST|365|statusCode] Le corps de réponse est : [HTTPREQUEST|365|responseBody]

    Cet exemple utilise les jetons Requête HTTP :: code de statut et Requête HTTP :: corps de réponse, qui seront remplacés par les valeurs de réponse de l’API dans l’e-mail envoyé à l’initiateur, par exemple :

    Réponse HTTP de l’e-mail du workflow

    L’e-mail fournit les détails sur l’erreur dans le corps de réponse ainsi que le code de statut de la réponse, ce qui vous permet de résoudre le problème.

Remarque : La réponse entière sera affichée dans le format renvoyé par l’API, par exemple JSON ou XML.
Conseil : Si vous avez renommé votre activité Requête HTTP, les jetons Requête HTTP :: code de statut et Requête HTTP :: corps de réponse afficheront le nom. Ceci s’avère utile lorsque votre workflow contient plusieurs activités Requête HTTP. Cela s’applique également aux activités Réponse HTTP.

Étape 5 - Ajouter une tâche de réponse HTTP

Une tâche de réponse HTTP peut être ajoutée à un workflow Requête HTTP, pour permettre aux étapes suivantes d’extraire les propriétés basées sur JSON de l’API concernée.

  1. Créez une tâche de workflow Réponse HTTP.

  2. À l’aide de l’onglet Modifier du panneau de l’éditeur de tâches de réponse HTTP, sélectionnez la tâche Requête HTTP appropriée en amont, pour vous connecter à l’entrée.

  3. Sous Sorties, cliquez sur le bouton Ajouter (+) pour afficher les champs de configuration de sortie, puis entrez :

    1. Un nom identifiable de votre choix. Par exemple, « Touche Jira ».
    2. Le chemin d’accès JSON correct et valide.
    Remarque : Si le chemin d’accès n’est pas valide, ou si la réponse ne contient pas la propriété visée par le chemin d’accès (par exemple, en cas d’échec de la requête), la valeur est une chaîne vide.

    Par exemple, si le chemin d’accès JSON est défini sur « clé », la réponse de l’API peut être similaire à ce qui suit :

    {

    "id":"1234",

    "key":"GOV-16569",

    "self":"http://localhost:8080/rest/api/2/issue/1234"

    }

Remarque : N’importe quel nombre de sorties peut être ajouté, mais au moins une est requise.

D’autres étapes du workflow peuvent maintenant utiliser les valeurs de sortie de la réponse. Par exemple, dans les jetons d’e-mail ou dans une étape de changement de champ.

Conseil : Cliquez sur le nom du workflow dans Workflow > Eléments de Workflows, pour afficher les étapes qu’il contient, suivis par « Réponse HTTP » dans le panneau Étapes, pour afficher les noms, chemins d’accès et valeurs de sortie.