Last week, while working on a Document Management System, I used the SharePoint library to store the document, and it needed to be reviewed by more than one person.
The requirement was simple: when a file is uploaded, the approval process should start automatically, and multiple people should receive the request.
Here, I didn’t need multi-level approval (one after another). I just needed a multi-approver setup where any approver’s response (Approve or Reject) completes the approval.
In this tutorial, I will show you how to set multiple approvers in Power Automate approval workflow.
Set Multiple Approvers in Power Automate Approval Workflow
For this example, I created a SharePoint document library named Project Documents, where all the files will be uploaded.
In the library, I added the following columns:
- Status – Choice (Approved / Rejected / Pending)
- Comments – Multiple lines of text (optional, to record approver remarks)

Additionally, I created a SharePoint list named Approvals List to track details for each approval. This is a one-time activity, meaning it does not need to be changed every time we upload a file. If you want to change the approver, you can.

Now, follow the steps below to do this:
- Open Power Automate, create an automated cloud flow with a trigger (When a file is created (properties only)). Select your SharePoint site and document library.

- Add an Initialize variable action to store the approver’s email address. Then provide the parameters below:
- Name: varApproverEmail
- Type: String
- Value: leave blank

- Add a Get items action from SharePoint to retrieve all the approvers.
- Site Address: Select your SharePoint site.
- List Name: Select Approvals List.

- Then add a Select action, and in the From field, use the output of the Get items action. In the Map section, click Switch to text mode. Enter the following expression to map the approver email:
item()?['Email']

- Inside the for each action, add the set variable action and select the variable name and form the value, put the following expression:
join(body('Select'),';')

- Add the Start and wait for an approval action. Choose the Approve/Reject – First to respond option and provide the parameters below:
- Title: Document Approval Request: @{triggerOutputs()?[‘body/{FilenameWithExtension}’]}
- Assigned to: Add the variable.
- Details:
A new document has been submitted for approval in the Document Management Register library.
Document Name: @{triggerBody()?['{FilenameWithExtension}']}
Submitted By: @{triggerBody()?['Author/DisplayName']}
Submitted On: @{formatDateTime(triggerOutputs()?['body/Created'], 'dd-MMM-yyyy hh:mm tt')}
You can review the document using the link below:
[Open Document] (@{triggerBody()?['{Link}']})
Kindly review and take appropriate action.
Thank you,
Power Automate Document Approval System

- Add a <