group resource type

Important: APIs under the /beta version in Microsoft Graph are in preview and are subject to change. Use of these APIs in production applications is not supported.

Represents an Azure Active Directory (Azure AD) group, which can be an Office 365 group, a team in Microsoft Teams, a dynamic group, or a security group. Inherits from directoryObject.

This resource supports:

Microsoft Teams and Office 365 groups support group collaboration. You can use most of the Office 365 groups API with Microsoft Teams. To create a team, first create group and then add a team to it. For details, see the Microsoft Teams overview.

Methods

Method Return Type Description
Group management
Create group group Create a new group as specified. It can be an Office 365 group, dynamic group, security group, or team.
Get group group Read properties and relationships of group object.
Update group None Update the properties of a group object.
Delete group None Delete group object.
delta group collection Get incremental changes for groups.
List groupLifecyclePolicies groupLifecyclePolicy collection List group lifecycle policies.
List owners directoryObject collection Get the owners of the group from the owners navigation property.
Add owner directoryObject Add a new owner for the group by posting to the owners navigation property (supported for security groups and mail-enabled security groups only).
Remove owner None Remove an owner from an Office 365 group, a security group or a mail-enabled security group through the owners navigation property.
List members directoryObject collection Get the users and groups that are direct members of this group from the members navigation property.
List transitive members directoryObject collection Get the users, groups, devices, and service principals that are members, including nested members of this group.
Add member directoryObject Add a user or group to this group by posting to the members navigation property (supported for security groups and mail-enabled security groups only).
Remove member None Remove a member from an Office 365 group, a security group or a mail-enabled security group through the members navigation property. You can remove users or other groups.
List memberOf directoryObject collection Get the groups and administrative units that this group is a direct member of from the memberOf navigation property.
List transitive memberOf directoryObject collection List the groups and administrative units that this user is a member of. This operation is transitive and includes the groups that this group is a nested member of.
checkMemberGroups String collection Check for membership in a list of groups. The function is transitive.
getMemberGroups String collection Return all the groups that the group is a member of. The function is transitive.
getMemberObjects String collection Return all of the groups and administrative units that the group is a member of. The function is transitive.
Create setting directorySetting Create a setting object based on a directorySettingTemplate. The POST request must provide settingValues for all the settings defined in the template. Only groups specific templates may be used for this operation.
Get setting directorySetting Read properties of a specific setting object.
List settings directorySetting collection List properties of all setting objects.
Update setting directorySetting Update a setting object.
Delete setting None Delete a setting object.
List endpoints endpoint collection Get an endpoint object collection.
Get endpoint endpoint Read properties and relationships of an endpoint object.
delta group collection Get incremental changes for groups.
validateProperties JSON Validate an Office 365 group's display name or mail nickname complies with naming policies.
Calendar
Create event event Create a new event by posting to the events collection.
Get event event Read properties of an event object.
List events event collection Get an event object collection.
Update event None Update the properties of an event object.
Delete event None Delete event object.
List calendarView event collection Get a collection of events in a specified time window.
Conversations
Create conversation conversation Create a new conversation by posting to the conversations collection.
Get conversation conversation Read properties of a conversation object.
List conversations conversation collection Get a conversation object collection.
Delete conversation None Delete conversation object.
Get thread conversationThread Read properties of a thread object.
List threads conversationThread collection Get all the threads of a group.
Update thread None Update properties of a thread object.
Delete thread None Delete thread object
List acceptedSenders directoryObject collection Get a list of users or groups that are in the acceptedSenders list for this group.
Add acceptedSender directoryObject Add a User or Group to the acceptSenders collection.
Remove acceptedSender directoryObject Remove a User or Group from the acceptedSenders collection.
List rejectedSenders directoryObject collection Get a list of users or groups that are in the rejectedSenders list for this group.
Add rejectedSender directoryObject Add a new User or Group to the rejectedSenders collection.
Remove rejectedSender directoryObject Remove new new User or Group from the rejectedSenders collection.
Open extensions
Create open extension openTypeExtension Create an open extension and add custom properties to a new or existing resource.
Get open extension openTypeExtension collection Get an open extension identified by the extension name.
Schema extensions
Add schema extension values Create a schema extension definition and then use it to add custom typed data to a resource.
Other group resources
List photos profilePhoto collection Get a collection of profile photos for the group.
List plannerPlans plannerPlan collection Get Planner plans owned by the group.
User settings
addFavorite None Add the group to the list of the current user's favorite groups. Supported for only Office 365 groups.
removeFavorite None Remove the group from the list of the current user's favorite groups. Supported for Office 365 Groups only.
List memberOf directoryObject collection Get the groups and administative units that this user is a direct member of, from the memberOf navigation property.
List joinedTeams group collection Get the Microsoft Teams that the user is a direct member of.
subscribeByMail None Set the isSubscribedByMail property to true. Enabling the current user to receive email conversations. Supported for Office 365 Groups only.
unsubscribeByMail None Set the isSubscribedByMail property to false. Disabling the current user from receive email conversations. Supported for Office 365 Groups only.
resetUnseenCount None Reset the unseenCount to 0 of all the posts that the current user has not seen since their last visit. Supported for Office 365 Groups only.

Properties

Property Type Description
allowExternalSenders Boolean Default is false. Indicates if people external to the organization can send messages to the group.
assignedLicenses assignedLicense collection The licenses that are assigned to the group. Read-only.
autoSubscribeNewMembers Boolean Default is false. Indicates if new members added to the group will be auto-subscribed to receive email notifications. You can set this property in a PATCH request for the group; do not set it in the initial POST request that creates the group.
classification String Describes a classification for the group (such as low, medium or high business impact). Valid values for this property are defined by creating a ClassificationList setting value, based on the template definition.
createdDateTime DateTimeOffset Timestamp of when the group was created. The value cannot be modified and is automatically populated when the group is created. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Read-only.
description String An optional description for the group.
displayName String The display name for the group. This property is required when a group is created and it cannot be cleared during updates. Supports $filter and $orderby.
groupTypes String collection Specifies the type of group to create. Possible values are Unified to create an Office 365 group, or DynamicMembership for dynamic groups. For all other group types, like security-enabled groups and email-enabled security groups, do not set this property.
id String The unique identifier for the group. Inherited from directoryObject. Key. Not nullable. Read-only.
isSubscribedByMail Boolean Default value is true. Indicates whether the current user is subscribed to receive email conversations.
licenseProcessingState String Indicates status of the group license assignment to all members of the group. Read-only. Possible values: QueuedForProcessing, ProcessingInProgress, and ProcessingComplete.
mail String The SMTP address for the group, for example, "serviceadmins@contoso.onmicrosoft.com". Read-only. Supports $filter.
mailEnabled Boolean Specifies whether the group is mail-enabled. If the securityEnabled property is also true, the group is a mail-enabled security group; otherwise, the group is a Microsoft Exchange distribution group.
mailNickname String The mail alias for the group, unique in the organization. This property must be specified when a group is created. Supports $filter.
membershipRule String The rule that determines members for this group if the group is a dynamic group (groupTypes contains DynamicMembership). For more information about the syntax of the membership rule, see Membership Rules syntax
membershipRuleProcessingState String Indicates whether the dynamic membership processing is on or paused. Possible values are "On" or "Paused"
onPremisesLastSyncDateTime DateTimeOffset Indicates the last time at which the object was synced with the on-premises directory.The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Read-only. Supports $filter.
onPremisesProvisioningErrors onPremisesProvisioningError collection Errors when using Microsoft synchronization product during provisioning.
onPremisesSecurityIdentifier String Contains the on-premises security identifier (SID) for the group that was synchronized from on-premises to the cloud. Read-only.
onPremisesSyncEnabled Boolean true if this object is synced from an on-premises directory; false if this object was originally synced from an on-premises directory but is no longer synced; null if this object has never been synced from an on-premises directory (default). Read-only. Supports $filter.
preferredDataLocation String The preferred data location for the group. For more information, see OneDrive Online Multi-Geo.
preferredLanguage String The preferred language for an Office 365 group. Should follow ISO 639-1 Code; for example "en-US".
proxyAddresses String collection For example: ["SMTP: bob@contoso.com", "smtp: bob@sales.contoso.com"] The any operator is required for filter expressions on multi-valued properties. Read-only. Not nullable. Supports $filter.
renewedDateTime DateTimeOffset Timestamp of when the group was last renewed. This cannot be modified directly and is only updated via the renew service action. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Read-only.
securityEnabled Boolean Specifies whether the group is a security group. If the mailEnabled property is also true, the group is a mail-enabled security group; otherwise it is a security group. Must be false for Office 365 groups. Supports $filter.
theme String Specifies an Office 365 group's color theme. Possible values are Teal, Purple, Green, Blue, Pink, Orange or Red.
unseenConversationsCount Int32 Count of conversations that have been delivered one or more new posts since the signed-in user's last visit to the group. This property is the same as unseenCount.
unseenCount Int32 Count of conversations that have been delivered one or more new posts since the signed-in user's last visit to the group. This property is the same as unseenConversationsCount.
unseenMessagesCount Int32 Count of new posts that have been delivered to the group's conversations since the signed-in user's last visit to the group.
visibility String Specifies the visibility of an Office 365 group. Possible values are: private, public, or hiddenmembership; blank values are treated as public. See Group visibility options to learn more.
Visibility can be set only when a group is created; it is not editable.
Visibility is supported only for unified groups; it is not supported for security groups.

Group visibility options

Here's what each visibility property value means:

Value Description
public Anyone can join the group without needing owner permission.
Anyone can view the contents of the group.
private Owner permission is needed to join the group.
Non-members cannot view the contents of the group.
hiddenmembership Owner permission is needed to join the group.
Non-members cannot view the contents of the group.
Non-members cannot see the members of the group.
Administrators (global, company, user, and helpdesk) can view the membership of the group.
The group appears in the global address book (GAL).

Relationships

Relationship Type Description
acceptedSenders directoryObject collection The list of users or groups that are allowed to create post's or calendar events in this group. If this list is non-empty then only users or groups listed here are allowed to post.
calendar calendar The group's calendar. Read-only.
calendarView event collection The calendar view for the calendar. Read-only.
conversations conversation collection The group's conversations.
createdOnBehalfOf directoryObject Read-only.
drive drive The group's drive. Read-only.
endpoints Endpoint collection Endpoints for the group. Read-only. Nullable.
events event collection The group's events.
extensions Extension collection The collection of open extensions defined for the group. Nullable.
memberOf directoryObject collection Groups and administrative units that this group is a member of. HTTP Methods: GET (supported for all groups). Read-only. Nullable.
members directoryObject collection Users, contacts, and groups that are members of this group. HTTP Methods: GET (supported for all groups), POST (supported for security groups and mail-enabled security groups), DELETE (supported only for security groups) Read-only. Nullable.
membersWithLicenseErrors User collection A list of group members with license errors from this group-based license assignment. Read-only.
onenote OneNote Read-only.
owners directoryObject collection The owners of the group. The owners are a set of non-admin users who are allowed to modify this object. HTTP Methods: GET (supported for all groups), POST (supported for security groups and mail-enabled security groups), DELETE (supported only for security groups) Read-only. Nullable.
photo profilePhoto The group's profile photo.
photos profilePhoto collection The profile photos owned by the group. Read-only. Nullable.
planner plannerGroup Selective Planner services available to the group. Read-only. Nullable.
rejectedSenders directoryObject collection The list of users or groups that are not allowed to create posts or calendar events in this group. Nullable
settings directorySetting collection Settings that can govern this group's behavior, like whether members can invite guest users to the group. Nullable.
sites site collection The list of SharePoint sites in this group. Access the default site with /sites/root.
threads conversationThread collection The group's conversation threads. Nullable.

JSON representation

The following is a JSON representation of the resource

{
  "accessType": "string",
  "assignedLicenses": [{"@odata.type": "microsoft.graph.assignedLicense"}],
  "allowExternalSenders": false,
  "autoSubscribeNewMembers": true,
  "createdDateTime": "String (timestamp)",
  "deletedDateTime": "String (timestamp)",
  "description": "string",
  "displayName": "string",
  "groupTypes": ["string"],
  "id": "string (identifier)",
  "isFavorite": true,  
  "isSubscribedByMail": true,
  "licenseProcessingState": "string",
  "mail": "string",
  "mailEnabled": true,
  "mailNickname": "string",
  "onPremisesLastSyncDateTime": "String (timestamp)",
  "onPremisesProvisioningErrors": [{"@odata.type": "microsoft.graph.onPremisesProvisioningError"}],
  "onPremisesSecurityIdentifier": "string",
  "onPremisesSyncEnabled": true,
  "preferredDataLocation": ["string"],
  "proxyAddresses": ["string"],
  "renewedDateTime": "String (timestamp)",
  "securityEnabled": true,
  "unseenConversationsCount": 1024,
  "unseenCount": 1024,
  "unseenMessagesCount": 1024,
  "visibility": "string",
  "acceptedSenders": [ { "@odata.type": "microsoft.graph.directoryObject"} ],
  "calendar": { "@odata.type": "microsoft.graph.calendar" },
  "calendarView": [{ "@odata.type": "microsoft.graph.event" }],
  "conversations": [ { "@odata.type": "microsoft.graph.conversation" }],
  "createdOnBehalfOf": { "@odata.type": "microsoft.graph.directoryObject" },
  "drive": { "@odata.type": "microsoft.graph.drive" },
  "events": [ { "@odata.type": "microsoft.graph.event" }],
  "memberOf": [ { "@odata.type": "microsoft.graph.directoryObject" } ],
  "members": [ { "@odata.type": "microsoft.graph.directoryObject" } ],
  "membersWithLicenseErrors": [{"@odata.type": "microsoft.graph.user"}],
  "owners": [ { "@odata.type": "microsoft.graph.directoryObject" } ],
  "photo": { "@odata.type": "microsoft.graph.profilePhoto" },
  "rejectedSenders": [ { "@odata.type": "microsoft.graph.directoryObject" } ],
  "sites": [ { "@odata.type": "microsoft.graph.site" } ],
  "threads": [ { "@odata.type": "microsoft.graph.conversationThread" }]
}

See also