Office 365 Groups

Office 365 Groups lets you manage group membership and calendar events in your organization using your Office 365 account. You can perform various actions such as get group roster, add or remove members and create group events.
This connector is available in the following products and regions:
Service | Class | Regions |
---|---|---|
Logic Apps | Standard | All Logic Apps regions |
Power Automate | Standard | All Power Automate regions |
Power Apps | Standard | All Power Apps regions |
Connector Metadata | |
---|---|
Publisher | Microsoft |
Website | https://www.office.com/ |
The When a group member is added or removed trigger can return the same change in subsequent responses due to underlying backend service limitations. Your Power Automate flow or LogicApps application must be prepared for such replays. Please learn more here.
If you see the "Cannot Update a mail-enabled security groups and or distribution list" error, please use the Exchange admin center to manage such groups.
Microsoft Entra ID groups with the attribute "isAssignableToRole" are not supported for now.
Send an HTTP request/Send an HTTP request V2 (Preview) actions. If you get an error similar to:
{ "error": { "code": "Forbidden", "message": "" } }
{ "error": { "code": "Authorization_RequestDenied", "message": "Insufficient privileges to complete the operation." } }
then it could be because this connector has a limited set of scopes. If your scenario requires something more advanced, please use the "HTTP" connector or create a custom connector.
Pagination is needed for queries that return larger lists of results.
- The pagination feature in Power Automate and Logic Apps supports some of the operations in the Office 365 Groups connector.
- Canvas Apps gallery control does not supported automatic pagination for the Office 365 Groups connector. Paging must be implemented manually and cached in a collection.
ListGroupMembers
OnGroupMembershipChange
ListGroups
To implement a paging experience in canvas apps, parse the @odata.nextLink
field to retrieve the $skipToken
value.
Warnung
This field should not be used in Power Automate or Logic Apps. Please only use the @odata.nextLink
and $skipToken
fields in canvas apps.
To load the first page of the data, use the below code in an action property of a logical control (e.g., the page's OnVisible
property or on a button that initiates a search).
/* Call the ListGroups operation and save response to a variable */
Set( var_response, Office365Groups.ListGroups() );
/* Parse the $skipToken value from the @odata.nextLink value in the response */
Set( var_nextLink, Last(Split( var_response.'@odata.nextLink', "=")).Result );
/* Save the response into a collection */
ClearCollect( col_groups, var_response.value );
/* Clear out the previous pages collection */
Clear( col_prevLinksData );
/* Reset page counter to 1 */
Set( var_page, 1 );
/* Update page counter */
Set( var_page, var_page + 1 );
/* Save the last link in a collection */
Collect( col_prevLinksData, {
page: var_page,
link: var_nextLink
} );
/* Get next page response */
Set( var_response, Office365Groups.ListGroups({ '$skiptoken': var_nextLink }));
/* Parse the next page's skiptoken value */
Set( var_nextLink, Last(Split( var_response.'@odata.nextLink', "=" )).Result );
/* Save the page results to the collection */
ClearCollect( col_groups, var_response.value );
Then use the col_groups
collection in the Items
property of a gallery control (or other data set control) to display the loaded list of items.
The connector supports the following authentication types:
Default | Parameters for creating connection. | All regions | Not shareable |
Applicable: All regions
Parameters for creating connection.
This is not shareable connection. If the power app is shared with another user, another user will be prompted to create new connection explicitly.
Name | Calls | Renewal Period |
---|---|---|
API calls per connection | 100 | 60 seconds |
Frequency of trigger polls | 1 | 120 seconds |
Add member to group |
This operation is used to add a member to an O365 group, using a UPN. |
Create a group event (V2) |
This operation is used to create a new event in a group calendar. |
Create a group event [DEPRECATED] |
This action has been deprecated. Please use Create a group event (V2) instead.
|
Delete event (V2) |
This operation deletes an event in a calendar. |
List group members |
This operation returns a list of all members in the given group and their details such as name, title, email, etc. You can query up to 1000 items using Top parameter. In case you need to retrieve more than 1000 values please turn on Settings->Pagination feature and provide Threshold limit. |
List groups |
This operation returns a list of all groups in the organization. |
List groups that I own and belong to |
This operation returns a list of all groups that you own and belong to. |
List my owned groups |
This operation returns a list of all groups that you own. |
List my owned groups (V2) |
This operation returns a list of all groups that you own. |
Remove member from group |
This operation is used to remove a member from an O365 group, using a UPN. |
Send an HTTP request [DEPRECATED] |
This action has been deprecated. Please use Send an HTTP request V2 instead.
|
Send an HTTP request V2 |
Construct a Microsoft Graph REST API request to invoke. There is one segment that is supported: /groups. Learn more: https://docs.microsoft.com/en-us/graph/use-the-api. |
Update a group event |
This operation is used to update a new event in a group calendar. |
This operation is used to add a member to an O365 group, using a UPN.
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
Group Id
|
groupId | True | guid |
Pick a group from the drop down or enter group id. |
User Principal Name
|
userUpn | True | string |
The user principal name (UPN) of the user. |
This operation is used to create a new event in a group calendar.
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
Group Id
|
groupId | True | guid |
Pick a group from the drop down or enter group id. |
Subject
|
subject | True | string |
Title of the event. |
Start Time
|
dateTime | True | date-time |
Start time of the event (example: '2016-11-01T14:30:00'). |
End Time
|
dateTime | True | date-time |
End time of the event (example: '2016-11-01T15:30:00'). |
Body
|
content | html |
Body of the message associated with the event. |
|
Location
|
displayName | string |
Location of the event. |
|
Importance
|
importance | string |
The importance of the event: Low, Normal, or High. |
|
Is All Day
|
isAllDay | boolean |
Set to true if the event lasts all day. |
|
Is Reminder On
|
isReminderOn | boolean |
Set to true if the event has a reminder. |
|
Reminder Start Duration
|
reminderMinutesBeforeStart | integer |
Time in minutes before event start to remind. |
|
Show As
|
showAs | string |
Status to show during the event. |
|
Response Requested
|
responseRequested | boolean |
Set to true if the sender would like a response when the event is accepted or declined. |
Returns
This action has been deprecated. Please use Create a group event (V2) instead.
This operation is used to create a new event in a group calendar.
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
Group Id
|
groupId | True | guid |
Pick a group from the drop down or enter group id. |
Subject
|
subject | True | string |
Title of the event. |
Start Time
|
dateTime | True | date-time |
Start time of the event (example: '2016-11-01T14:30:00'). |
End Time
|
dateTime | True | date-time |
End time of the event (example: '2016-11-01T15:30:00'). |
Body
|
content | string |
Body of the message associated with the event. |
|
Body Content Type
|
contentType | string |
Pick the content type: Text or Html. |
|
Location
|
displayName | string |
Location of the event. |
|
Importance
|
importance | string |
The importance of the event: Low, Normal, or High. |
|
Is All Day
|
isAllDay | boolean |
Set to true if the event lasts all day. |
|
Is Reminder On
|
isReminderOn | boolean |
Set to true if the event has a reminder. |
|
Reminder Start Duration
|
reminderMinutesBeforeStart | integer |
Time in minutes before event start to remind. |
|
Show As
|
showAs | string |
Status to show during the event. |
|
Response Requested
|
responseRequested | boolean |
Set to true if the sender would like a response when the event is accepted or declined. |
Returns
This operation deletes an event in a calendar.
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
Group Id
|
groupId | True | guid |
Pick a group from the drop down or enter group id. |
Id
|
event | True | string |
Select an event |
This operation returns a list of all members in the given group and their details such as name, title, email, etc. You can query up to 1000 items using Top parameter. In case you need to retrieve more than 1000 values please turn on Settings->Pagination feature and provide Threshold limit.
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
Group Id
|
groupId | True | guid |
Pick a group from the drop down or enter group id. |
Top
|
$top | integer |
Number of group members to retrieve (from 1 to 999, default is 100). |
Returns
This operation returns a list of all groups in the organization.
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
Filter rows
|
$filter | string |
Enter an OData style filter expression to limit which rows are listed. |
|
Page size
|
$top | integer |
Sets the page size of results. |
|
Skip token
|
$skiptoken | string |
Token that references the next page of results and is returned in the @odata.nextLink property in the response. |
Returns
- Body
- ListGroups_Response
This operation returns a list of all groups that you own and belong to.
Returns
This operation is used to remove a member from an O365 group, using a UPN.
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
Group Id
|
groupId | True | guid |
Pick a group from the drop down or enter group id. |
User Principal Name
|
userUpn | True | string |
The user principal name (UPN) of the user |
This action has been deprecated. Please use Send an HTTP request V2 instead.
Construct a Microsoft Graph REST API request to invoke. Learn more: https://docs.microsoft.com/en-us/graph/use-the-api
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
URI
|
Uri | True | string |
The full or relative URI. Example: https://graph.microsoft.com/{version}/{resource}. |
Method
|
Method | True | string |
The HTTP method (default is GET). |
Body
|
Body | binary |
The request body content. |
|
Content-Type
|
ContentType | string |
The content-type header for the body (default is application/json). |
|
CustomHeader1
|
CustomHeader1 | string |
Custom header 1. Specify in format: header-name: header-value |
|
CustomHeader2
|
CustomHeader2 | string |
Custom header 2. Specify in format: header-name: header-value |
|
CustomHeader3
|
CustomHeader3 | string |
Custom header 3. Specify in format: header-name: header-value |
|
CustomHeader4
|
CustomHeader4 | string |
Custom header 4. Specify in format: header-name: header-value |
|
CustomHeader5
|
CustomHeader5 | string |
Custom header 5. Specify in format: header-name: header-value |
Returns
- response
- ObjectWithoutType
Construct a Microsoft Graph REST API request to invoke. There is one segment that is supported: /groups. Learn more: https://docs.microsoft.com/en-us/graph/use-the-api.
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
URI
|
Uri | True | string |
The full or relative URI. Example: https://graph.microsoft.com/{version}/{resource}. |
Method
|
Method | True | string |
The HTTP method (default is GET). |
Body
|
Body | binary |
The request body content. |
|
Content-Type
|
ContentType | string |
The content-type header for the body (default is application/json). |
|
CustomHeader1
|
CustomHeader1 | string |
Custom header 1. Specify in format: header-name: header-value |
|
CustomHeader2
|
CustomHeader2 | string |
Custom header 2. Specify in format: header-name: header-value |
|
CustomHeader3
|
CustomHeader3 | string |
Custom header 3. Specify in format: header-name: header-value |
|
CustomHeader4
|
CustomHeader4 | string |
Custom header 4. Specify in format: header-name: header-value |
|
CustomHeader5
|
CustomHeader5 | string |
Custom header 5. Specify in format: header-name: header-value |
Returns
- response
- ObjectWithoutType
This operation is used to update a new event in a group calendar.
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
Group Id
|
groupId | True | guid |
Pick a group from the drop down or enter group id. |
Id
|
event | True | string |
Select an event |
Subject
|
subject | True | string |
Title of the event. |
Start Time
|
dateTime | True | date-time |
Start time of the event (example: '2016-11-01T14:30:00'). |
End Time
|
dateTime | True | date-time |
End time of the event (example: '2016-11-01T15:30:00'). |
Body
|
content | html |
Body of the message associated with the event. |
|
Location
|
displayName | string |
Location of the event. |
|
Importance
|
importance | string |
The importance of the event: Low, Normal, or High. |
|
Is All Day
|
isAllDay | boolean |
Set to true if the event lasts all day. |
|
Is Reminder On
|
isReminderOn | boolean |
Set to true if the event has a reminder. |
|
Reminder Start Duration
|
reminderMinutesBeforeStart | integer |
Time in minutes before event start to remind. |
|
Show As
|
showAs | string |
Status to show during the event. |
|
Response Requested
|
responseRequested | boolean |
Set to true if the sender would like a response when the event is accepted or declined. |
Returns
When a group member is added or removed |
This operation triggers when a member is added to or removed from the given group. |
When there is a new event |
This operation triggers when a new event is added to a group calendar. |
This operation triggers when a member is added to or removed from the given group.
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
Group Id
|
groupId | True | guid |
Pick a group from the drop down or enter group id. |
Returns
Name | Path | Type | Description |
---|---|---|---|
User Id
|
id | string |
Unique id of the user. |
Reason
|
@removed.reason | string |
Reason that caused the user to be removed from the group. |
This operation triggers when a new event is added to a group calendar.
Parameters
Name | Key | Required | Type | Description |
---|---|---|---|---|
Group Id
|
groupId | True | guid |
Pick a group from the drop down or enter group id. |
Returns
Name | Path | Type | Description |
---|---|---|---|
Id
|
id | string |
Unique id of the event. |
Reminder Start Duration
|
reminderMinutesBeforeStart | integer |
The number of minutes before the start of the event the reminder will fire. |
Is Reminder On
|
isReminderOn | boolean |
Set to true if the event has a reminder. |
Subject
|
subject | string |
Title of the event. |
Importance
|
importance | string |
The importance of the event: Low, Normal, or High. |
Is All Day
|
isAllDay | boolean |
Set to true if the event lasts all day. |
Response Requested
|
responseRequested | boolean |
Set to true if the sender would like a response when the event is accepted or declined. |
Show As
|
showAs | string |
Status to show during the event. |
Content Type
|
body.contentType | string |
Body of the message associated with the event. |
Content
|
body.content | string |
Pick the content type: Text or Html. |
Date Time
|
start.dateTime | date-time |
Start time of the event (example: '2016-11-01T14:30:00-07:00'). |
Time Zone
|
start.timeZone | string |
Time zone of the event, specified as a time zone index value (example: 'Pacific Standard Time'). |
Date Time
|
end.dateTime | date-time |
End time of the event (example: '2016-11-01T15:30:00-07:00'). |
Time Zone
|
end.timeZone | string |
Time zone of the event, specified as a time zone index value (example: 'Pacific Standard Time'). |
Name
|
location.displayName | string |
The display name for the location of the event. |
Name | Path | Type | Description |
---|---|---|---|
OData NextLink
|
@odata.nextLink | string |
Only used in Power Apps Canvas to genereate the |
value
|
value | array of object |
value |
User Id
|
value.id | string |
Unique id of the user. |
Display Name
|
value.displayName | string |
User's display name. |
Given Name
|
value.givenName | string |
User's first name. |
Job Title
|
value.jobTitle | string |
User's job title. |
Mail
|
value.mail | string |
User's email address. |
Mobile Phone
|
value.mobilePhone | string |
User's mobile number. |
Office Location
|
value.officeLocation | string |
User's office address. |
Surname
|
value.surname | string |
User's last name. |
User Principal Name
|
value.userPrincipalName | string |
UPN id of the user. |
Name | Path | Type | Description |
---|---|---|---|
value
|
value | array of object |
value |
Classification
|
value.classification | string |
O365 group classification. |
Created Date-Time
|
value.createdDateTime | date-time |
yyyy-MM-ddTHH:mm:ss.fffZ (ISO8601 format, UTC timezone) |
Deleted Date-Time
|
value.deletedDateTime | string |
yyyy-MM-ddTHH:mm:ss.fffZ (ISO8601 format, UTC timezone) |
Description
|
value.description | string |
More information about the group. |
Name
|
value.displayName | string |
O365 group name. |
Group Id
|
value.id | string |
Unique identifier of the group. |
Email
|
value.mail | string |
Email address of the group. |
Mail Enabled
|
value.mailEnabled | boolean |
True if mail is enabled for the group. |
Nickname
|
value.mailNickname | string |
Group nickname. |
On-Premises Last Sync Date-Time
|
value.onPremisesLastSyncDateTime | string |
yyyy-MM-ddTHH:mm:ss.fffZ (ISO8601 format, UTC timezone) |
On-Premises Security Identifier
|
value.onPremisesSecurityIdentifier | string |
The on-premises security identifier. |
On-Premises Sync Enabled
|
value.onPremisesSyncEnabled | string |
True if on-premises sync is enabled for the group. |
Renewed Date-Time
|
value.renewedDateTime | date-time |
yyyy-MM-ddTHH:mm:ss.fffZ (ISO8601 format, UTC timezone) |
Security Enabled
|
value.securityEnabled | boolean |
True if the owner is security enabled. |
Visibility
|
value.visibility | string |
The owner's visibility. |
Name | Path | Type | Description |
---|---|---|---|
value
|
value | array of object |
value |
Classification
|
value.classification | string |
O365 group classification. |
Created Date-Time
|
value.createdDateTime | date-time |
yyyy-MM-ddTHH:mm:ss.fffZ (ISO8601 format, UTC timezone) |
Description
|
value.description | string |
More information about the group. |
Name
|
value.displayName | string |
O365 group name. |
Group Id
|
value.id | string |
Unique identifier of the group. |
Email
|
value.mail | string |
Email address of the group. |
Mail Enabled
|
value.mailEnabled | boolean |
True if mail is enabled for the group. |
Nickname
|
value.mailNickname | string |
Group nickname. |
On-Premises Last Sync Date-Time
|
value.onPremisesLastSyncDateTime | string |
yyyy-MM-ddTHH:mm:ss.fffZ (ISO8601 format, UTC timezone) |
On-Premises Security Identifier
|
value.onPremisesSecurityIdentifier | string |
The on-premises security identifier. |
On-Premises Sync Enabled
|
value.onPremisesSyncEnabled | string |
True if on-premises sync is enabled for the group. |
Renewed Date-Time
|
value.renewedDateTime | date-time |
yyyy-MM-ddTHH:mm:ss.fffZ (ISO8601 format, UTC timezone) |
Security Enabled
|
value.securityEnabled | boolean |
True if the owner is security enabled. |
Visibility
|
value.visibility | string |
The owner's visibility. |
Name | Path | Type | Description |
---|---|---|---|
OData NextLink
|
@odata.nextLink | string |
Only used in Power Apps Canvas to genereate the |
value
|
value | array of object |
value |
Classification
|
value.classification | string |
O365 group classification. |
Created Date-Time
|
value.createdDateTime | date-time |
yyyy-MM-ddTHH:mm:ss.fffZ (ISO8601 format, UTC timezone) |
Description
|
value.description | string |
More information about the group. |
Name
|
value.displayName | string |
O365 group name. |
Group Id
|
value.id | string |
Unique identifier of the group. |
Email
|
value.mail | string |
Email address of the group. |
Mail Enabled
|
value.mailEnabled | boolean |
True if mail is enabled for the group. |
Nickname
|
value.mailNickname | string |
Group nickname. |
On-Premises Last Sync Date-Time
|
value.onPremisesLastSyncDateTime | string |
yyyy-MM-ddTHH:mm:ss.fffZ (ISO8601 format, UTC timezone) |
On-Premises Security Identifier
|
value.onPremisesSecurityIdentifier | string |
The on-premises security identifier. |
On-Premises Sync Enabled
|
value.onPremisesSyncEnabled | boolean |
True if on-premises sync is enabled for the group. |
Renewed Date-Time
|
value.renewedDateTime | date-time |
yyyy-MM-ddTHH:mm:ss.fffZ (ISO8601 format, UTC timezone) |
Security Enabled
|
value.securityEnabled | boolean |
True if the owner is security enabled. |
Visibility
|
value.visibility | string |
The owner's visibility. |
Name | Path | Type | Description |
---|---|---|---|
Id
|
id | string |
Unique id of the event. |
Reminder Start Duration
|
reminderMinutesBeforeStart | integer |
Time in minutes before event starts to remind. |
Is Reminder On
|
isReminderOn | boolean |
Set to true if the event has a reminder. |
Subject
|
subject | string |
Title of the event. |
Importance
|
importance | string |
The importance of the event: Low, Normal, or High. |
Is All Day
|
isAllDay | boolean |
True if the event is an all day event. |
Response Requested
|
responseRequested | boolean |
True if a response was requested for the event. |
Show As
|
showAs | string |
Status to show during the event. |
Content Type
|
body.contentType | string |
Text or Html. |
Content
|
body.content | string |
The content of the body of this event. |
Date Time
|
start.dateTime | date-time |
Start time of the event (example: '2016-11-01T14:30:00-07:00'). |
Time Zone
|
start.timeZone | string |
Time zone of the event, specified as a time zone index value (example: 'Pacific Standard Time'). |
Date Time
|
end.dateTime | date-time |
End time of the event (example: '2016-11-01T15:30:00-07:00'). |
Time Zone
|
end.timeZone | string |
Time zone of the event, specified as a time zone index value (example: 'Pacific Standard Time'). |
Name
|
location.displayName | string |
The display name for the location of the event. |