Show / Hide Table of Contents

EduRoster.Read.All

Allows the app to read the structure of schools and classes in the organization's roster and education-specific information about all users to be read.

Graph Methods

Type: A = Application Permission, D = Delegate Permission

Ver Type Method
V1 A GET /education/classes
V1 A GET /education/classes/{id}
V1 A GET /education/classes/{id}/group
V1 A GET /education/classes/{id}/members
V1 A GET /education/classes/{id}/schools
V1 A GET /education/classes/{id}/teachers
V1 A GET /education/classes/delta
V1 A GET /education/me
V1 A GET /education/me/classes
V1 A GET /education/me/schools
V1 A GET /education/me/taughtClasses
V1 A GET /education/me/user
V1 A GET /education/schools
V1 A GET /education/schools/{educationSchoolId}
V1 A GET /education/schools/{educationSchoolId}/administrativeUnit
V1 A GET /education/schools/{educationSchoolId}/classes
V1 A GET /education/schools/{educationSchoolId}/users
V1 A GET /education/schools/{id}/administrativeUnit
V1 A GET /education/schools/{id}/classes
V1 A GET /education/schools/{id}/users
V1 A GET /education/schools/delta
V1 A GET /education/users
V1 A GET /education/users/{educationUserId}/schools
V1 A GET /education/users/{educationUserId}/taughtClasses
V1 A GET /education/users/{id}
V1 A GET /education/users/{id}/classes
V1 A GET /education/users/{id}/schools
V1 A GET /education/users/{id}/user
V1 A GET /education/users/delta
V1 A GET /education/users/schools

Application Permission

Id e0ac9e1b-cb65-4fc5-87c5-1a8bc181f648
Display String Read the organization's roster
Description Allows the app to read the structure of schools and classes in the organization's roster and education-specific information about all users to be read.

Resources

administrativeUnit

Property Type Description
description String An optional description for the administrative unit. Supports $filter (eq, ne, in, startsWith), $search.
displayName String Display name for the administrative unit. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values), $search, and $orderBy.
id String Unique identifier for the administrative unit. Read-only. Supports $filter (eq).
visibility String Controls whether the administrative unit and its members are hidden or public. Can be set to HiddenMembership. If not set (value is null), the default behavior is public. When set to HiddenMembership, only members of the administrative unit can list other members of the administrative unit.

educationClass

Property Type Description
classCode String Class code used by the school to identify the class.
createdBy identitySet Entity who created the class
description String Description of the class.
displayName String Name of the class.
externalId String ID of the class from the syncing system.
externalSource educationExternalSource How this class was created. Possible values are: sis, manual.
externalSourceDetail String The name of the external source this resources was generated from.
externalName String Name of the class in the syncing system.
grade String Grade level of the class.
id String Object identifier. Inherited from entity.
mailNickname String Mail name for sending email to all members, if this is enabled.
term educationTerm Term for this class.

educationSchool

Property Type Description
address physicalAddress Address of the school.
createdBy identitySet Entity who created the school.
description String Description of the school. Inherited from educationOrganization.
displayName String Display name of the school. Inherited from educationOrganization.
externalId String ID of school in syncing system.
externalPrincipalId String ID of principal in syncing system.
externalSource educationExternalSource Source where this organization was created from. Inherited from educationOrganization. Possible values are: sis, manual.
externalSourceDetail String The name of the external source this resources was generated from.
highestGrade String Highest grade taught.
id String Object identifier. Inherited from entity.
lowestGrade String Lowest grade taught.
phone String Phone number of school.
principalEmail String Email address of the principal.
principalName String Name of the principal.
schoolNumber String School Number.

educationUser

Property Type Description
accountEnabled Boolean True if the account is enabled; otherwise, false. This property is required when a user is created. Supports $filter.
assignedLicenses assignedLicense collection The licenses that are assigned to the user. Not nullable.
assignedPlans assignedPlan collection The plans that are assigned to the user. Read-only. Not nullable.
businessPhones String collection The telephone numbers for the user. Note: Although this is a string collection, only one number can be set for this property.
createdBy identitySet The entity who created the user.
department String The name for the department in which the user works. Supports $filter.
displayName String The name displayed in the address book for the user. This is usually the combination of the user's first name, middle initial, and last name. This property is required when a user is created and it cannot be cleared during updates. Supports $filter and $orderby.
externalSource educationExternalSource Where this user was created from. Possible values are: sis, manual.
externalSourceDetail String The name of the external source this resource was generated from.
givenName String The given name (first name) of the user. Supports $filter.
id String Object identifier. Inherited from entity.
mail String The SMTP address for the user, for example, [email protected]. Read-Only. Supports $filter.
mailingAddress physicalAddress The mail address of the user.
mailNickname String The mail alias for the user. This property must be specified when a user is created. Supports $filter.
middleName String The middle name of the user.
mobilePhone String The primary cellular telephone number for the user.
onPremisesInfo educationOnPremisesInfo Additional information used to associate the Azure Active Directory user with its Active Directory counterpart.
passwordPolicies String Specifies password policies for the user. This value is an enumeration with one possible value being DisableStrongPassword, which allows weaker passwords than the default policy to be specified. DisablePasswordExpiration can also be specified. The two can be specified together; for example: DisablePasswordExpiration, DisableStrongPassword.
passwordProfile passwordProfile Specifies the password profile for the user. The profile contains the user's password. This property is required when a user is created. The password in the profile must satisfy minimum requirements as specified by the passwordPolicies property. By default, a strong password is required.
preferredLanguage String The preferred language for the user that should follow the ISO 639-1 code, for example, en-US.
primaryRole educationUserRole Default role for a user. The user's role might be different in an individual class. Possible values are: student, teacher, none, unknownFutureValue.
provisionedPlans provisionedPlan collection The plans that are provisioned for the user. Read-only. Not nullable.
relatedContacts [relatedContact] collection Related records associated with the user. Read-only.
residenceAddress physicalAddress The address where the user lives.
showInAddressList Boolean True if the Outlook Global Address List should contain this user; otherwise, false. If not set, this will be treated as true. For users invited through the invitation manager, this property will be set to false.
student educationStudent If the primary role is student, this block will contain student specific data.
surname String The user's surname (family name or last name). Supports $filter.
teacher educationTeacher If the primary role is teacher, this block will contain teacher specific data.
usageLocation String A two-letter country code (ISO standard 3166). Required for users who will be assigned licenses due to a legal requirement to check for availability of services in countries or regions. Examples include: US, JP, and GB. Not nullable. Supports $filter.
userPrincipalName String The user principal name (UPN) of the user. The UPN is an internet-style login name for the user based on the internet standard RFC 822. By convention, this should map to the user's email name. The general format is [email protected], where domain must be present in the tenant's collection of verified domains. This property is required when a user is created. The verified domains for the tenant can be accessed from the verifiedDomains property of the organization. Supports $filter and $orderby.
userType String A string value that can be used to classify user types in your directory, such as Member and Guest. Supports $filter.

group

Property Type Description
allowExternalSenders Boolean Indicates if people external to the organization can send messages to the group. Default value is false.

Returned only on $select. Supported only on the Get group API (GET /groups/{ID}).
assignedLabels assignedLabel collection The list of sensitivity label pairs (label ID, label name) associated with a Microsoft 365 group.

Returned only on $select.
assignedLicenses assignedLicense collection The licenses that are assigned to the group.

Returned only on $select. Supports $filter (eq).Read-only.
autoSubscribeNewMembers Boolean 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. Default value is false.

Returned only on $select. Supported only on the Get group API (GET /groups/{ID}).
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.

Returned by default. Supports $filter (eq, ne, not, ge, le, startsWith).
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 is 2014-01-01T00:00:00Z.

Returned by default. Read-only.
deletedDateTime DateTimeOffset For some Azure Active Directory objects (user, group, application), if the object is deleted, it is first logically deleted, and this property is updated with the date and time when the object was deleted. Otherwise this property is null. If the object is restored, this property is updated to null.
description String An optional description for the group.

Returned by default. Supports $filter (eq, ne, not, ge, le, startsWith) and $search.
displayName String The display name for the group. This property is required when a group is created and cannot be cleared during updates. Maximum length is 256 characters.

Returned by default. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values), $search, and $orderBy.
expirationDateTime DateTimeOffset Timestamp of when the group is set to expire. 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 is 2014-01-01T00:00:00Z.

Returned by default. Supports $filter (eq, ne, not, ge, le, in). Read-only.
groupTypes String collection Specifies the group type and its membership.

If the collection contains Unified, the group is a Microsoft 365 group; otherwise, it's either a security group or distribution group. For details, see groups overview.

If the collection includes DynamicMembership, the group has dynamic membership; otherwise, membership is static.

Returned by default. Supports $filter (eq, not).
hasMembersWithLicenseErrors Boolean Indicates whether there are members in this group that have license errors from its group-based license assignment.

This property is never returned on a GET operation. You can use it as a $filter argument to get groups that have members with license errors (that is, filter for this property being true). See an example.

Supports $filter (eq).
hideFromAddressLists Boolean True if the group is not displayed in certain parts of the Outlook UI: the Address Book, address lists for selecting message recipients, and the Browse Groups dialog for searching groups; otherwise, false. Default value is false.

Returned only on $select. Supported only on the Get group API (GET /groups/{ID}).
hideFromOutlookClients Boolean True if the group is not displayed in Outlook clients, such as Outlook for Windows and Outlook on the web; otherwise, false. Default value is false.

Returned only on $select. Supported only on the Get group API (GET /groups/{ID}).
id String The unique identifier for the group.

Returned by default. Inherited from directoryObject. Key. Not nullable. Read-only.

Supports $filter (eq, ne, not, in).
isArchived Boolean When a group is associated with a team this property determines whether the team is in read-only mode.
To read this property, use the /group/{groupId}/team endpoint or the Get team API. To update this property, use the archiveTeam and unarchiveTeam APIs.
isAssignableToRole Boolean Indicates whether this group can be assigned to an Azure Active Directory role or not. Optional.

This property can only be set while creating the group and is immutable. If set to true, the securityEnabled property must also be set to true, visibility must be Hidden, and the group cannot be a dynamic group (that is, groupTypes cannot contain DynamicMembership).

Only callers in Global Administrator and Privileged Role Administrator roles can set this property. The caller must also be assigned the RoleManagement.ReadWrite.Directory permission to set this property or update the membership of such groups. For more, see Using a group to manage Azure AD role assignments

Using this feature requires a Azure AD Premium P1 license. Returned by default. Supports $filter (eq, ne, not).
isSubscribedByMail Boolean Indicates whether the signed-in user is subscribed to receive email conversations. Default value is true.

Returned only on $select. Supported only on the Get group API (GET /groups/{ID}).
licenseProcessingState String Indicates status of the group license assignment to all members of the group. Default value is false. Read-only. Possible values: QueuedForProcessing, ProcessingInProgress, and ProcessingComplete.

Returned only on $select. Read-only.
mail String The SMTP address for the group, for example, "[email protected]".

Returned by default. Read-only. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values).
mailEnabled Boolean Specifies whether the group is mail-enabled. Required.

Returned by default. Supports $filter (eq, ne, not).
mailNickname String The mail alias for the group, unique for Microsoft 365 groups in the organization. Maximum length is 64 characters. This property can contain only characters in the ASCII character set 0 - 127 except the following: @ () \ [] " ; : <> , SPACE.

Required. Returned by default. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values).
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.

Returned by default. Supports $filter (eq, ne, not, ge, le, startsWith).
membershipRuleProcessingState String Indicates whether the dynamic membership processing is on or paused. Possible values are On or Paused.

Returned by default. Supports $filter (eq, ne, not, in).
onPremisesLastSyncDateTime DateTimeOffset Indicates the last time at which the group 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 is 2014-01-01T00:00:00Z.

Returned by default. Read-only. Supports $filter (eq, ne, not, ge, le, in).
onPremisesProvisioningErrors onPremisesProvisioningError collection Errors when using Microsoft synchronization product during provisioning.

Returned by default. Supports $filter (eq, not).
onPremisesSamAccountName String Contains the on-premises SAM account name synchronized from the on-premises directory. The property is only populated for customers who are synchronizing their on-premises directory to Azure Active Directory via Azure AD Connect.

Returned by default. Supports $filter (eq, ne, not, ge, le, in, startsWith). Read-only.
onPremisesSecurityIdentifier String Contains the on-premises security identifier (SID) for the group that was synchronized from on-premises to the cloud.

Returned by default. Supports $filter (eq including on null values). Read-only.
onPremisesSyncEnabled Boolean true if this group is synced from an on-premises directory; false if this group 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).

Returned by default. Read-only. Supports $filter (eq, ne, not, in, and eq on null values).
preferredDataLocation String The preferred data location for the Microsoft 365 group. By default, the group inherits the group creator's preferred data location. To set this property, the calling user must be assigned one of the following Azure AD roles:
  • Global Administrator
  • User Account Administrator
  • Directory Writer
  • Exchange Administrator
  • SharePoint Administrator

For more information about this property, see OneDrive Online Multi-Geo.

Nullable. Returned by default.
preferredLanguage String The preferred language for a Microsoft 365 group. Should follow ISO 639-1 Code; for example en-US.

Returned by default. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values).
proxyAddresses String collection Email addresses for the group that direct to the same group mailbox. For example: ["SMTP: [email protected]", "smtp: [email protected]"]. The any operator is required to filter expressions on multi-valued properties.

Returned by default. Read-only. Not nullable. Supports $filter (eq, not, ge, le, startsWith, endsWith, /$count eq 0, /$count ne 0).
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 is 2014-01-01T00:00:00Z.

Returned by default. Supports $filter (eq, ne, not, ge, le, in). Read-only.
resourceBehaviorOptions String collection Specifies the group behaviors that can be set for a Microsoft 365 group during creation. This can be set only as part of creation (POST). Possible values are AllowOnlyMembersToPost, HideGroupInOutlook, SubscribeNewGroupMembers, WelcomeEmailDisabled. For more information, see Set Microsoft 365 group behaviors and provisioning options.
resourceProvisioningOptions String collection Specifies the group resources that are provisioned as part of Microsoft 365 group creation, that are not normally part of default group creation. Possible value is Team. For more information, see Set Microsoft 365 group behaviors and provisioning options.
securityEnabled Boolean Specifies whether the group is a security group. Required.

Returned by default. Supports $filter (eq, ne, not, in).
securityIdentifier String Security identifier of the group, used in Windows scenarios.

Returned by default.
theme string Specifies a Microsoft 365 group's color theme. Possible values are Teal, Purple, Green, Blue, Pink, Orange or Red.

Returned by default.
unseenCount Int32 Count of conversations that have received new posts since the signed-in user last visited the group.

Returned only on $select. Supported only on the Get group API (GET /groups/{ID}).
visibility String Specifies the group join policy and group content visibility for groups. Possible values are: Private, Public, or HiddenMembership. HiddenMembership can be set only for Microsoft 365 groups, when the groups are created. It can't be updated later. Other values of visibility can be updated after group creation.
If visibility value is not specified during group creation on Microsoft Graph, a security group is created as Private by default and Microsoft 365 group is Public. Groups assignable to roles are always Private. See group visibility options to learn more.

Returned by default. Nullable.

user

Property Type Description
aboutMe String A freeform text entry field for the user to describe themselves. Returned only on $select.
accountEnabled Boolean true if the account is enabled; otherwise, false. This property is required when a user is created.

Returned only on $select. Supports $filter (eq, ne, not, and in).
ageGroup ageGroup Sets the age group of the user. Allowed values: null, Minor, NotAdult and Adult. Refer to the legal age group property definitions for further information.

Returned only on $select. Supports $filter (eq, ne, not, and in).
assignedLicenses assignedLicense collection The licenses that are assigned to the user, including inherited (group-based) licenses. This property doesn't differentiate directly-assigned and inherited licenses. Use the licenseAssignmentStates property to identify the directly-assigned and inherited licenses. Not nullable. Returned only on $select. Supports $filter (eq, not, /$count eq 0, /$count ne 0).
assignedPlans assignedPlan collection The plans that are assigned to the user. Read-only. Not nullable.

Returned only on $select. Supports $filter (eq and not).
birthday DateTimeOffset The birthday of the user. 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 is 2014-01-01T00:00:00Z.

Returned only on $select.
businessPhones String collection The telephone numbers for the user. NOTE: Although this is a string collection, only one number can be set for this property. Read-only for users synced from on-premises directory.

Returned by default. Supports $filter (eq, not, ge, le, startsWith).
city String The city in which the user is located. Maximum length is 128 characters.

Returned only on $select. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values).
companyName String The company name which the user is associated. This property can be useful for describing the company that an external user comes from. The maximum length is 64 characters.

Returned only on $select. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values).
consentProvidedForMinor consentProvidedForMinor Sets whether consent has been obtained for minors. Allowed values: null, Granted, Denied and NotRequired. Refer to the legal age group property definitions for further information.

Returned only on $select. Supports $filter (eq, ne, not, and in).
country String The country/region in which the user is located; for example, US or UK. Maximum length is 128 characters.

Returned only on $select. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values).
createdDateTime DateTimeOffset The date and time the user was created, in ISO 8601 format and in UTC time. The value cannot be modified and is automatically populated when the entity is created. Nullable. For on-premises users, the value represents when they were first created in Azure AD. Property is null for some users created before June 2018 and on-premises users that were synced to Azure AD before June 2018. Read-only.

Returned only on $select. Supports $filter (eq, ne, not , ge, le, in).
creationType String Indicates whether the user account was created through one of the following methods:
  • As a regular school or work account (null).
  • As an external account (Invitation).
  • As a local account for an Azure Active Directory B2C tenant (LocalAccount).
  • Through self-service sign-up by an internal user using email verification (EmailVerified).
  • Through self-service sign-up by an external user signing up through a link that is part of a user flow (SelfServiceSignUp).

Read-only.
Returned only on $select. Supports $filter (eq, ne, not, in).
deletedDateTime DateTimeOffset The date and time the user was deleted.

Returned only on $select. Supports $filter (eq, ne, not, ge, le, in).
department String The name for the department in which the user works. Maximum length is 64 characters.

Returned only on $select. Supports $filter (eq, ne, not , ge, le, in, and eq on null values).
displayName String The name displayed in the address book for the user. This is usually the combination of the user's first name, middle initial and last name. This property is required when a user is created and it cannot be cleared during updates. Maximum length is 256 characters.

Returned by default. Supports $filter (eq, ne, not , ge, le, in, startsWith, and eq on null values), $orderBy, and $search.
employeeHireDate DateTimeOffset The date and time when the user was hired or will start work in case of a future hire.

Returned only on $select. Supports $filter (eq, ne, not , ge, le, in).
employeeLeaveDateTime DateTimeOffset The date and time when the user left or will leave the organization.

To read this property, the calling app must be assigned the User-LifeCycleInfo.Read.All permission. To write this property, the calling app must be assigned the User.Read.All and User-LifeCycleInfo.ReadWrite.All permissions. To read this property in delegated scenarios, the admin needs one of the following Azure AD roles: Lifecycle Workflows Administrator, Global Reader, or Global Administrator. To write this property in delegated scenarios, the admin needs the Global Administrator role.

Supports $filter (eq, ne, not , ge, le, in).

For more information, see Configure the employeeLeaveDateTime property for a user.
employeeId String The employee identifier assigned to the user by the organization. The maximum length is 16 characters.

Returned only on $select. Supports $filter (eq, ne, not , ge, le, in, startsWith, and eq on null values).
employeeOrgData employeeOrgData Represents organization data (e.g. division and costCenter) associated with a user.

Returned only on $select. Supports $filter (eq, ne, not , ge, le, in).
employeeType String Captures enterprise worker type. For example, Employee, Contractor, Consultant, or Vendor. Returned only on $select. Supports $filter (eq, ne, not , ge, le, in, startsWith).
externalUserState String For an external user invited to the tenant using the invitation API, this property represents the invited user's invitation status. For invited users, the state can be PendingAcceptance or Accepted, or null for all other users.

Returned only on $select. Supports $filter (eq, ne, not , in).
externalUserStateChangeDateTime DateTimeOffset Shows the timestamp for the latest change to the externalUserState property.

Returned only on $select. Supports $filter (eq, ne, not , in).
faxNumber String The fax number of the user.

Returned only on $select. Supports $filter (eq, ne, not , ge, le, in, startsWith, and eq on null values).
givenName String The given name (first name) of the user. Maximum length is 64 characters.

Returned by default. Supports $filter (eq, ne, not , ge, le, in, startsWith, and eq on null values).
hireDate DateTimeOffset The hire date of the user. 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 is 2014-01-01T00:00:00Z.

Returned only on $select.
Note: This property is specific to SharePoint Online. We recommend using the native employeeHireDate property to set and update hire date values using Microsoft Graph APIs.
id String The unique identifier for the user. Should be treated as an opaque identifier. Inherited from directoryObject. Key. Not nullable. Read-only.

Returned by default. Supports $filter (eq, ne, not, in).
identities objectIdentity collection Represents the identities that can be used to sign in to this user account. An identity can be provided by Microsoft (also known as a local account), by organizations, or by social identity providers such as Facebook, Google, and Microsoft, and tied to a user account. May contain multiple items with the same signInType value.

Returned only on $select. Supports $filter (eq) including on null values, only where the signInType is not userPrincipalName.
imAddresses String collection The instant message voice over IP (VOIP) session initiation protocol (SIP) addresses for the user. Read-only.

Returned only on $select. Supports $filter (eq, not, ge, le, startsWith).
interests String collection A list for the user to describe their interests.

Returned only on $select.
isResourceAccount Boolean Do not use – reserved for future use.
jobTitle String The user's job title. Maximum length is 128 characters.

Returned by default. Supports $filter (eq, ne, not , ge, le, in, startsWith, and eq on null values).
lastPasswordChangeDateTime DateTimeOffset The time when this Azure AD user last changed their password or when their password was created, whichever date the latest action was performed. The date and time information uses ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.

Returned only on $select.
legalAgeGroupClassification legalAgeGroupClassification Used by enterprise applications to determine the legal age group of the user. This property is read-only and calculated based on ageGroup and consentProvidedForMinor properties. Allowed values: null, MinorWithOutParentalConsent, MinorWithParentalConsent, MinorNoParentalConsentRequired, NotAdult and Adult. Refer to the legal age group property definitions for further information.

Returned only on $select.
licenseAssignmentStates licenseAssignmentState collection State of license assignments for this user. Also indicates licenses that are directly-assigned and those that the user has inherited through group memberships. Read-only.

Returned only on $select.
mail String The SMTP address for the user, for example, [email protected]. Changes to this property will also update the user's proxyAddresses collection to include the value as an SMTP address. This property cannot contain accent characters.
NOTE: We do not recommend updating this property for Azure AD B2C user profiles. Use the otherMails property instead.

Returned by default. Supports $filter (eq, ne, not, ge, le, in, startsWith, endsWith, and eq on null values).
mailboxSettings mailboxSettings Settings for the primary mailbox of the signed-in user. You can get or update settings for sending automatic replies to incoming messages, locale and time zone.

Returned only on $select.
mailNickname String The mail alias for the user. This property must be specified when a user is created. Maximum length is 64 characters.

Returned only on $select. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values).
mobilePhone String The primary cellular telephone number for the user. Read-only for users synced from on-premises directory. Maximum length is 64 characters.

Returned by default. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values).
mySite String The URL for the user's personal site.

Returned only on $select.
officeLocation String The office location in the user's place of business.

Returned by default. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values).
onPremisesDistinguishedName String Contains the on-premises Active Directory distinguished name or DN. The property is only populated for customers who are synchronizing their on-premises directory to Azure Active Directory via Azure AD Connect. Read-only.

Returned only on $select.
onPremisesDomainName String Contains the on-premises domainFQDN, also called dnsDomainName synchronized from the on-premises directory. The property is only populated for customers who are synchronizing their on-premises directory to Azure Active Directory via Azure AD Connect. Read-only.

Returned only on $select.
onPremisesExtensionAttributes onPremisesExtensionAttributes Contains extensionAttributes1-15 for the user. These extension attributes are also known as Exchange custom attributes 1-15.
  • For an onPremisesSyncEnabled user, the source of authority for this set of properties is the on-premises and is read-only.
  • For a cloud-only user (where onPremisesSyncEnabled is false), these properties can be set during creation or update of a user object.
  • For a cloud-only user previously synced from on-premises Active Directory, these properties are read-only in Microsoft Graph but can be fully managed through the Exchange Admin Center or the Exchange Online V2 module in PowerShell.

  • Returned only on $select. Supports $filter (eq, ne, not, in).
    onPremisesImmutableId String This property is used to associate an on-premises Active Directory user account to their Azure AD user object. This property must be specified when creating a new user account in the Graph if you are using a federated domain for the user's userPrincipalName (UPN) property. NOTE: The $ and _ characters cannot be used when specifying this property.

    Returned only on $select. Supports $filter (eq, ne, not, ge, le, in)..
    onPremisesLastSyncDateTime DateTimeOffset Indicates the last time at which the object was synced with the on-premises directory; for example: 2013-02-16T03:04:54Z. 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 is 2014-01-01T00:00:00Z. Read-only.

    Returned only on $select. Supports $filter (eq, ne, not, ge, le, in).
    onPremisesProvisioningErrors onPremisesProvisioningError collection Errors when using Microsoft synchronization product during provisioning.

    Returned only on $select. Supports $filter (eq, not, ge, le).
    onPremisesSamAccountName String Contains the on-premises samAccountName synchronized from the on-premises directory. The property is only populated for customers who are synchronizing their on-premises directory to Azure Active Directory via Azure AD Connect. Read-only.

    Returned only on $select. Supports $filter (eq, ne, not, ge, le, in, startsWith).
    onPremisesSecurityIdentifier String Contains the on-premises security identifier (SID) for the user that was synchronized from on-premises to the cloud. Read-only.

    Returned only on $select. Supports $filter (eq including on null values).
    onPremisesSyncEnabled Boolean true if this user object is currently being synced from an on-premises Active Directory (AD); otherwise the user isn't being synced and can be managed in Azure Active Directory (Azure AD). Read-only.

    Returned only on $select. Supports $filter (eq, ne, not, in, and eq on null values).
    onPremisesUserPrincipalName String Contains the on-premises userPrincipalName synchronized from the on-premises directory. The property is only populated for customers who are synchronizing their on-premises directory to Azure Active Directory via Azure AD Connect. Read-only.

    Returned only on $select. Supports $filter (eq, ne, not, ge, le, in, startsWith).
    otherMails String collection A list of additional email addresses for the user; for example: ["[email protected]", "[email protected]"].
    NOTE: This property cannot contain accent characters.

    Returned only on $select. Supports $filter (eq, not, ge, le, in, startsWith, endsWith, /$count eq 0, /$count ne 0).
    passwordPolicies String Specifies password policies for the user. This value is an enumeration with one possible value being DisableStrongPassword, which allows weaker passwords than the default policy to be specified. DisablePasswordExpiration can also be specified. The two may be specified together; for example: DisablePasswordExpiration, DisableStrongPassword.

    Returned only on $select. For more information on the default password policies, see Azure AD pasword policies. Supports $filter (ne, not, and eq on null values).
    passwordProfile passwordProfile Specifies the password profile for the user. The profile contains the user’s password. This property is required when a user is created. The password in the profile must satisfy minimum requirements as specified by the passwordPolicies property. By default, a strong password is required.

    Returned only on $select. Supports $filter (eq, ne, not, in, and eq on null values).
    pastProjects String collection A list for the user to enumerate their past projects.

    Returned only on $select.
    postalCode String The postal code for the user's postal address. The postal code is specific to the user's country/region. In the United States of America, this attribute contains the ZIP code. Maximum length is 40 characters.

    Returned only on $select. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values).
    preferredDataLocation String The preferred data location for the user. For more information, see OneDrive Online Multi-Geo.
    preferredLanguage String The preferred language for the user. Should follow ISO 639-1 Code; for example en-US.

    Returned by default. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values)
    preferredName String The preferred name for the user. Not Supported. This attribute returns an empty string.

    Returned only on $select.
    provisionedPlans provisionedPlan collection The plans that are provisioned for the user. Read-only. Not nullable.

    Returned only on $select. Supports $filter (eq, not, ge, le).
    proxyAddresses String collection For example: "SMTP: [email protected]", "smtp: [email protected]"]. Changes to the mail property will also update this collection to include the value as an SMTP address. For more information, see [mail and proxyAddresses properties. The proxy address prefixed with SMTP (capitalized) is the primary proxy address while those prefixed with smtp are the secondary proxy addresses. For Azure AD B2C accounts, this property has a limit of ten unique addresses. Read-only in Microsoft Graph; you can update this property only through the Microsoft 365 admin center. Not nullable.

    Returned only on $select. Supports $filter (eq, not, ge, le, startsWith, endsWith, /$count eq 0, /$count ne 0).
    refreshTokensValidFromDateTime DateTimeOffset Any refresh tokens or sessions tokens (session cookies) issued before this time are invalid, and applications will get an error when using an invalid refresh or sessions token to acquire a delegated access token (to access APIs such as Microsoft Graph). If this happens, the application will need to acquire a new refresh token by making a request to the authorize endpoint.

    Returned only on $select. Read-only.
    responsibilities String collection A list for the user to enumerate their responsibilities.

    Returned only on $select.
    schools String collection A list for the user to enumerate the schools they have attended.

    Returned only on $select.
    securityIdentifier String Security identifier (SID) of the user, used in Windows scenarios.

    Read-only. Returned by default.
    Supports $select and $filter (eq, not, ge, le, startsWith).
    showInAddressList Boolean Do not use in Microsoft Graph. Manage this property through the Microsoft 365 admin center instead. Represents whether the user should be included in the Outlook global address list. See Known issue.
    signInSessionsValidFromDateTime DateTimeOffset Any refresh tokens or sessions tokens (session cookies) issued before this time are invalid, and applications will get an error when using an invalid refresh or sessions token to acquire a delegated access token (to access APIs such as Microsoft Graph). If this happens, the application will need to acquire a new refresh token by making a request to the authorize endpoint. Read-only. Use revokeSignInSessions to reset.

    Returned only on $select.
    skills String collection A list for the user to enumerate their skills.

    Returned only on $select.
    state String The state or province in the user's address. Maximum length is 128 characters.

    Returned only on $select. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values).
    streetAddress String The street address of the user's place of business. Maximum length is 1024 characters.

    Returned only on $select. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values).
    surname String The user's surname (family name or last name). Maximum length is 64 characters.

    Returned by default. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values).
    usageLocation String A two letter country code (ISO standard 3166). Required for users that will be assigned licenses due to legal requirement to check for availability of services in countries. Examples include: US, JP, and GB. Not nullable.

    Returned only on $select. Supports $filter (eq, ne, not, ge, le, in, startsWith, and eq on null values).
    userPrincipalName String The user principal name (UPN) of the user. The UPN is an Internet-style login name for the user based on the Internet standard RFC 822. By convention, this should map to the user's email name. The general format is [email protected], where domain must be present in the tenant's collection of verified domains. This property is required when a user is created. The verified domains for the tenant can be accessed from the verifiedDomains property of organization.
    NOTE: This property cannot contain accent characters. Only the following characters are allowed A - Z, a - z, 0 - 9, ' . - _ ! # ^ ~. For the complete list of allowed characters, see username policies.

    Returned by default. Supports $filter (eq, ne, not, ge, le, in, startsWith, endsWith) and $orderBy.
    userType String A string value that can be used to classify user types in your directory, such as Member and Guest.

    Returned only on $select. Supports $filter (eq, ne, not, in, and eq on null values). **N
    In This Article
    Back to top Created by merill | Submit feedback