Comme promis lors d’un précédent article « Utiliser Power BI pour monitorer… Power BI », voici un tutoriel destiné à vous expliquer comment utiliser les API REST de Microsoft Power BI, mais avec la contrainte de l’environnement Report Server. C’est parti !
La documentation Microsoft indique en préambule que « les API REST Power BI fournissent des points de terminaison de service pour l’incorporation, l’administration, la gouvernance et les ressources utilisateur. ».
De quoi parle-t-on ?
Voici d’abord la définition d’une API par la CNIL : « Une API (acronyme de Application Programming Interface) est une interface logicielle qui permet de connecter un logiciel ou un service à un autre logiciel ou service afin
d’échanger des données et/ou des fonctionnalités ».
L’API peut être considérée comme un contrat entre fournisseur et utilisateur d’informations, qui permet de définir le contenu demandé au consommateur (lors de l’appel) et le contenu demandé au fournisseur (la réponse du fournisseur au consommateur d’informations).
Une API REST ce n’est pas seulement du JSON (prononcez d͡ʒeɪsən, et pas ʒi.sɔn, les GI et les DJ vous remercient 😉) en réponse à une requête HTTP.
Une API REST est une API qui respecte les contraintes du style d’architecture REST (Representational State Transfer), à savoir :
- Architecture client-serveur et requêtes http
- Communications stateless, cela signifie que les informations du client ne sont jamais stockées entre les requêtes
- Interface uniforme entre les composants qui permet un transfert standardisé des informations
- Système à couches, invisible pour le client, pour hiérarchiser les types de serveurs impliqués dans la récupération des données.
Les API REST Power BI fournissent des points de terminaison de service pour l’incorporation, l’administration, la gouvernance et les ressources utilisateur.
Microsoft
L’appel aux API REST Power BI
De nombreux tutoriels ont déjà été publiés sur l’appel aux API REST Power BI. Pour résumer :
1. On ajoute le connecteur en déposant ce fichier dans le répertoire des custom connectors ; le connecteur Power BI apparait dès lors dans la liste :
2. On teste l’appel à une API, comme « Get Reports », en utilisant le site de Microsoft pour obtenir un token (il est précédé de « Bearer »)
3. On rédige quelques lignes de code M (un appel à https://login.microsoftonline.com/xxxxxxxxxx/oauth2/token) pour obtenir ce token.
C’est bien joli me direz-vous, je les ai vus ces tutoriels, mais comment faire quand on a opté, non pas pour le Cloud et le service Power BI, mais pour le « on premise » et son Report Server ?
La spécificité de la solution Report Server
Power BI Report Server est un serveur local de rapports avec un portail web dans lequel on affiche et gère les rapports et KPIs.
Power BI Report Server ressemble au service en ligne Power BI, mais avec quelques différences. On ne peut pas faire avec Power BI Report Server tout ce qu’on peut faire avec le service Power BI. Citons pêle-mêle l’absence dans Power BI Report Server des modèles composites, des tableaux de bord, des questions-réponses (snif), du streaming temps réel, des alertes de données… Et cette liste n’est malheureusement pas exhaustive.
Mais… mais alors ?
Bonne nouvelle, je vous rassure : on peut appeler des API REST de Power BI avec le Report Server. Heureusement car vous êtes ici pour ça, non ?
Microsoft indique que l’URL de la requête doit avoir cette structure : {URI-scheme} :// {URI-host} / {resource-path} ? {query-string}
Il vous faudra donc concaténer :
- Le protocole (http/https)
- L’URL de l’hôte (Dossier des rapports sur le Report Server)
- Le chemin de base : /api/v2.0
- Le nom de l’API
- Les paramètres éventuels
Appeler une API REST Power BI avec le Report Server : exemple
Reprenons l’exemple de l’api de lecture des rapports. Avec notre Report Server, il faudra forger l’URL suivante : https://powerbi.masociete.com/reports/api/v2.0/PowerBIReports
On ne tardera donc pas à développer une fonction d’appel à l’API :
Et il sera alors enfantin d’appeler une API :
Conseils de lecture
Je vous donne ce lien vers la documentation Microsoft. Vous trouverez surtout sur le site SwaggerHub une aide précieuse sur l’appel des API REST Power BI disponibles avec le Report Server.
Qu’on ait accès à la base de données de Power BI ou qu’on utilise les API REST (celles du service ou celles du Report Server), les possibilités de monitorer Power BI sont passionnantes, et toutes les informations que vous pourrez extraire vous aideront à améliorer la gestion de votre environnement Power BI.
👉 Retrouvez toute notre actu en temps réel en nous suivant sur LinkedIn 👈
Votre adresse de messagerie est uniquement utilisée par Business & Decision, responsable de traitement, aux fins de traitement de votre demande et d’envoi de toute communication de Business & Decision en relation avec votre demande uniquement. En savoir plus sur la gestion de vos données et vos droits.