πŸ”₯ 7 Powerful Steps to Build a Power Automate Approval flow for Reliable Document Review

Power Automate Approval flow is one of the most effective ways to automate document review processes inside SharePoint. In this detailed tutorial, you will create a complete approval system that collects multiple approvers, sends automated approval requests, supports several approval types, stores responses and comments, and updates status directly inside SharePoint.

This guide is perfect for workflow designers, SharePoint users, and anyone aiming to build a scalable Power Automate Approval flow.

Power Automate Approval flow

πŸš€ What You Will Learn

Using this Power Automate Approval flow, you’ll be able to:

  • Trigger approvals directly from a selected file
  • Dynamically load approvers from metadata
  • Use five approval types
  • Collect and format approval comments
  • Save responses into SharePoint columns
  • Automatically calculate Approved or Rejected status

🧱 Step 1: Prepare SharePoint Library for Power Automate Approval flow

To begin, create a new SharePoint Document Library named:

πŸ“ Documents for Approval

Then add the following columns:

🏷️ Required Columns

Column NameTypeSettings
ApproversPersonAllow multiple selections
Approval ResponsesMultiple lines of text
Approval CommentsMultiple lines of text
StatusChoiceAdd “Approved”, “Rejected”, “Pending” as Choices

These fields will store everything captured through the Power Automate Approval flow.

⚑ Step 2: Add Trigger – For a selected file

Now create a new cloud flow.

  1. Go toΒ make.powerautomate.com
  2. SelectΒ Create > cloud flow
  3. Name your flow:Β Approval Flow
  4. SelectΒ For a selected fileΒ as the trigger
  5. ClickΒ Create

🟦 Trigger: For a selected file (SharePoint)

Configure the trigger parameters as shown below.

  • Site Address: Your site URL
  • Library Name: Documents for Approval
Trigger: For a selected file (SharePoint)

πŸ“Œ This lets you start the approval from the menu of each file.

πŸ“„ Step 3: Add Action – Get File Properties

Configure the action parameters as shown below:

  • Site Address: SharePoint site URL
  • Library Name: Documents for Approval
  • Id: Select ID from trigger
    Sometimes the dynamic content inserts an incorrect ID. Make sure the expression is exactly:
    triggerBody()?['entity']['ID']
    You can verify it by hovering your mouse over the field and checking the tooltip.
Action - Get File Properties

This retrieves the approvers, file metadata, name, and link required later.

πŸ‘₯ Step 4: Add Action – Select

Extract approver emails using the Select action. We only need their email addresses.

Configure the action parameters as shown below:

  • From: Approvers (from Get file properties)
  • Map: First, switch it to text mode by clicking the icon next to Map.
    Value: Choose Approvers Emails
Action - Select

πŸ”‘ This prepares the list of emails required for the approval assignment.


πŸ“¨ Step 5: Add Action – Start and Wait for an Approval

Configure the action parameters as shown below:

  • Approval type: Approve/Reject – Everyone must approve
  • Title: Please check this file for approval
  • Assigned to:
    Switch to dynamic content mode and paste the following expression:

    @{join(body('Select'),';')}

    This expression retrieves all emails from the previous Select action and separates them with semicolons.
    Note:
    • If you paste it directly into the field, include the @ and curly brackets.
    • If you paste it in the Expression textbox, remove the @ and curly brackets.
  • Details: Add File Name + text like β€œfor Approval”
  • Item link: Use Link to item from Get file properties
Action - Start and Wait for an Approval

This builds the core engine of your Power Automate Approval flow.


🎯 Quick Overview of All Approval Types in Power Automate

  • πŸ’Ό Approve/Reject – Everyone must approve: Flow ends only when all approvers answer. One rejection = rejected.
  • ⚑ Approve/Reject – First one to respond: Stops immediately after the first response.
  • πŸ“ Custom Responses – Wait for all responses: Use custom buttons like Yes, No, Needs More Work.
  • πŸŽ›οΈ Custom Responses – Wait for one response: Uses custom buttons but stops at the first response.
  • πŸ”— Sequential Approval: Sends one by one in order.

All these modes can be used inside a Power Automate Approval flow depending on requirements.


πŸ’¬ Step 6: Add Action – Select (Another One)

Add another Select action to capture and format approval comments.

Configure the action parameters as shown below:

  • From: Select Responses
  • Map: Switch to text mode
    Value: Copy the following expression (remember the @ and curly brackets if pasting directly into the field, as noted above):
    @{concat(item()?['responder']?['displayName'],':',item()?['comments'])}

This creates formatted lines like:

Sarah Khan:Looks good to me
John Ali:Please update page 2

Perfect for summarizing feedback inside your Power Automate Approval flow.


🏁 Step 7: Add action – Update File Properties

Configure the action parameters as shown below:

  • Site Address: Your site URL
  • Library: Documents for Approval
  • Id: Use the ID from the trigger, or you can also use the ID from the Get file properties action.

Open Advanced Parameters and fill:

  • Approval Responses: Select Response Summary
  • Approval Comments: copy expression given below

    @{join(body('Select_1'),decodeUriComponent('%0A'))}

    This places comments on separate lines.
  • Status Value: copy expression given below

    @{if(equals(indexOf(outputs('Start_and_wait_for_an_approval')?['body/outcome'],'Reject'),-1),'Approved','Rejected')}

    βœ” If no one rejected β†’ Approved
    βœ– If any rejection β†’ Rejected
action - Update File Properties

That completes your automatic status calculation.


🏁 Test the flow

Go to your SharePoint document library.

  • Upload a file.
  • Add approvers.
  • Right-click the file β†’ Automate β†’ Flows β†’ Select the name of your flow.
Test the flow

🧰 Bonus: Approval Action Additional Settings

Inside the Start and Wait for an Approval action’s Advanced options, you can enable:

πŸ™‹ Requestor: Shows who requested the approval.

πŸ”” Enable Notifications: Sends Teams and email alerts.

πŸ”„ Enable Reassignment: Approvers can forward the request.

πŸ“Ž Attachments: Include attached documents within approvals.

These enhancements make the Power Automate Approval flow more user friendly and professional.


πŸŽ‰ Result

Your final flow will:

✨ Trigger from a selected file
✨ Dynamically assign multiple approvers
✨ Use any approval type
✨ Collect formatted comments
✨ Log responses in SharePoint
✨ Automatically calculate Approved or Rejected

You now have a fully functional Power Automate Approval flow.


πŸ“ˆ Bonus Resources You May Like

Leave a Comment