Show / Hide Table of Contents

Mail.Read

Allows the app to read the signed-in user's mailbox.

Graph Methods

Type: A = Application Permission, D = Delegate Permission

Ver Type Method
V1 A,D GET /me/inferenceClassification/overrides
V1 A,D GET /me/mailFolders
V1 A,D GET /me/mailFolders/{id}
V1 A,D GET /me/mailFolders/{id}/childFolders
V1 A,D GET /me/mailFolders/{id}/messages
V1 A,D GET /me/mailFolders/{id}/messages/{id}
V1 A,D GET /me/mailFolders/{id}/messages/delta
V1 A,D GET /me/mailFolders/delta
V1 A,D GET /me/messages
V1 A,D GET /me/messages/{id}
V1 A,D GET /me/messages/{id}/attachments
V1 A,D GET /users/{id | userPrincipalName}/mailFolders
V1 A,D GET /users/{id | userPrincipalName}/mailFolders/{id}
V1 A,D GET /users/{id | userPrincipalName}/mailFolders/{id}/childFolders
V1 A,D GET /users/{id | userPrincipalName}/mailFolders/{id}/messages
V1 A,D GET /users/{id | userPrincipalName}/mailFolders/{id}/messages/{id}
V1 A,D GET /users/{id | userPrincipalName}/messages
V1 A,D GET /users/{id | userPrincipalName}/messages/{id}
V1 A,D GET /users/{id | userPrincipalName}/messages/{id}/attachments
V1 A,D GET /users/{id}/inferenceClassification/overrides
V1 A,D GET /users/{id}/mailFolders/{id}/messages/delta
V1 A,D GET /users/{id}/mailFolders/delta
V1 A,D POST /me/getMailTips
V1 D POST /search/query
V1 A,D POST /users/{id|userPrincipalName}/getMailTips

Delegate Permission

Id 570282fd-fa5c-430d-a7fd-fc8dc98a9dca
Consent Type User
Display String Read user mail
Description Allows the app to read the signed-in user's mailbox.

Application Permission

Id 810c84a8-4a9e-49e6-bf7d-12d183f40d01
Display String Read mail in all mailboxes
Description Allows the app to read mail in all mailboxes without a signed-in user.

Resources

attachment

Property Type Description
contentType String The MIME type.
id String Read-only.
isInline Boolean true if the attachment is an inline attachment; otherwise, false.
lastModifiedDateTime DateTimeOffset 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
name String The attachment's file name.
size Int32 The length of the attachment in bytes.

event

Property Type Description
allowNewTimeProposals Boolean true if the meeting organizer allows invitees to propose a new time when responding; otherwise, false. Optional. Default is true.
attendees Attendee collection The collection of attendees for the event.
body ItemBody The body of the message associated with the event. It can be in HTML or text format.
bodyPreview String The preview of the message associated with the event. It is in text format.
categories String collection The categories associated with the event. Each category corresponds to the displayName property of an outlookCategory defined for the user.
changeKey String Identifies the version of the event object. Every time the event is changed, ChangeKey changes as well. This allows Exchange to apply changes to the correct version of the object.
createdDateTime DateTimeOffset 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
end DateTimeTimeZone The date, time, and time zone that the event ends. By default, the end time is in UTC.
hasAttachments Boolean Set to true if the event has attachments.
hideAttendees Boolean When set to true, each attendee only sees themselves in the meeting request and meeting Tracking list. Default is false.
iCalUId String A unique identifier for an event across calendars. This ID is different for each occurrence in a recurring series. Read-only.
id String Unique identifier for the event. !INCLUDE [outlook-beta-id] Case-sensitive and read-only.
importance String The importance of the event. The possible values are: low, normal, high.
isAllDay Boolean Set to true if the event lasts all day. If true, regardless of whether it's a single-day or multi-day event, start and end time must be set to midnight and be in the same time zone.
isCancelled Boolean Set to true if the event has been canceled.
isDraft Boolean Set to true if the user has updated the meeting in Outlook but has not sent the updates to attendees. Set to false if all changes have been sent, or if the event is an appointment without any attendees.
isOnlineMeeting Boolean True if this event has online meeting information (that is, onlineMeeting points to an onlineMeetingInfo resource), false otherwise. Default is false (onlineMeeting is null). Optional.
After you set isOnlineMeeting to true, Microsoft Graph initializes onlineMeeting. Subsequently Outlook ignores any further changes to isOnlineMeeting, and the meeting remains available online.
isOrganizer Boolean Set to true if the calendar owner (specified by the owner property of the calendar) is the organizer of the event (specified by the organizer property of the event). This also applies if a delegate organized the event on behalf of the owner.
isReminderOn Boolean Set to true if an alert is set to remind the user of the event.
lastModifiedDateTime DateTimeOffset 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
location Location The location of the event.
locations Location collection The locations where the event is held or attended from. The location and locations properties always correspond with each other. If you update the location property, any prior locations in the locations collection would be removed and replaced by the new location value.
onlineMeeting OnlineMeetingInfo Details for an attendee to join the meeting online. Default is null. Read-only.
After you set the isOnlineMeeting and onlineMeetingProvider properties to enable a meeting online, Microsoft Graph initializes onlineMeeting. When set, the meeting remains available online, and you cannot change the isOnlineMeeting, onlineMeetingProvider, and onlneMeeting properties again.
onlineMeetingProvider onlineMeetingProviderType Represents the online meeting service provider. By default, onlineMeetingProvider is unknown. The possible values are unknown, teamsForBusiness, skypeForBusiness, and skypeForConsumer. Optional.
After you set onlineMeetingProvider, Microsoft Graph initializes onlineMeeting. Subsequently you cannot change onlineMeetingProvider again, and the meeting remains available online.
onlineMeetingUrl String A URL for an online meeting. The property is set only when an organizer specifies in Outlook that an event is an online meeting such as Skype. Read-only.
To access the URL to join an online meeting, use joinUrl which is exposed via the onlineMeeting property of the event. The onlineMeetingUrl property will be deprecated in the future.
organizer Recipient The organizer of the event.
originalEndTimeZone String The end time zone that was set when the event was created. A value of tzone://Microsoft/Custom indicates that a legacy custom time zone was set in desktop Outlook.
originalStart DateTimeOffset Represents the start time of an event when it is initially created as an occurrence or exception in a recurring series. This property is not returned for events that are single instances. Its date and time information is expressed in ISO 8601 format and is always in UTC. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z
originalStartTimeZone String The start time zone that was set when the event was created. A value of tzone://Microsoft/Custom indicates that a legacy custom time zone was set in desktop Outlook.
recurrence PatternedRecurrence The recurrence pattern for the event.
reminderMinutesBeforeStart Int32 The number of minutes before the event start time that the reminder alert occurs.
responseRequested Boolean Default is true, which represents the organizer would like an invitee to send a response to the event.
responseStatus ResponseStatus Indicates the type of response sent in response to an event message.
sensitivity String Possible values are: normal, personal, private, confidential.
seriesMasterId String The ID for the recurring series master item, if this event is part of a recurring series.
showAs String The status to show. Possible values are: free, tentative, busy, oof, workingElsewhere, unknown.
start DateTimeTimeZone The start date, time, and time zone of the event. By default, the start time is in UTC.
subject String The text of the event's subject line.
transactionId String A custom identifier specified by a client app for the server to avoid redundant POST operations in case of client retries to create the same event. This is useful when low network connectivity causes the client to time out before receiving a response from the server for the client's prior create-event request. After you set transactionId when creating an event, you cannot change transactionId in a subsequent update. This property is only returned in a response payload if an app has set it. Optional.
type String The event type. Possible values are: singleInstance, occurrence, exception, seriesMaster. Read-only
webLink String The URL to open the event in Outlook on the web.

Outlook on the web opens the event in the browser if you are signed in to your mailbox. Otherwise, Outlook on the web prompts you to sign in.

This URL cannot be accessed from within an iFrame.

eventMessage

Property Type Description
bccRecipients recipient collection The Bcc: recipients for the message.
body itemBody The body of the message. It can be in HTML or text format.
bodyPreview String The first 255 characters of the message body. It is in text format.
categories String collection The categories associated with the message.
ccRecipients recipient collection The Cc: recipients for the message.
changeKey String The version of the message.
conversationId String The ID of the conversation the email belongs to.
conversationIndex Edm.Binary Indicates the position of the message within the conversation.
createdDateTime DateTimeOffset The date and time the message was created.
flag followupFlag The flag value that indicates the status, start date, due date, or completion date for the message.
from recipient The owner of the mailbox from which the message is sent. In most cases, this value is the same as the sender property, except for sharing or delegation scenarios. The value must correspond to the actual mailbox used. Find out more about setting the from and sender properties of a message.
hasAttachments Boolean Indicates whether the message has attachments.
id String Unique identifier for the event message. !INCLUDE [outlook-beta-id] Read-only.
importance String The importance of the message: low, normal, high.
inferenceClassification String The possible values are: focused, other.
internetMessageHeaders internetMessageHeader collection The collection of message headers, defined by RFC5322, that provide details of the network path taken by a message from the sender to the recipient. Read-only.
internetMessageId String The message ID in the format specified by RFC2822.
isDelegated Boolean True if this meeting request is accessible to a delegate, false otherwise. Default is false.
isDeliveryReceiptRequested Boolean Indicates whether a read receipt is requested for the message.
isDraft Boolean Indicates whether the message is a draft. A message is a draft if it hasn't been sent yet.
isRead Boolean Indicates whether the message has been read.
isReadReceiptRequested Boolean Indicates whether a read receipt is requested for the message.
lastModifiedDateTime DateTimeOffset The date and time the message was last changed.
meetingMessageType meetingMessageType The type of event message: none, meetingRequest, meetingCancelled, meetingAccepted, meetingTenativelyAccepted, meetingDeclined.
parentFolderId String The unique identifier for the message's parent mailFolder.
receivedDateTime DateTimeOffset The date and time the message was received.
replyTo recipient collection The email addresses to use when replying.
sender recipient The account that is actually used to generate the message. In most cases, this value is the same as the from property. You can set this property to a different value when sending a message from a shared mailbox, for a shared calendar, or as a delegate. In any case, the value must correspond to the actual mailbox used. Find out more about setting the from and sender properties of a message.
sentDateTime DateTimeOffset The date and time the message was sent.
subject String The subject of the message.
toRecipients recipient collection The To: recipients for the message.
uniqueBody itemBody The part of the body of the message that is unique to the current message.
webLink String The URL to open the message in Outlook on the web.

You can append an ispopout argument to the end of the URL to change how the message is displayed. If ispopout is not present or if it is set to 1, then the message is shown in a popout window. If ispopout is set to 0, then the browser will show the message in the Outlook on the web review pane.

The message will open in the browser if you are logged in to your mailbox via Outlook on the web. You will be prompted to login if you are not already logged in with the browser.

This URL cannot be accessed from within an iFrame.

inferenceClassificationOverride

Property Type Description
classifyAs inferenceClassificationType Specifies how incoming messages from a specific sender should always be classified as. The possible values are: focused, other.
id string The unique identifier of the override. Read-only.
senderEmailAddress emailAddress The email address information of the sender for whom the override is created.

mailFolder

Property Type Description
childFolderCount Int32 The number of immediate child mailFolders in the current mailFolder.
displayName String The mailFolder's display name.
id String The mailFolder's unique identifier.
isHidden Boolean Indicates whether the mailFolder is hidden. This property can be set only when creating the folder. Find more information in Hidden mail folders.
parentFolderId String The unique identifier for the mailFolder's parent mailFolder.
totalItemCount Int32 The number of items in the mailFolder.
unreadItemCount Int32 The number of items in the mailFolder marked as unread.

mailSearchFolder

Property Type Description
filterQuery String The OData query to filter the messages.
includeNestedFolders Boolean Indicates how the mailbox folder hierarchy should be traversed in the search. true means that a deep search should be done to include child folders in the hierarchy of each folder explicitly specified in sourceFolderIds. false means a shallow search of only each of the folders explicitly specified in sourceFolderIds.
isSupported Boolean Indicates whether a search folder is editable using REST APIs.
sourceFolderIds String collection The mailbox folders that should be mined.

mailTips

Property Type Description
automaticReplies automaticRepliesMailTips Mail tips for automatic reply if it has been set up by the recipient.
customMailTip String A custom mail tip that can be set on the recipient's mailbox.
deliveryRestricted Boolean Whether the recipient's mailbox is restricted, for example, accepting messages from only a predefined list of senders, rejecting messages from a predefined list of senders, or accepting messages from only authenticated senders.
emailAddress emailAddress The email address of the recipient to get mailtips for.
error mailTipsError Errors that occur during the getMailTips action.
externalMemberCount Int32 The number of external members if the recipient is a distribution list.
isModerated Boolean Whether sending messages to the recipient requires approval. For example, if the recipient is a large distribution list and a moderator has been set up to approve messages sent to that distribution list, or if sending messages to a recipient requires approval of the recipient's manager.
mailboxFull Boolean The mailbox full status of the recipient.
maxMessageSize Int32 The maximum message size that has been configured for the recipient's organization or mailbox.
recipientScope recipientScopeType The scope of the recipient. Possible values are: none, internal, external, externalPartner, externalNonParther. For example, an administrator can set another organization to be its "partner". The scope is useful if an administrator wants certain mailtips to be accessible to certain scopes. It's also useful to senders to inform them that their message may leave the organization, helping them make the correct decisions about wording, tone and content.
recipientSuggestions recipient collection Recipients suggested based on previous contexts where they appear in the same message.
totalMemberCount Int32 The number of members if the recipient is a distribution list.

manage-focused-inbox

mention

Property Type Description
application String The name of the application where the mention is created. Optional. Not used and defaulted as null for message.
clientReference String A unique identifier that represents a parent of the resource instance. Optional. Not used and defaulted as null for message.
createdBy emailAddress The email information of the user who made the mention.
createdDateTime DateTimeOffset The date and time that the mention is created on the client.
deepLink String A deep web link to the context of the mention in the resource instance. Optional. Not used and defaulted as null for message.
id String The unique identifier of a mention in a resource instance.
mentioned emailAddress The email information of the mentioned person. Required.
mentionText String Optional. Not used and defaulted as null for message. To get the mentions in a message, see the bodyPreview property of the message instead.
serverCreatedDateTime DateTimeOffset The date and time that the mention is created on the server. Optional. Not used and defaulted as null for **m

message

Property Type Description
bccRecipients recipient collection The Bcc: recipients for the message.
body itemBody The body of the message. It can be in HTML or text format. Find out about safe HTML in a message body.
bodyPreview String The first 255 characters of the message body. It is in text format.
categories String collection The categories associated with the message.
ccRecipients recipient collection The Cc: recipients for the message.
changeKey String The version of the message.
conversationId String The ID of the conversation the email belongs to.
conversationIndex Edm.Binary Indicates the position of the message within the conversation.
createdDateTime DateTimeOffset The date and time the message was created.

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.
flag followupFlag The flag value that indicates the status, start date, due date, or completion date for the message.
from recipient The owner of the mailbox from which the message is sent. In most cases, this value is the same as the sender property, except for sharing or delegation scenarios. The value must correspond to the actual mailbox used. Find out more about setting the from and sender properties of a message.
hasAttachments Boolean Indicates whether the message has attachments. This property doesn't include inline attachments, so if a message contains only inline attachments, this property is false. To verify the existence of inline attachments, parse the body property to look for a src attribute, such as <IMG src="cid:[email protected]">.
id String Unique identifier for the message. !INCLUDE [outlook-beta-id] Read-only.
importance importance The importance of the message. The possible values are: low, normal, and high.
inferenceClassification inferenceClassificationType The classification of the message for the user, based on inferred relevance or importance, or on an explicit override. The possible values are: focused or other.
internetMessageHeaders internetMessageHeader collection A collection of message headers defined by RFC5322. The set includes message headers indicating the network path taken by a message from the sender to the recipient. It can also contain custom message headers that hold app data for the message.

Returned only on applying a $select query option. Read-only.
internetMessageId String The message ID in the format specified by RFC2822.
isDeliveryReceiptRequested Boolean Indicates whether a read receipt is requested for the message.
isDraft Boolean Indicates whether the message is a draft. A message is a draft if it hasn't been sent yet.
isRead Boolean Indicates whether the message has been read.
isReadReceiptRequested Boolean Indicates whether a read receipt is requested for the message.
lastModifiedDateTime DateTimeOffset The date and time the message was last changed.

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.
parentFolderId String The unique identifier for the message's parent mailFolder.
receivedDateTime DateTimeOffset The date and time the message was received.

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.
replyTo recipient collection The email addresses to use when replying.
sender recipient The account that is actually used to generate the message. In most cases, this value is the same as the from property. You can set this property to a different value when sending a message from a shared mailbox, for a shared calendar, or as a delegate. In any case, the value must correspond to the actual mailbox used. Find out more about setting the from and sender properties of a message.
sentDateTime DateTimeOffset The date and time the message was sent.

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.
subject String The subject of the message.
toRecipients recipient collection The To: recipients for the message.
uniqueBody itemBody The part of the body of the message that is unique to the current message. uniqueBody is not returned by default but can be retrieved for a given message by use of the ?$select=uniqueBody query. It can be in HTML or text format.
webLink String The URL to open the message in Outlook on the web.

You can append an ispopout argument to the end of the URL to change how the message is displayed. If ispopout is not present or if it is set to 1, then the message is shown in a popout window. If ispopout is set to 0, then the browser will show the message in the Outlook on the web review pane.

The message will open in the browser if you are logged in to your mailbox via Outlook on the web. You will be prompted to login if you are not already logged in with the browser.

This URL cannot be accessed from within an iFrame.

search-api-overview

searchRequest

Property Type Description
aggregationFilters String collection Contains one or more filters to obtain search results aggregated and filtered to a specific value of a field. Optional.
Build this filter based on a prior search that aggregates by the same field. From the response of the prior search, identify the searchBucket that filters results to the specific value of the field, use the string in its aggregationFilterToken property, and build an aggregation filter string in the format "{field}:\"{aggregationFilterToken}\"".
If multiple values for the same field need to be provided, use the strings in its aggregationFilterToken property and build an aggregation filter string in the format "{field}:or(\"{aggregationFilterToken1}\",\"{aggregationFilterToken2}\")".
For example, searching and aggregating drive items by file type returns a searchBucket for the file type docx in the response. You can conveniently use the aggregationFilterToken returned for this searchBucket in a subsequent search query and filter matches down to drive items of the docx file type. Example 1 and example 2 show the actual requests and responses.
aggregations aggregationOption collection Specifies aggregations (also known as refiners) to be returned alongside search results. Optional.
contentSources String collection Contains the connection to be targeted.
enableTopResults Boolean This triggers hybrid sort for messages : the first 3 messages are the most relevant. This property is only applicable to entityType=message. Optional.
entityTypes entityType collection One or more types of resources expected in the response. Possible values are: list, site, listItem, message, event, drive, driveItem, externalItem. See known limitations for those combinations of two or more entity types that are supported in the same search request. Required.
fields String collection Contains the fields to be returned for each resource object specified in entityTypes, allowing customization of the fields returned by default; otherwise, including additional fields such as custom managed properties from SharePoint and OneDrive, or custom fields in externalItem from the content that Microsoft Graph connectors bring in. The fields property can use the semantic labels applied to properties. For example, if a property is labeled as title, you can retrieve it using the following syntax: label_title. Optional.
from Int32 Specifies the offset for the search results. Offset 0 returns the very first result. Optional.
query searchQuery Contains the query terms. Required.
queryAlterationOptions searchAlterationOptions Query alteration options formatted in a JSON blob that contains two optional flags related to spelling correction. Optional.
region String The geographic location for the search. Required for searches that use application permissions. For details, see Get the region value.
resultTemplateOptions resultTemplateOption collection Provides the search result template options to render search results from connectors.
sharePointOneDriveOptions sharePointOneDriveOptions Indicates the kind of contents to be searched when a search is performed using application permissions. Optional.
size Int32 The size of the page to be retrieved.The maximum value is 1000. Optional.
sortProperties sortProperty collection Contains the ordered collection of fields and direction to sort results. There can be at most 5 sort properties in the collection. Optional.

searchResponse

Property Type Description
hitsContainers searchHitsContainer collection A collection of search results.
queryAlterationResponse alterationResponse Provides information related to spelling corrections in the alteration response.
resultTemplates resultTemplate collection A dictionary of resultTemplateIds and associated values, which include the name and JSON schema of the result templates.
searchTerms String collection Contains the search terms sent in the initial search query.

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