Great! You’re building a reusable Power Automate workflow that:
- Sends an HTTP request to SharePoint to get members of a SharePoint security group
- Parses the response
- Loops through each member
- Sends them an email
You’re now asking for a complete reusable reference document or documentation content so you or others can replicate this next time, easily.
📄 Power Automate: Send Email to SharePoint Security Group Members
📘 Use this guide as internal documentation or as a setup reference
🔷 Overview
This Power Automate flow retrieves members of a SharePoint security group (e.g., Site Owners, Site Members) using a Send an HTTP Request to SharePoint action and sends a custom email to each group member.
🔧 Prerequisites
- Access to Power Automate
- Access to SharePoint site (site owner or admin)
- Name of the SharePoint Group (e.g., “BilalDev Owners”)
- Email connection (Outlook or Office 365 Mail)
🧩 Power Automate Flow Steps
✅ Step 1: Trigger
Choose any trigger. For testing, use:
- Manually trigger a flow
✅ Step 2: Send an HTTP Request to SharePoint
Action: Send an HTTP request to SharePoint
Field | Value |
Site Address | https://[tenant].sharepoint.com/sites/[YourSiteName] |
Method | GET |
Uri | _api/web/sitegroups/getbyname(‘Your Group Name’)/users |
Headers | Accept: application/json |
Example:
_api/web/sitegroups/getbyname(‘BilalDev Owners’)/users
✅ Step 3: Parse JSON
Action: Parse JSON
Field | Value |
Content | @body(‘Send_an_HTTP_request_to_SharePoint’) |
Schema | Use this updated schema: |
{
 “type”: “object”,
 “properties”: {
   “value”: {
     “type”: “array”,
     “items”: {
       “type”: “object”,
       “properties”: {
         “Email”: {
           “type”: “string”
         },
         “Title”: {
           “type”: “string”
         },
         “UserPrincipalName”: {
           “type”: “string”
         },
         “LoginName”: {
           “type”: “string”
         }
       }
     }
   }
 }
}
✅ Use body(‘Parse_JSON’)?[‘value’] in the Apply to each step.
✅ Step 4: Apply to Each – Loop Through Members
Action: Apply to each
Field | Value |
Output from previous step | body(‘Parse_JSON’)?[‘value’] |
✅ Step 5: Send an Email to Each Member
Action: Send an Email (V2) (Outlook)
Field | Value |
To | @{items(‘Apply_to_each’)?[‘Email’]} |
Subject | [TEST] Email to SharePoint Group Members |
Body (HTML) | See below |
Is HTML | Yes |
Hello <strong>@{items(‘Apply_to_each’)?[‘Title’]}</strong>,<br><br>
Â
This is a test email sent from Power Automate to confirm that email delivery to SharePoint group members is working.<br><br>
Â
No action is needed.<br><br>
Â
Thanks,<br>
<i>Power Automate Bot</i>
Â




