Power Automate monitoring for the flow that quietly stopped.

Power Automate already tells you about some failures. Robovue adds the flows that never ran, an alert to your team within a minute of a run failing, and your flows side by side with every other bot.

Power AutomateOne HTTP action in each flow

Your flows this morning

Example
  • Invoice approvalsExpected 06:00Didn’t run
  • Timesheet remindersSucceeded at 06:30On time
  • New starter setupFailed at 07:15Failed
  • Email to your team · 06:05Invoice approvals didn’t run at 06:00.
  • Slack on the Team plan, #rpa-alerts · 06:05Invoice approvals (Power Automate) didn’t run.
An example morning: each flow reports its own runs, and the 06:00 flow that never ran reaches your team.

What Robovue watches

An HTTP action at the end of the flow reports each run. What the flow sends is what Robovue knows, so you choose the detail.

  • Successes and failures. One HTTP action reports a success; a second, set to run after a failed or timed-out step, reports the failure.
  • Flows that don’t run. Give the flow a schedule and Robovue says “Didn’t run” when its time passes with no report, whatever stopped it.
  • Your own detail. Add an invoice number, the step that failed or an error message, and it’s on the run’s page and in the alert.
  • An owner for every flow. Each flow is a bot with its owner, tags and a credential expiry date, next to your UiPath, Automation Anywhere and custom bots.

Connect it in three steps

No code. The HTTP action is a Premium connector, so the flow’s owner needs a Power Automate Premium licence.

  1. Open Power Automate in Connections

    Start free and your URI and Power Automate key are waiting there. The key can report runs and nothing else, so it’s safe in a flow other makers can open.

  2. Add an HTTP action to the flow

    Record the start time at the beginning of the flow, then add the HTTP action as its last step, with the flow run’s own id as the delivery id so a retried action records the run once. The app gives you the body to paste.

  3. Run the flow once

    The Power Automate page shows the request arrive, or says exactly why it was turned away. To check everything without recording a run, add the dry-run header first.

ExampleWhat step 3 shows in the app

After a dry run

A dry run passed every check in the last 24 hours.

Nothing was stored. Send a run without the dry-run header to record one.

Once a run has reported

Connected. The last run was recorded at 06:30.

The request your flow sends

Every response code and limit is in the app’s reference once you’ve signed up.

POST https://app.robovue.co.uk/ingest/{tenantId}/power-automate

The same report from a Power Automate HTTP action. An API key replaces the signature because a flow can’t compute one; platform is always recorded as power-automate.

Headers

Content-Type Required

application/json

The body is JSON. A charset parameter is fine.

X-Robovue-Api-Key Required

your Power Automate key

The Power Automate key from the Power Automate section of your Connect page. It can report runs and nothing else, so it’s safe in a flow definition others can open. The Management API key is not accepted here.

X-Robovue-Delivery-Id Required

1–200 printable ASCII characters, no spaces

Unique to this run. Sending it again — a retry, or the Success/Failure that ends a Running run — updates or confirms the same run instead of creating a second one. A GUID, or your bot’s own run id, both work.

X-Robovue-Dry-Run Optional

true

Checks the request exactly as a real one — authentication, every field, the delivery id, your plan’s bot limit — and stores nothing. The response says what would have happened. Use it to test an integration without creating runs. Any other value, or no header, is an ordinary request.

Body

A JSON object with the fields below — the same as a run report without platform.

botId string, up to 200 characters Required

Your name for the bot. Every run with the same botId is the same bot on your dashboard. Spaces and punctuation are fine; not / or \, no spaces at either end, and no tabs or line breaks. The same id registers and manages the bot through the Management API.

For example invoice-bot-01

status string Required

How the run went. Running reports a run that has started and not finished yet; send the same delivery id again with Success or Failure when it ends. Values are case-sensitive.

One of Success Failure Running

For example Success

startedAt timestamp Required

When the run started, as an RFC 3339 timestamp with a time zone offset — Z for UTC or ±hh:mm, e.g. 2026-07-17T09:00:00Z. Not before 2000, and not more than an hour ahead of Robovue’s clock. Unix times aren’t accepted.

For example 2026-07-17T09:00:00Z

completedAt timestamp Sometimes

Required when status is Success or Failure; leave it out when status is Running

When the run finished. Same format and limits as startedAt, and not before it.

For example 2026-07-17T09:01:30Z

failureCategory string Optional

Only with status Failure

Why the run failed, if your bot can tell. Leave it out if not — it becomes Uncategorized and can be changed later on the run’s page. Values are case-sensitive.

One of Uncategorized BusinessException ApplicationException Timeout AuthenticationError Cancelled

For example ApplicationException

payload object Optional

Anything that will help you debug the run later — an invoice number, the step that failed, a stack trace. Must be a JSON object; it’s stored as sent and shown on the run’s page. A top-level error, errorMessage or message string becomes the summary in the failure alert. Counts toward the 64 KB request limit.

For example { "invoiceId": "INV-2291", "error": "Timed out waiting for the vendor portal" }

Know the 06:00 flow ran, before anyone asks.

No card and no sales call. Your URI and key are ready the moment you sign up.