Power BI Integration¶
To get reports from Power BI as files in the messenger, Easy Report needs the following:
- Azure Active Directory tenant
- Service principal (an officially recommended method to authenticate against Power BI)
- Capacity
We will guide you through all steps below during our call with your screen shared.
1. Register an Azure AD application¶
Registering your application with Azure AD allows you to:
- Establish an identity for Easy Report
- Let Easy Report access the Power BI REST APIs
Here you need to save Client ID, Client secret, and Tenant ID.
!!! Make sure you copy the client secret value when it first appears. After navigating away from this page, the client secret will be hidden and you'll not be able to retrieve its value.
2. Create a Power BI workspace¶
If you already have a workspace, you can skip this step.
Power BI keeps your reports in a workspace. To embed these items, you'll need to create them and upload them into a workspace.
3. Create and publish a Power BI report¶
If you already have a workspace with a report, you can skip this step.
Your next step is to create a report and upload it to your workspace. You can create your own report using Power BI Desktop, and then publish it to your workspace. Or, you can upload a sample report to your workspace.
Here you need to save Workspace ID and Report ID.
4. Get the embedding parameter values¶
To embed your content, you need to obtain certain parameter values:
- Client ID
- Client secret
- Tenant ID
- Workspace ID
- Report ID
5. Service principal API access¶
For an Azure AD app to be able to access the Power BI content and APIs, a Power BI admin needs to enable service principal access in the Power BI admin portal. If you're not the admin of your tenant, get the tenant's admin to enable the Tenant settings for you.
6. Enable workspace access¶
To enable your Azure AD app access objects such as reports in the Power BI service add the service principal as a member or admin to your workspace.
Considerations¶
API endpoints that Easy Report uses:
Power BI API supports only one report filter at the moment (as you can see here).
You need to prepare a table (it could be a simple Excel file or a view in your database, etc.) of possible filters for Easy Report, e.g.
Models/Color | Region/Region | Manager/Name |
---|---|---|
Red | North | John Smith |
Green | East | Muhammad Lee |
Blue | South | |
West |
Easy Report will use this table for end users' filter queries (e.g. "Performance report for the North region")