- Open API
- Présentation de l'API Automation Hub
- Références d'API
- Générer votre jeton depuis Automation Hub
- Authentification à l’API Automation Hub
- Ajouter des utilisateurs en masse à Automation Hub à l’aide d’OpenAPI
- Modifier en bloc des utilisateurs dans Automation Hub à l’aide d’OpenAPI
- Récupérer l’idée d’automatisation en phase de génération d’idée, statut En attente de révision (Awaiting Review)
- Récupérer l’analyse coûts-avantages d’une idée
- Mettre à jour la phase et le statut de l’idée d’automatisation
- Récupérer un compte utilisateur
- Mettre à jour les détails du compte des employés depuis Automation Hub
- Désactiver les comptes d’utilisateurs qui ne font pas partie de la société
- Entrée de l'ensemble des automatisations
- Entrée du type de soumission
- Entrée de la phase
- Entrée du statut
- Entrée de la mise à jour de la phase et du statut
- Entrée du département
- Entrée des applications
- Entrée de la catégorie
- Entrée de l’analyse coûts-avantages
- Entrée de l’évaluation de haut niveau
- Entrée de l’évaluation détaillée
- Entrée de la date de création de l’idée d’automatisation
- Entrée des utilisateurs
- Entrée du statut de l’utilisateur
- Table des statuts utilisateur
- Contribution des collaborateurs
- Dictionnaire de sortie
- Automation Hub - Appli ouverte - Analyse des données des requête
Guide de l'API Automation Hub
Automation Hub - Appli ouverte - Analyse des données des requête
L'analyse des données de l'API Automation Hub peut parfois s'avérer difficile, surtout si vous consolidez un rapport très complexe.
Vous trouverez dans cette page quelques conseils et astuces qui peuvent être utilisés pour améliorer le processus global d'analyse des données. La page contient :
- Les étapes à suivre, avec des références à la documentation d'Ouvrir l'API (Open API) et de Power Query.
- Un exemple de fichier dans lequel vous pouvez suivre les étapes directement dans Power Query.
Procédez comme suit pour configurer la requête principale :
- Accédez à Power BI ou Excel et appuyez sur Obtenir les données (Get Data), puis sélectionnez À partir du web (From Web).
- Dans la nouvelle fenêtre, appuyez sur Avancé (Advanced).
- Vous devez ajouter les données Ouvrir l'API (Open API) correspondantes pour établir la connexion.
- Commencez par ajouter le point de terminaison (par exemple, GET Automation Pipeline).
- Ensuite, les en-têtes
- Ajoutez le jeton d'authentification dans les en-têtes.
- Assurez-vous d'ajouter le mot Porteur (Bearer) avant d'insérer la valeur du jeton.
- Cliquez sur Connexion (Connect).
Vous devriez désormais obtenir la réponse JSON d'Ouvrir l'API (Open API) dans Power BI. De plus, vous devez approfondir les données avant d'enregistrer la table en procédant comme suit :
- Développez l'objet de données.
- Puis, développez l'objet du processus.
- Vous pouvez maintenant convertir les données en table, ce qui permettra d'obtenir une seule colonne avec tous les enregistrements.
- Développez cette colonne pour obtenir tous les enregistrements disponibles dans le fichier JSON ; vous pouvez choisir de tous les récupérer ou récupérer seulement une partie d'entre eux.
- Une fois le développement terminé, assurez-vous de vérifier toutes les colonnes, car certaines d’entre elles contiennent des enregistrements imbriqués que vous devez développer.
- Passez en revue chaque colonne pour vous assurer que les données sont correctes. Vous pouvez également formater certaines des colonnes comme vous le souhaitez.
- Si vos données semblent correctes, appuyez sur Enregistrer et fermer (Save and Close) et attendez que les données se chargent.
- Vous pouvez désormais commencer à créer votre tableau de bord/rapport.
Utilisation de la pagination pour obtenir dynamiquement tous les éléments des requêtes Ouvrir l'API (Open API)
Commencez par une requête simple dans laquelle vous n'utilisez aucun paramètre de limite ; vous obtiendrez, par défaut, une réponse avec le nombre d'éléments par défaut (20), puis suivez les étapes ci-dessous :
- Explorez le champ totalPages.
- Cliquez sur le bouton Fonction (Function), votre formule devrait se transformer en =totalPages.
- Insérez la formule suivante
=List.Numbers(1,totalPages,1)
. - Une liste contenant tous les numéros de page disponibles dans la réponse de l'API est générée.
Cette liste est dynamique et se base sur le nombre de pages obtenues par la réponse. Ainsi, si vous actualisez la requête API et que vous avez de nouvelles données (une nouvelle page), elle sera automatiquement ajoutée à la liste. Continuez en procédant comme suit :
- Transformez la liste en table.
- Changez le nom de la colonne en Page et le type de données en Texte (Text).
- Créez une colonne personnalisée.
- Ajoutez la requête suivante dans la formule de la colonne :
let
Source = Json.Document(Web.Contents(" https://{yourDomain}/automationhub_/api/v1/openapi/automationpipeline?pre=all&page="&[Page], [Headers=[#"Content-Type"="application/json", #"x-ah-openapi-app-key"="test", #"x-ah-openapi-auth"="openapi-token", Authorization="Bearer xxxxxx"]])),
data = Source[data],
processes = data[processes]
in
processes
let
Source = Json.Document(Web.Contents(" https://{yourDomain}/automationhub_/api/v1/openapi/automationpipeline?pre=all&page="&[Page], [Headers=[#"Content-Type"="application/json", #"x-ah-openapi-app-key"="test", #"x-ah-openapi-auth"="openapi-token", Authorization="Bearer xxxxxx"]])),
data = Source[data],
processes = data[processes]
in
processes
La requête ci-dessus obtient les données de l'Ensemble des automatisations (Automation Pipeline) et utilise le paramètre Page (que nous obtenons dynamiquement dans la liste) pour obtenir le contenu de toutes les pages disponibles. Vous disposez désormais de tous les éléments disponibles dans la réponse, quel que soit le nombre de pages renvoyées par l'API.
Analyse d'une requête différente (GET Automations) pour extraire les champs Description et Application
L'analyse de l'application (délimitée par des virgules) s'effectue en suivant les étapes suivantes :
- Dans l'éditeur de requête, accédez à la colonne dans laquelle se trouvent vos applications et cliquez sur Développer (Expand) pour voir de nouvelles lignes.
- Appuyez à nouveau sur Développer (Expand) et sélectionnez les métadonnées de l'application que vous souhaitez extraire, telles que le nom de l'application.
- Dans l'onglet Accueil/Ruban (Home Tab/Ribbon), cliquez sur Regrouper par (Group by).
-
Dans la fenêtre Regrouper par (Group by), sélectionnez :
- Le regroupement doit se faire par la colonne ID du processus (Process ID), car l'ID est unique.
- Le nouveau nom de colonne doit ressembler à « applications agrégées ».
- Opération : Somme (Sum)
- Colonne : la colonne que vous avez développée pour les applications (dans l'exemple ci-dessus, il s'agit de Column.1applications.applications_name).
- Après avoir appuyé sur OK, vous obtiendrez une erreur, car la fonction Somme (Sum) ne peut pas fonctionner avec des entrées de texte.
- Accédez à la barre de formule et remplacez List.Sum par Text.Combine comme fonctions.
-
De plus, dans la formule, après le nom de la colonne des applications, ajoutez un délimiteur pour vos entrées de texte ; par exemple « , »
Voici à quoi ressemble la formule avant et après la modification :
Avant la modification
Après la modification
= Table.Group(#"Expanded Column1.applications1", {"Column1.process_id
= Table.Group(#"Expanded Column1.applications1", {"Column1.process_id
- Appuyez sur Enregistrer (Save) et jetez un œil aux entrées de la colonne :
Mêmes étapes que pour la description, mais comme la description est un champ de texte où nous devons séparer les différents paragraphes, nous utiliserons un séparateur différent dans la formule « #(lf) ».
Avant la modification |
Après la modification |
---|---|
|
|
Analyse d'une requête différente (GET Automations) pour extraire des questions personnalisées/des questions de l'Évaluation de haut niveau (High Level Assessment)
Commencez à partir d'une nouvelle requête pour GET Automations (vous pouvez utiliser celle avec la pagination présentée ci-dessus) et suivez les étapes ci-dessous :
-
Développez les colonnes suivantes :
- ID du processus
- Advanced_Information ou Évaluation de haut niveau (High Level Assessment) (les deux fonctionnent de la même manière, mais pour ce tutoriel, nous travaillerons avec la colonne advanced_information)
- Développez à nouveau la colonne pour obtenir les champs de questions.
-
Développez à nouveau la colonne pour obtenir les champs suivants.
- Question_text
- Answer_text
- Question_response_answers
- Développez Question_response_answers et extrayez response_choice_text.
- Combinez les colonnes Texte de la réponse (Answer Text) et Response_choice_text en une seule colonne à l'aide de la formule.
if [AnswerText] is null then [AnswerChoice.response_choice_text] else [AnswerText]
.
Cela s'applique toujours, car vous pouvez avoir soit une réponse textuelle, soit un choix de réponse (jamais les deux). Continuez le processus en suivant les étapes ci-dessous :
- Vérifiez et supprimez toutes les entrées nulles de la colonne Question.
- Utilisez une colonne de tableau croisé dynamique pour transposer toutes les données actuelles des colonnes Question et réponse (Question and Answer) en lignes.
- Sélectionnez la colonne Question et cliquez sur la colonne Tableau croisé dynamique (Pivot) dans le menu Transformer (Transform).
- Sélectionnez la colonne des réponses comme colonne de valeurs.
- Sélectionnez Ne pas agréger (Don't aggregate) comme Fonction de la valeur agrégée (Aggregate Value Function) et cliquez sur OK.
Toutes les idées ont désormais une colonne correspondante représentant les questions personnalisées et leurs valeurs correspondantes.
Fusion des requêtes (depuis GET Automations) vers votre requête principale (GET Automation Pipeline)
Pour fusionner deux requêtes différentes dans Power BI, regardez comment cela se fait généralement dans Power Query. Puis, vous pouvez commencer par la requête Ensemble des automatisations (Automation Pipeline) et la fusionner avec la requête Obtenir les automatisations (Get Automations).
- De cette façon, vous développerez les colonnes disponibles dans Obtenir l'ensemble des automatisations (Get Automation Pipeline) avec celles dans Obtenir les automatisations (Get Automations).
- Vous devez utiliser l'ID du processus (Process ID) pour fusionner les requêtes, car il s'agit à la fois de l'identifiant unique et de la clé commune entre toutes les requêtes.
Vous trouverez ci-dessous une démonstration vidéo des étapes décrites dans cet article.
Dans cette vidéo :
26:35 - Fusion des requêtes (depuis GET Automations) vers votre requête principale (GET Automation Pipeline)
L'exemple de fichier utilisé dans la vidéo peut être téléchargé ici.
- Configuration de la requête principale (pour GET Automation Pipeline)
- Utilisation de la pagination pour obtenir dynamiquement tous les éléments des requêtes Ouvrir l'API (Open API)
- Analyse d'une requête différente (GET Automations) pour extraire les champs Description et Application
- Analyse de la description (délimitée par paragraphe)
- Analyse d'une requête différente (GET Automations) pour extraire des questions personnalisées/des questions de l'Évaluation de haut niveau (High Level Assessment)
- Fusion des requêtes (depuis GET Automations) vers votre requête principale (GET Automation Pipeline)
- Démonstration de l'analyse de Power Query de l'API Automation Hub