The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends September 15. Request your voucher.
Hi;
I'm using the Rest API Call : POST https://api.powerbi.com/v1.0/myorg/groups/{groupId}/reports/{reportId}/ExportTo.
I can successfully export a pdf report if the data is stored in PowerBI.
When I try to export a report to PDF that uses Analysis Service as it's Data Source
I then get the following Error : Export report requires effective identity to be provided for the report's data set.
What I have set up :
1. Premier Workspace where the PowerBI report is published
2. Followed the instructions to create a service principal and add it to power bi : https://docs.microsoft.com/en-us/power-bi/developer/embedded/embed-service-principal
3. The Service Principal has been added to the Azure Analysis Service Server as an Administrator
4. The Service Principal has been added to the Azure Analysis Service Database to a Role that has admin rights
5. Generate a Oauth Token :
grant_type:client_credentials
client_id: {My Client ID Generated in step 1}
client_secret:{Client Secret Generated in Step 1}
scope:openid
resource:https://analysis.windows.net/powerbi/api
6. Use the token received to call the Rest API Post Action : https://api.powerbi.com/v1.0/myorg/groups/{groupId}/reports/{reportId}/ExportTo
Is there something else that needs to be done in order to allow the generation of the pdf when the data set is from a analysis service database ?
Thanks in Advance
Solved! Go to Solution.
Hi;
Just an update on the solution.
It seems to pass the effective identity one needs to add the following into the body :
{
"format": "pdf",
"powerBIReportConfiguration": {
"identities": [
{
"username": "{ ServicePrincipal Object ID }",
"roles": [
"{Role in AAS}"
],
"datasets": [
"{datasetID}"
]
}
]
}
}
*Just also note as per the MS documentation that one needs to pass in the Service Principal object id and not the service ServicePrincipal app id
Hi;
Just an update on the solution.
It seems to pass the effective identity one needs to add the following into the body :
{
"format": "pdf",
"powerBIReportConfiguration": {
"identities": [
{
"username": "{ ServicePrincipal Object ID }",
"roles": [
"{Role in AAS}"
],
"datasets": [
"{datasetID}"
]
}
]
}
}
*Just also note as per the MS documentation that one needs to pass in the Service Principal object id and not the service ServicePrincipal app id
User | Count |
---|---|
3 | |
3 | |
2 | |
2 | |
2 |
User | Count |
---|---|
9 | |
7 | |
6 | |
5 | |
4 |