Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
adam22
New Member

How To Obtain Report ID of RDL/Paginated Report that's embedded inside PowerBI Report?

 

Hi All.

 

How Do we get the ReportID of a Paginated Report from a Power BI Report ID?

 

Explanation:

With the new(ish) PowerBI RDL/Paginated report visual, you can embed a power bi paginated report inside a PowerBI report.

adam22_0-1637942927778.png

 

Now, in NOVEMBER 2021 - we can use this feature in App Owns Data/Customer Owns Data mode of embedding.

https://powerbi.microsoft.com/en-gb/blog/power-bi-november-2021-feature-summary/#post-17912-_Toc8747...

(Support embedding a Power BI report that contains a paginated report visual)

 

Great... except. we need to know the ReportID of the RDL/Paginated Report, but, as a software application, we only have the POWER BI Report ID.

 

adam22_1-1637943604864.png

 

Existing GetReport API Doesn't give the 'linked RDL Reports' https://docs.microsoft.com/en-us/rest/api/power-bi/reports/get-report 

 

 

 

 

 

 

{
  "datasetId": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
  "id": "5b218778-e7a5-4d73-8187-f10824047715",
  "name": "SalesMarketing",
  "webUrl": "https://app.powerbi.com//reports/5b218778-e7a5-4d73-8187-f10824047715",
  "embedUrl": "https://app.powerbi.com/reportEmbed?reportId=5b218778-e7a5-4d73-8187-f10824047715"
}

 

 

 

 

 

 

So, Where/How Do we get the ID of an RDL file from a Report?

 

Please help.

 

I'm not asking how to generate the token, I know that part, but I'm asking how to obtain the information needed to generate the token. I can follow this then Generate an EmbedToken for a Power BI report with a paginated visual. The paginated Report ID "(f904...

 

 

 

 

 

 

 

1 ACCEPTED SOLUTION

Hi @adam22 embedding a PBIX report which contains an RDL visual is relatively a new feature in Power BI, and as far as I know there isn't a way currently for retrieving the RDL report ID programatically.

From what I heard such ability might be added in the future, but I don't know how and when.

View solution in original post

5 REPLIES 5
v-shex-msft
Community Support
Community Support

HI @adam22,

I think this feature means the embed token function can work with both two types of resources at the same time.

For the paginated report id, you can open it to check the report id(it should show on the URL) or try to use the 'get reports in group' API to list all the contents to find out the corresponding report id.

Reports - Get Reports In Group - REST API (Power BI Power BI REST APIs) | Microsoft Docs

Regards,

Xiaoxin Sheng

Community Support Team _ Xiaoxin
If this post helps, please consider accept as solution to help other members find it more quickly.

Hi, thanks for your reply.

 

Yes I understand I could get ALL the RDL Report Ids from that call. That's the call we use for the Admins to choose what reports show on what dashboard in our application.

 

However, there is no way of knowing which RDL Report is referenced from/is inside which PBIX Report. As such, we'd have to create a security access token to EVERY RDL Report in the workspace.

 

We can't go creating an access token for user's for every RDL report in a workspace, they could end up getting access to reports they should not see.

 

 

Below is a diagram that I hope explains the problem, we have no way of obtaining the items with the RED X through APIs. [apart from as you say, getting ALL the RDL report ids, which is a security risk surely]

 

adam22_0-1648632923508.png

 

Please help 🙂

 

Hi @adam22 embedding a PBIX report which contains an RDL visual is relatively a new feature in Power BI, and as far as I know there isn't a way currently for retrieving the RDL report ID programatically.

From what I heard such ability might be added in the future, but I don't know how and when.

Hi @AmosHersch thanks for getting back to me so quickly.

 

Great, at least you've confirmed my understanding, so we're on the same page 🙂

 

How/where can I get this logged as a Feature/Bug (interesting, it's a bug in the design of the combination of all the APIs, not so much an individual thing).

 

Right now, the 'new' feature of embedding an RDL inside a PBIX can not be used completely securely in the 'app owns data' method.

 

I suppose, to summarise this as a bug we would write.

 

Steps:

  1. Create PBIX Report with embedded RDL Report 
  2. Using the Get Reports in Group API  (https://docs.microsoft.com/en-us/rest/api/power-bi/reports/get-reports-in-group) - obtain the GUIDS/Report IDs of the PBIX Report we want to show to the user - we then 'save' this value against this user for his/her dashboard/access level.
  3. Use Generate a Token API (https://docs.microsoft.com/en-us/rest/api/power-bi/embed-token/generate-token#generate-an-embedtoken... , passing in the Datasets/PBIX Ids. Additionally, the PBIX 'may' contain an embedded RDL file, so re-use Get Reports in Group API, pass in the workspace ID, filter by Report Type, obtain the IDs of ALL the RDL Files. in the workspace.

 

Expected Result

The generated Token will provide access to exactly the one PBIX report and just the RDL Reports that are contained within it.

 

Actual Result

The generated Token will provide access to exactly the one PBIX report and ALL the RDL Reports in the same Workspace, regardless of their relationship with the PBIX.

 

Suggested Solution

Update Get Report API (https://docs.microsoft.com/en-us/rest/api/power-bi/reports/get-report) to also include a 'linked reports' or 'embedded reports' or 'additional resource ids' or 'dependant report ids' section.

 

This would be used just before generating the Access Token, to obtain the embedded reports. Then the Access Token request will only contain the Datasets/PBIX IDs and the RDL IDs that are embedded within it.

 

 

 

 

so sad, the issue is still not resolved in 2023

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.