Hi all, good morning!
Does anyone know if it's possible to create a Flow similar to automatic refresh datasets, but this time refreshing DataFlows?
I want to refresh a dataflow and cascade to dataset as soon as a SharePoint file is updated. Have you heard something related to this?
Thanks in advance and best!
Jimmy
Solved! Go to Solution.
Hi @jimmy-pa,
Update my reply, you can use the http request to update the Power BI dataFlows with Flow, this is the refresh Dataflow API document of PowerBi, I hope it can help you:
https://docs.microsoft.com/en-us/rest/api/power-bi/dataflows/refreshdataflow
If you need any help during create it, please contact with us.
Best Regards,
Community Support Team _ Lin Tu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi @jimmy-pa,
Yes, you can use the Refresh a dataset action in PowerBi connector currently, then create a Recurrence trigger to run the flow:
You can also refer to this blog updated recently:
https://powerbi.microsoft.com/en-us/blog/refresh-your-power-bi-dataset-using-microsoft-flow/
I hope it can help you.
Best Regards,
Community Support Team _ Lin Tu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi @jimmy-pa,
Update my reply, you can use the http request to update the Power BI dataFlows with Flow, this is the refresh Dataflow API document of PowerBi, I hope it can help you:
https://docs.microsoft.com/en-us/rest/api/power-bi/dataflows/refreshdataflow
If you need any help during create it, please contact with us.
Best Regards,
Community Support Team _ Lin Tu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Thank you for this link! I'll need to wrap my head around the API, haha.
On a related note, it would be great to trigger a dataset refresh when a dataflow (or set of dataflows) finish refreshing.
This would give me: SQL > Dataflows > PBIS as one chain of refreshes instead of scheduling dataflows an hour after SQL refreshes start and then dataset refresh to happen an hour after dataflows start.
do you have more details on how to do this http request?
Hello @v-litu-msft
I managed to build a flow with 3 dataflows which refresh, when running with data from the test I can do the refresh without issues, however after about 30 minutes the authentication stops working, is there an easy way to get a lasting auth key or set it as a new variable at the beginning of each flow?
Also, the option for a response seems to exist, however I don't seem to be able to pull this answer in flow
{ "notifyOption": "MailOnCompletion" }
If you have any ideas please let me know!
I was hoping I could trigger the refresh of the dataset upon the receipt of the notification email from the refresh of the dataflow.
I have therefore included the option "MailOnCompletion", as in the screenshot below and as I could infer from the API documentation.
The flow runs fine, the dataflow is refreshed, however, I receive no mail. Yet, I am the creator of the datalfow.
If someone figures out how to make this option work, that would help trigger the secondary flow to refresh the dataset.
Oh, and before someone gets puzzled by the screenshot in my previous post, this action is from a custom connector (see how-to), not the oob one. Yet the question remains the same.
Hi,
did you manage how to run this email notification on Completion?
Regards
No. Still waiting for Microsoft support to provide a solution. I will post their answer here when I get it.
Regarding the MailOnCompletion issue, have you had any response on that yet? I have the same issue in that I don't receive an email despite being the dataflow owner.
Hi togehter,
I finally got it to work this way:
To get the group id just open your workspace (where the dataflow is located) in a browser. The group id is shown between:
https://app.powerbi.com/groups/XXXXXXXXXXX/list/dashboards
To get the dataflow id quickly I used this link:
https://docs.microsoft.com/de-de/rest/api/power-bi/dataflows/getdataflows
The last tricky final thing to do in the flow is under "Show advanced options": You have to select Authentification "Raw" and then copy and paste the authorizitation code from above (yellow) in it (in my case Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx)
The really interesting thing was the mail when completed. I made this prozedure to refresh a dataset and got a mail. But with the dataflow it refreshes but doesn`t send a mail altough it is the correct json like in the Rest-API description.
Best wishes
Marc
Marc,
how did you find the Authorization code to be used in the Authentication section ?
"The last tricky final thing to do in the flow is under "Show advanced options": You have to select Authentification "Raw" and then copy and paste the authorizitation code from above (yellow) in it (in my case Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx)"
You just have to follow the posted link in my description:
https://docs.microsoft.com/en-ie/rest/api/power-bi/dataflows/getdataflows
On the page just click on the green "Try it" field. A new field will pop out and after you are logged in you can see the authorization code under "Request preview":
Request preview
GET https://api.powerbi.com/v1.0/myorg/groups/%7BgroupId%7D/dataflows
Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
thank you. it is working now.
I also discovered that you can call the Power BI API through the "HTTP with Azure AD" connector using the "Invoke an HTTP Request" action. I had to configure the connector like so:
Base Resrouce URL: https://api.powerbi.com
Azure AD Resource URI (Application ID URI): https://analysis.windows.net/powerbi/api
The connector is a premium connector, so you'll need to have one of the paid for licenses. This worked better for us because the regular HTTP action requires you to hardcode the bearer token, and in our situation it's difficult to use a custom connector because our tenant admins use DLP rules to heavily restrict what can run.
Hope that helps someone as it took me a while to track down the Azure AD Resrouce URI.
Awesome! Have looked for this so many hours 🙏 Thank you very much!
Are you using the "HTTP with Azure AD" connector like I described in my last post? If it's configured correctly, it should look like this:
This connector should be able to retain your credentials like other connectors using the standard oAuth2 authentication method. The connector can then use the credentials as long as they're still valid.