Guide informatif: Connexion PowerBI et lister les employés

Jimmy De Santis
Jimmy De Santis
  • Mise à jour

 

Ces étapes fournissent un guide pour connecter Power BI à une API externe, obtenir un jeton d'accès, et utiliser ce jeton pour récupérer des données, telles que la liste des employés. D'autres requêtes sont possibles par contre, vous devrez vous référer à notre documentation pour les terminaisons.

 

Créer un jeton d'accès (Access Token) avec Power Query dans Power BI

  1. Ouvrir Power BI Desktop et accéder à l'Éditeur de requête Power Query:

    • Aller dans Fichier > Obtenir des données > Requête vide.

  2. Ouvrir l'Éditeur avancé et écrire le script M pour la requête:

    • Cliquer sur Éditeur avancé.
    • Écrire le script pour faire une requête à l'URL du service d'authentification de l'API. Cette requête doit inclure le client ID et le secret client
    • (remplacer les valeurs fictives par les vraies valeurs):
      let
      url = "https://api.folkshr.app/oauth/token",
      body = "{""client_id"":""00000"", ""client_secret"":""00000"", ""grant_type"": ""client_credentials"", ""scope"": ""company:""00000"" employees:read balances:read employees:write""}",
      Source = Json.Document(Web.Contents(url, [
      Content = Text.ToBinary(body),
      Headers = [#"Content-Type"="application/json"]
      ])),
      token = Source[access_token]
      in
      token
    • Nommer cette requête, par exemple GetAccessToken.

  3. Exécuter la requête pour obtenir le jeton d'accès:

    • Une fois le script écrit et exécuté, il récupère le jeton d'accès nécessaire pour les requêtes authentifiées.

Récupérer la liste des employés avec le jeton d'accès

  1. Créer une nouvelle requête vide pour la liste des employés:

    • Aller de nouveau dans Fichier > Obtenir des données > Requête vide.
    • Ouvrir Éditeur avancé.
  2. Écrire le script M pour la requête GET:

    • Utiliser le jeton d'accès obtenu dans la requête précédente pour faire une requête GET à l'URL de l'API qui fournit la liste des employés :
      let
      // Retrieve the access token from the "GetAccessToken" query
      accessToken = GetAccessToken,

      // API Endpoint URL
      apiUrl = "https://api.folkshr.app/api/v2/employees?inactive=0&per_page=50",

      // Headers for the GET request
      headers = [
      #"Authorization" = "Bearer " & accessToken,
      #"accept" = "application/json",
      #"X-CSRF-TOKEN" = ""
      ],

      // Make the GET request
      Source = Json.Document(Web.Contents(apiUrl, [Headers=headers])),

      // Access the 'data' list from the response
      // Adjust the path according to the structure of your API response
      employees = Source[data]
      in
      employees
    • Cette requête utilise l'en-tête Authorization avec le jeton pour accéder aux données des employés.
  3. Transformer et charger les données:

    • Une fois la requête exécutée, transformer les données JSON en format tabulaire approprié pour l'analyse dans Power BI.
    • Charger les données transformées dans Power BI pour les visualisations et les rapports.

Notes

  • Visiter notre documentation de référence API pour voir les points de terminaison (endpoints) disponible: https://api.folkshr.app/api/documentation 
  • Envisager la mise en place d'une actualisation programmée si les données doivent être régulièrement mises à jour. Selon la quantité de données vous devrez ajuster la programmation. 
  • Erreur de Référencement des Données : Lors de l'utilisation de requêtes qui se référencent entre elles dans Power BI, vous pourriez rencontrer une erreur liée à la "formule pare-feu" (Firewall). Cela se produit lorsque différentes requêtes accèdent à des sources de données distinctes, et Power BI cherche à maintenir la confidentialité entre ces sources.

    • Aller dans Fichier > Options et paramètres > Options.
    • Dans l'onglet Global , sélectionner Confidentialité.
    • Vous pouvez expérimenter en réglant le niveau de confidentialité en définissant les niveaux de confidentialité pour Ignorer les niveaux de confidentialité. Cette dernière option doit être utilisée avec prudence car elle peut avoir des implications pour la sécurité des données.

⚠️Mise en garde

Les informations et les directives fournies dans cet article sont destinées à offrir une vue d'ensemble générale et à titre indicatif seulement. Bien qu'elles visent à aider les utilisateurs dans leur démarche d'intégration et d'utilisation de Power BI avec des API externes, elles ne remplacent pas la nécessité de consulter un expert en Power BI ou un professionnel ayant une expertise spécifique dans ce domaine.