Microsoft is giving away 50,000 FREE Microsoft Certification exam vouchers!
Enter the sweepstakes now!Prepping for a Fabric certification exam? Join us for a live prep session with exam experts to learn how to pass the exam. Register now.
My task is to migrate quite a large number of workspaces and reports from the old tenant to the new one.
Is there any option to automate this task? I have already installed Powerbi cmdlets and used this https://powerbi.microsoft.com/en-us/blog/duplicating-workspaces-by-using-power-bi-cmdlets/ for copying reports from workspace to workspace on the same tenant, is there any way to use this for migration between tenants?
Solved! Go to Solution.
Ammm no. But if you read the doc of the library it shows how to login, get token and use the rest api categories (in this case reports and imports).
You should create two tokens, one for each tenant. Then create object reports to export it from a token from tenant 1. Create the second object imports to publish it from token from tenant 2.
Inside those objects there are two requests to use in order to get this:
# Get a json response from the API
response_with_pbix = export_report_in_group(workspace_id_origin, report_id)
# The response has a "Content" attribute with the pbix file. You can use that to import in the new tenant
simple_import_pbix_as_parameter(workspace_id, fileContent, datasetDisplayName)
I hope that helps you understand the idea, it can also be done with requests that specify the local folder to save the file from tenant 1 and the local folder to import the file to tenant 2.
Happy to help!
Hi there. I'm not sure you can do it with cmdlets, but for sure you can with the PowerBi Rest API. I have used SimplePBI (Python lib) for exporting reports with less than 1gb on a variable and publish them back again to another tenant. You can also export them in the local environment and import them to the new tenant.
You can check it here: https://pypi.org/project/SimplePBI/
API Doc: https://learn.microsoft.com/en-us/rest/api/power-bi/
I hope that helps,
Happy to help!
Great, do you have some example code where you exported reports to a variable and published them again?
Ammm no. But if you read the doc of the library it shows how to login, get token and use the rest api categories (in this case reports and imports).
You should create two tokens, one for each tenant. Then create object reports to export it from a token from tenant 1. Create the second object imports to publish it from token from tenant 2.
Inside those objects there are two requests to use in order to get this:
# Get a json response from the API
response_with_pbix = export_report_in_group(workspace_id_origin, report_id)
# The response has a "Content" attribute with the pbix file. You can use that to import in the new tenant
simple_import_pbix_as_parameter(workspace_id, fileContent, datasetDisplayName)
I hope that helps you understand the idea, it can also be done with requests that specify the local folder to save the file from tenant 1 and the local folder to import the file to tenant 2.
Happy to help!
Check out the April 2025 Power BI update to learn about new features.
Explore and share Fabric Notebooks to boost Power BI insights in the new community notebooks gallery.
User | Count |
---|---|
30 | |
27 | |
21 | |
12 | |
12 |