
Announcements
You're absolutely right in observing that the "Run After" configuration in Power Automate only checks whether the refresh request was successfully sent, not whether the semantic model actually refreshed successfully. This is a known limitation when working with Power BI semantic models.
To reliably detect whether a semantic model refresh succeeded or failed, you can use the Power BI REST API:
Use the POST /refreshes endpoint:
This initiates the refresh asynchronously.
Use the GET /refreshes endpoint to check the status:
This returns the latest refresh attempt, including:
status: Completed, Failed, or UnknownstartTime, endTimeserviceExceptionJson (if failed)You can then use a condition in Power Automate to send a notification if the status is "Failed".
Delay action.Parse JSON.status = "Failed" → Send email notification.To use the Power BI REST API:
Dataset.ReadWrite.All permissions.If you're using Microsoft Fabric Data Pipelines, you can also integrate refresh status checks directly into the pipeline using web activities.