In most organizations, teams typically have a shared Microsoft 365 Group, such as a department or project group. So, when a new approval process is created in Power Automate, it’s common to assign the approval to that group’s email address.
However, here’s something you need to know: when you send an approval to a Microsoft 365 Group, the approval request goes only to the group mailbox, not to each member’s individual inbox. That means the team members need to open the group mailbox to respond, and sometimes they miss the request completely.
If you want to learn more about Approval and Power Automate, you can also check out our course bundle for a detailed walkthrough.
In this tutorial, I will first show you how to send an approval to a Microsoft 365 Group using Power Automate, and then I will explain how to ensure the approval reaches every group member’s inbox so that no one misses a request again.
Send an Approval to a Microsoft 365 Group in Power Automate
Before creating the flow, you need to create a Microsoft 365 group. For this example, I created a Microsoft 365 Group called Power Automate. For this example, I’ve created a group named “Project Approval Team.“

NOTE:
Make sure the checkbox “Let people outside the organization email this group” is turned on. This setting is required because Power Automate sends approval emails from Microsoft’s domain “flow-noreply@microsoft.com”, which is considered outside your organization. If this option is disabled, the approval request will not be sent to the group mailbox.
Let’s consider a simple scenario:
Whenever a new document is uploaded to a SharePoint library, an approval request should be sent to the Microsoft 365 Group (Project Approval Team) for review and approval before it’s officially published. If any one member gives the response, that will be the final response.
Follow the steps below:
- 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 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: Give the group email address.
- Details:
A new document has been submitted for approval in the Document Approval 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 Condition control action to check the outcome of the approval.
outputs('Start_and_wait_for_an_approval')?['body/outcome'] is equal to Approve

- In the True branch, add the Update file properties action and configure it with the following details:
- Site Address – Enter your SharePoint site address.
- Library Name – Select the document library you’re working with.
- Id – Use the ID from the trigger.
- Status Value – Set this to Approved.
- Approval Date – Use the expression: body(‘Start_and_wait_for_an_approval’)?[‘responses’][0]?[‘responseDate’]
- Comments – Add this expression to record who approved it, their comments, and the approval date:
✔️ Approved By @{body('Start_and_wait_for_an_approval')?['responses'][0]?['responder']?['displayName']}
with @{body('Start_and_wait_for_an_approval')?['responses'][0]?['comments']}
(@{formatDateTime(body('Start_and_wait_for_an_approval')?['responses'][0]?['responseDate'],'dd/MM/yyyy hh:mm:ss tt')})

- In the False branch of the condition (when the outcome is not Approve), add the Update file properties action and configure it as follows:
- Site Address – Enter your SharePoint site address.
- Library Name – Select the document library you’re using.
- Id – Use the ID from the trigger.
- Status Value – Set this to Rejected.
- Approval Date – Use the expression: body(‘Start_and_wait_for_an_approval’)?[‘responses’][0]?[‘responseDate’]
- Comments – Add the following expression to record who rejected it and their comments:
❌ Rejected By @{body('Start_and_wait_for_an_approval')?['responses'][0]?['responder']?['displayName']}
with @{body('Start_and_wait_for_an_approval')?['responses'][0]?['comments']}
(@{formatDateTime(body('Start_and_wait_for_an_approval')?['responses'][0]?['responseDate'],'dd/MM/yyyy hh:mm:ss tt')})

Now it’s time to test and make sure everything works as expected. Go to your SharePoint document library (the one you selected in the trigger). Upload a new document this will automatically trigger your flow.

Wait for a few seconds for Power Automate to send an approval to the approver. To check this, Open Outlook (web or desktop). Go to the Project Approval Team Microsoft 365 Group mailbox. You should see an approval email with the subject.

NOTE:
Only one member of the group needs to respond, as the approval type is set to ‘First to respond’.
This is how you can send an approval request to a Microsoft 365 Group in Power Automate.
Send Approval Requests to Microsoft 365 Group Member Inboxes Using Power Automate
In the above example, you saw that when you send an approval request to a Microsoft 365 Group, it’s delivered only to the group mailbox, not to each member’s personal inbox. That means unless someone opens the group mailbox, the approval might go unnoticed.
To fix this, let’s send the approval request directly to every group member’s inbox using Power Automate.
Follow the steps below:
- 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 the List groups action from the Office 365 Groups Connector to get all the groups.

- We will now filter to find the group that matches your group’s email address (e.g. projectapprovalteam@yourdomain.com). So add a Filter array action and provide the following:
- From: outputs(‘List_groups’)?[‘body/value’]
- Condition:
- Left: item()?[‘mail’]
- Operator: is equal to
- Right: ‘projectapprovalteam@yourdomain.com’

This will give us only the matching group object from the “List groups” output.
- Then, add the Send an HTTP request V2 action form from the Office 365 Groups connector, and provide the following parameters:
- Method: GET
- URI:
https://graph.microsoft.com/v1.0/groups/@{body('Filter_array')?[0]?['id']}/members

- Next, add a Select action to extract all the member email addresses from the response.
- From: body(‘Send_an_HTTP_request_V2’)?[‘value’]
- Map: item()?[‘mail’]

This will create an array containing the email addresses of all group members.
- Now, add the Start and wait for an approval action. Provide parameters below:
- Approval type: Approve/Reject – First to respond
- Title: Document Approval Request: @{triggerOutputs()?[‘body/{FilenameWithExtension}’]}
- Assigned to: @{join(body(‘Select’), ‘;’)}
- Details:
A new document has been submitted for approval in the Document Approval 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 Condition action to check the outcome of the approval.
outputs('Start_and_wait_for_an_approval')?['body/outcome'] is equal to Approve
- In the True section, add the Update file properties action and provide the parameters below:
- Site Address: Provide the site address.
- Library Name: library name.
- Id: Use the ID from the trigger.
- Status Value: Approved
- Approval Date: body(‘Start_and_wait_for_an_approval’)?[‘responses’][0]?[‘responseDate’]
- Comments:
✔️ Appproved By @{body('Start_and_wait_for_an_approval')?['responses'][0]?['responder']?['displayName']
} with @{body('Start_and_wait_for_an_approval')?['responses'][0]?['comments']
} (@{formatDateTime(body('Start_and_wait_for_an_approval')?['responses'][0]?['responseDate'],'dd/MM/yyyy hh:mm:ss tt')})

- In the False branch of the condition (when the outcome is not Approve): Add Update file properties action:
- Site Address: Provide the site address.
- Library Name: library name.
- Id: Use the ID from the trigger.
- Status Value: Rejected
- Approval Date: body(‘Start_and_wait_for_an_approval’)?[‘responses’][0]?[‘responseDate’]
- Comments:
❌ Rejected By @{body('Start_and_wait_for_an_approval')?['responses'][0]?['responder']?['displayName']
} with @{body('Start_and_wait_for_an_approval')?['responses'][0]?['comments']
} (@{formatDateTime(body('Start_and_wait_for_an_approval')?['responses'][0]?['responseDate'],'dd/MM/yyyy hh:mm:ss tt')})

Now that our flow is ready, it’s time to test how it works and confirm that the approval email reaches every member’s inbox, not just the group mailbox.
Go to your SharePoint document library and upload a new file.

After the flow is triggered successfully, it waits for approval. You’ll notice that each member receives the approval request directly in their personal inbox, not just in the shared group mailbox.

Once any group member approves or rejects the document, the approval process is completed immediately (since we used “First to respond”).
After the response is submitted, Power Automate automatically updates the Status, Approval Date, and Comments columns in the SharePoint library.
You may also like:
- Power Automate save email attachment to SharePoint
- Delete all files in a SharePoint folder using Power Automate
- Copy List Items To Another List In SharePoint Using Power Automate
- When an item is created in a SharePoint list send approval

Hey! I’m Bijay Kumar, founder of SPGuides.com and a Microsoft Business Applications MVP (Power Automate, Power Apps). I launched this site in 2020 because I truly enjoy working with SharePoint, Power Platform, and SharePoint Framework (SPFx), and wanted to share that passion through step-by-step tutorials, guides, and training videos. My mission is to help you learn these technologies so you can utilize SharePoint, enhance productivity, and potentially build business solutions along the way.