A recent blog on the Power BI website announced the availability of a preview component in Microsoft Flow, which allows to easily refresh a specific dataset. This is good news, because in reality Azure Logic Apps are under the hood of Flow, so this means the refresh capability is now also available in Logic Apps. Hoozah.
Double good news, because if you wanted to do this previously, you had to do an elaborate work around using a Logic Apps customer connector which calls the Power BI API. I’ve written about this work around here and here. This doesn’t mean however the custom connector is now totally useless, because there are more than 100 (!) actions of the API which aren’t implemented yet in Logic Apps.
Configuring the new Logic Apps action is easy peasy lemon squeezy. You add the action to the canvas first:
You might have to log into Power BI first. Another advantage of this action is that I can use it with my credentials: a Power BI pro user with admin privileges on the workspace. However, with the custom connector you had to be a Power BI admin (which I’m not in our Power BI tenant).
All there’s left to do is select the workgroup and the dataset from the dropdowns:
With the custom connector, you had to enter the GUIDS of both. Yuk. Definitely an improvement! The only downside is currently the action is asynchronous only which means the action immediately succeeds (as in it could call the Power BI API successfully) but you have no idea if the refresh actually succeeded or failed.
I was asked to do a review of the book Microsoft Power BI Performance Best…
This is a quick blog post, mainly so I have the code available if I…
Praise whatever deity you believe in, because it's finally here, a tenant switcher for Microsoft…
This book was making its rounds on social media, and the concept seems interesting enough…
I'm hosting a free webinar at MSSQLTips.com at the 19th of December 2024, 6PM UTC.…
The slides and scripts for my session "Tackling the Gaps & Islands Problem with T-SQL…
View Comments
Can we parameterize this so that same app can be used for any PowerBI?.
Sure. If you have the custom connector, you can for example use the API to fetch the list of all datasets in a workspace. Then you can loop over the results and inside the loop you have the refresh activity.
Thank you Koen, very helpful.
Question, could you elaborate what you mean by "a Power BI pro user with admin privileges on the workspace"? Do I need both Power BI pro license and admin rights on the workspace to use this action?
Rizal
You'll always need a Pro license to do anything in Power BI.
When editing the logic app, you'll need to log into Power BI. To be able to select the workspace and the dataset, you'll need permissions as well.
Power BI dataset refresh status succes or failure status
we have to trigger through mail
Is it possible with
Power BI - Pro license
Power Automate - Free License .
Kindly need help and support - nandha070@gmail.com
Take a look at this article:
https://www.mssqltips.com/sqlservertip/6235/synchronously-refreshing-a-power-bi-dataset-using-azure-logic-apps/
The synchronous part is more advanced because it currently needs a custom logic app connector to connect with the Power BI API. But it also shows how to send an email with a Logic App.
does the limitation of 8 times a day for pro user also applies to logic app refresh ?
You can refresh a logic app as many times as you want (you pay for it though).
But a Power BI Dataset itself can only be refreshed 8 times a day in a Pro workspace.
So if you use a logic app to refresh a Power BI dataset, you'll get an error the 9th time you run the logic app.