While working on my IT Help Desk solution, I created a SharePoint Log list to store important system logs, including Power Automate and Power Apps errors.
Now, my requirement is that whenever a new error item is created in the Log list, an alert email should be automatically sent to the SharePoint site owners.
One simple way is to hardcode the owner’s email addresses directly in the flow. But this is not a good approach because if the site owner changes in the future, we need to manually update the flow again.
Instead, we can dynamically get the Microsoft 365 Group connected to the SharePoint site, extract the group owners using Microsoft Graph, and send the alert email to those owners.
In this tutorial, I will explain how to extract SharePoint Site Owner Email using Power Automate.
Extract SharePoint Site Owner Email Using Power Automate
In this example, I have a Group-connected SharePoint Online site.

My requirement is to dynamically retrieve all SharePoint site owners’ email addresses using Power Automate.
For this, I will create an Instant cloud flow. When I manually run the flow, it connects the Microsoft 365 Group to the SharePoint site, retrieves all group owners, extracts their email addresses, and displays the final result in a Compose action.
Create an Instant Cloud Flow in Power Automate
Now, we will create an Instant cloud flow in Power Automate to extract the site owner email addresses from a Group-connected SharePoint site.
- Open Power Automate, then click on Create from the left navigation. Select Instant cloud flow.
- Enter the flow name as: Get SharePoint Site Owners
- Choose the trigger: Manually trigger a flow
- Then click on Create.

This flow will run manually whenever we want to get the SharePoint site owner’s email addresses.
Get the Microsoft 365 Group ID from the SharePoint Site
Now we need to get the Microsoft 365 Group ID connected to the SharePoint site.
For a Group-connected SharePoint Online site, SharePoint stores the connected Microsoft 365 Group ID in the site properties.
To get this Group ID, add a Send an HTTP request to SharePoint action:
Configure the action as shown below:
| Property | Value |
|---|---|
| Site Address | Select your SharePoint site |
| Method | GET |
| Uri | _api/site?$select=GroupId |
In the Headers section, add the below values:
| Key | Value |
|---|---|
| accept | application/json;odata=verbose |
| content-type | application/json;odata=verbose |

This SharePoint REST API call will return the Microsoft 365 Group ID connected to the SharePoint site.
The Group ID will be available in the expression below:
body('Send_an_HTTP_request_to_SharePoint')?['d']?['GroupId']
This SharePoint REST API call will return the Microsoft 365 Group ID connected to the SharePoint site.
Get Group Owners Using Microsoft Graph
Once we get the Microsoft 365 Group ID, the next step is to get the owners of that group.
For this, we will use Microsoft Graph.
Select the Send an HTTP request V2 action from the Office 365 Groups connector.
Configure the action like this:
| Property | Value |
|---|---|
| Method | GET |
| URI | Graph API URL |
| Content-Type | application/json |
In the URI field, add the URL below:
https://graph.microsoft.com/v1.0/groups/@{body('Send_an_HTTP_request_to_SharePoint')?['d']?['GroupId']}/owners?$select=displayName,mail,userPrincipalName

This Graph API call returns all owners of the Microsoft 365 Group associated with the SharePoint site.
The response will contain an value array. Inside that array, each owner will have properties like:
displayName
mail
userPrincipalName
Extract Owner Email Addresses Using Select Action
Now we need to extract only the email address from the Microsoft Graph response.
For this, add a Select action.
In the From field, select the value output from the Send an HTTP request V2 action.
body('Send_an_HTTP_request_V2')?['value']
In the Map section, switch to text mode and add this expression:
if(empty(item()?['mail']), item()?['userPrincipalName'], item()?['mail'])

This expression checks the mail field first.
If the mail field is available, it will return the mail value.
If the mail field is empty, it will return the userPrincipalName.
This is useful because sometimes Microsoft Graph may return an empty value in the mail property.
Join All Owner Email Addresses
Now we have all owner email addresses in an array format.
To use these emails in an email action or Compose action, we can join them into a single string.
Select the Join data operation.
Configure it like this:
| Property | Value |
|---|---|
| From | Output of Select action |
| Join with | ; |

This will join all owner email addresses into one line.
For example:
owner1@contoso.com;owner2@contoso.com;owner3@contoso.com
Show Site Owner Emails in Compose Action
Now we will show the final result in a Compose action.
Click on New step, search for Compose, and select the Compose data operation.
In the Inputs field, select the output of the Join action.

Now, when you run the flow, the Compose action will show all SharePoint site owner email addresses separated by semicolons.
Example output:
admin@contoso.com;owner@contoso.com
This output can be used later in the flow for sending emails, approvals, Teams notifications, or admin alerts.
Test the Flow
Now save the flow.
Click on Test.
Select Manually and then click Test.
Click on Run flow.
Once the flow runs successfully, open the flow run history and expand the Compose action.

You will see all SharePoint site owner email addresses in the Compose output.
Conclusion
In this tutorial, we learned how to extract site owner email addresses from a Group-connected SharePoint Online site using Power Automate.
We created an Instant cloud flow, used SharePoint REST API to get the connected Microsoft 365 Group ID, then used Microsoft Graph to get the group owners.
After that, we extracted the owner email addresses using the Select action, joined them using the Join action, and finally displayed the result in a Compose action.
You may also like:
- Power Automate saves email attachment to SharePoint
- Delete all files in a SharePoint folder using Power Automate
- Send an Approval to a Microsoft 365 Group in Power Automate
- Send Approval to SharePoint Group Members Using Power Automate
- Copy List Items To Another List In SharePoint Using Power Automate

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.