Skip to content
home

How to Build an Approval Workflow in Power Automate

Approvals are the most common thing teams automate first, and for good reason: a request that chases itself saves hours of follow-up emails. Here's how to build a solid approval flow on a SharePoint list, the way I build them for clients.

Awokunle WinnerUpdated 1 November 2026 8 min read

What you need

  • A Microsoft 365 account that includes Power Automate (most business plans do).
  • A SharePoint list for the requests, for example 'Purchase requests' with columns Title, Amount, Requested by, Approver and Status.
  • A Status choice column with values such as Pending, Approved and Rejected.

Step 1: Trigger the flow when a request is created

In Power Automate, create an automated cloud flow and choose the SharePoint trigger 'When an item is created'. Pick your site and the requests list.

Every new item now starts the flow, whether it was added in the list, through a Power Apps form or by another flow.

Step 2: Start the approval

Add the action 'Start and wait for an approval'. Choose the approval type:

  • Approve/Reject – First to respond: any one approver can decide.
  • Approve/Reject – Everyone must approve: every assigned approver has to approve.
  • Custom Responses: your own options, such as Approve, Reject or Needs more info.

Fill in the title and details with dynamic content from the list item (requester, amount, a link to the item) so the approver can decide without opening anything else. Set Assigned to from the Approver column.

Step 3: Branch on the outcome

Add a Condition that checks whether the approval's Outcome is equal to Approve.

  • If yes: use 'Update item' to set Status to Approved, then notify the requester.
  • If no: set Status to Rejected and send the requester the approver's comments, which are in the approval's Responses.

Step 4: Notify people where they work

Use 'Send an email (V2)' from Office 365 Outlook, or 'Post message in a chat or channel' from Microsoft Teams. Include the outcome, the comments and a link back to the item.

Step 5: Handle approvals that stall

'Start and wait for an approval' waits until someone responds. To stop requests sitting forever:

  • Open the action's Settings and set a timeout (for example P3D for three days).
  • Add a parallel branch or a 'Configure run after' path for when the approval times out, and escalate to a manager or reassign it.
  • For multi-stage approvals, chain a second approval only when the first is approved, for example finance after the line manager.

Make it production-ready

  1. Run it under a service account, not a person, so it keeps working when staff leave.
  2. Wrap the main steps in a Scope and add a second scope that runs on failure and alerts you.
  3. Store approvers in a list rather than hard-coding emails, so changes don't need a developer.
  4. Test with real data, including rejection and timeout paths, before you announce it.

Built this way, an approval flow runs for years with almost no maintenance.

Want this done for you?

I build this for clients every week. Book a free 30-minute call and I'll tell you exactly what your team needs.

Awokunle Winner · replies within a day

Tell me what's slowing your team down.

Thirty minutes, no cost, no pitch deck. You'll leave knowing exactly what to build and what it should cost.

Book a free 30-min call