Monitor a Power Automate cloud flow with Verifagent
Power Automate cloud flows fail quietly when a connection expires, a premium action is blocked, or a Recurrence trigger stops. A final HTTP call to Verifagent proves the run finished after the real work — not that it merely started.
Before you start
Create a monitor with your workflow’s real frequency, then copy its URL from the dashboard. Its token is secret: do not publish it.
Setup
Copy the monitor URL (prefer an environment variable)
Create one Verifagent monitor per flow. Match the expected period to the Recurrence interval (or to how often the event-driven flow normally runs). Prefer a Power Platform environment variable (Text or Secret) for the ping URL instead of hard-coding it in the action — especially if the flow lives in a solution you promote across environments.
https://verifagent.com/api/ping/your-ping-tokenAdd an HTTP action at the end (and know the license catch)
In the flow designer, add a new action after the last business step. Search for HTTP and pick the generic HTTP action (Method GET, URI = your ping URL, no authentication). Important: that generic HTTP connector is a premium connector — it needs a Power Automate license that includes premium. The standard “Send an HTTP request to SharePoint / Teams / Outlook …” actions only target Microsoft 365 APIs; they cannot call an external Verifagent URL. There is no clean standard-tier substitute for an arbitrary external GET: if you do not have premium, put the heartbeat in a small Azure Function / custom API your tenant can call with a standard connector, or upgrade the flow owner’s license.
Ping only when previous steps succeeded
Keep the HTTP action on the success path only. Open Configure run after on that action and leave it so it runs when the previous step succeeds (default). Do not place the ping in a parallel branch that always runs, and do not put it before SharePoint writes, approvals, or Dataverse updates you care about. Scheduled (Recurrence) flows are the best fit for a dead man’s switch; event-triggered flows still work if they run on a predictable cadence — otherwise silence may just mean “no events”.
GET https://verifagent.com/api/ping/your-ping-token
# HTTP action (premium)
# Method: GET
# URI: <environment variable or pasted ping URL>
# Authentication: None
# Headers / Body: leave emptyTest the flow once
Use Test / Run flow. The HTTP action should show status 200 and a body like {"ok":true}. Then open the monitor in Verifagent — status becomes Up. Turn the flow Off briefly (or fail an early step) to confirm that no new ping arrives.
{"ok":true}Available routes
The base URL is enough for a heartbeat. Variants enrich history if your platform has several branches.
GET https://YOUR_PING_URLPOST https://YOUR_PING_URL/successPOST https://YOUR_PING_URL/fail?msg=ErrorVerify
A successful Test run creates an immediate ping. Disable the cloud flow or force a failed step before HTTP: Verifagent should open an incident after period + grace with no new signal.
200 {"ok":true}. The monitor moves from Pending to Up.