message resource type
Namespace: microsoft.graph
Important
APIs under the /beta
version in Microsoft Graph are subject to change. Use of these APIs in production applications is not supported. To determine whether an API is available in v1.0, use the Version selector.
A message in a mailbox folder.
The maximum total number of recipients included in the toRecipients, ccRecipients, and bccRecipients properties for a single email message sent from an Exchange Online mailbox is 500. For more information, see sending limits.
This resource supports:
- Adding your own data as custom Internet message headers. Add custom headers only when creating a message, and name them starting with "x-". After the message is sent, you can't modify the headers. To get the headers of a message, apply the
$select
query parameter in a get message operation. - Adding your own data as custom properties as extensions.
- Subscribing to change notifications.
- Using delta query to track incremental additions, deletions, and updates, by providing a delta function.
Methods
Method | Return type | Description |
---|---|---|
List messages | message collection | Get all the messages in the signed-in user's mailbox (including the Deleted Items and Clutter folders). |
Create draft message | message | Create a draft of a new message. |
Get message | message | Read properties and relationships of message object. |
Update message | message | Update message object. |
Delete message | None | Delete message object. |
Copy message | Message | Copy a message to a folder. |
Create draft to forward message | Message | Create a draft forward message to include a comment or update any message properties all in one createForward call. You can then update or send the draft. |
Create draft to reply | Message | Create a draft of a reply message to include a comment or update any message properties all in one createReply call. You can then update or send the draft. |
Create draft to reply-all | Message | Create a draft of a reply-all message to include a comment or update any message properties, all in one createReplyAll call. You can then update or send the draft. |
Get message delta | message collection | Get a set of messages that were added, deleted, or updated in a specified folder. |
Forward message | None | Forward a message, add a comment or modify any updateable properties all in one forward call. The message is then saved in the Sent Items folder. |
Mark as junk | message | Mark a message as junk. This API adds the sender to the list of blocked senders and moves the message to the Junk Email folder, when moveToJunk is true . |
Mark as not junk | message | Mark a message as not junk. This API removes the sender from the list of blocked senders and moves the message to the Inbox folder, when moveToInbox is true . |
Move message | Message | Move the message to a folder. This API creates a new copy of the message in the destination folder. |
Reply to message | None | Reply to the sender of a message, add a comment or modify any updateable properties all in one reply call. The message is then saved in the Sent Items folder. |
Reply-all to message | None | Reply to all the recipients of a message by specifying a comment and modifying any updateable properties for the reply, all by using the replyAll method. The message is then saved in the Sent Items folder. |
Send draft message | None | Sends a previously created message draft. The message is then saved in the Sent Items folder. |
Recall message | message | Recall a message in the specified user's mailbox Sent Items folder. |
Unsubscribe | None | Send a message using the data and address specified in the first mailto command in the List-Unsubscribe header. |
Permanently delete | None | Permanently delete a message and place it in the Purges folder in the Recoverable Items folder in the user's mailbox. |
Attachments | ||
List attachments | Attachment collection | Get all attachments on a message. |
Add attachment | Attachment | Add a new attachment to a message by posting to the attachments 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. |
Extended properties | ||
Create single-value property | message | Create one or more single-value extended properties in a new or existing message. |
Get single-value property | message | Get messages that contain a single-value extended property by using $expand or $filter . |
Create multi-value property | message | Create one or more multi-value extended properties in a new or existing message. |
Get multi-value property | message | Get a message that contains a multi-value extended property by using $expand . |
Properties
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. If the message contains instances of mention, this property would contain a concatenation of these mentions as well. |
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:image001.jpg@01D26CD8.6C05F070"> . |
id | String | Unique identifier for the message. By default, this value changes when the item is moved from one container (such as a folder or calendar) to another. To change this behavior, use the Prefer: IdType="ImmutableId" header. See Get immutable identifiers for Outlook resources for more information. 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. Possible values are: focused , 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 RFC5322. Updatable only if isDraft is true. |
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 . |
mentionsPreview | mentionsPreview | Information about mentions in the message. When processing a GET /messages request, the server sets this property and includes it in the response by default. The server returns null if there are no mentions in the message. Optional. |
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. |
unsubscribeData | String | The valid entries parsed from the List-Unsubscribe header. This is the data for the mail command in the List-Unsubscribe header if UnsubscribeEnabled property is true. |
unsubscribeEnabled | Boolean | Indicates whether the message is enabled for unsubscribe. Its valueTrue if the list-Unsubscribe header conforms to rfc-2369. |
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, the browser shows the message in the Outlook on the web review pane. The message opens in the browser if you are signed in to your mailbox via Outlook on the web. You are prompted to sign in if you are not already signed in with the browser. This URL cannot be accessed from within an iFrame. |
Relationships
Relationship | Type | Description |
---|---|---|
attachments | Attachment collection | The fileAttachment and itemAttachment attachments for the message. |
extensions | Extension collection | The collection of open extensions defined for the message. Nullable. |
mentions | mention collection | A collection of mentions in the message, ordered by the createdDateTime from the newest to the oldest. By default, a GET /messages does not return this property unless you apply $expand on the property. |
multiValueExtendedProperties | multiValueLegacyExtendedProperty collection | The collection of multi-value extended properties defined for the message. Nullable. |
singleValueExtendedProperties | singleValueLegacyExtendedProperty collection | The collection of single-value extended properties defined for the message. Nullable. |
JSON representation
The following is a JSON representation of the resource
{
"bccRecipients": [{"@odata.type": "microsoft.graph.recipient"}],
"body": {"@odata.type": "microsoft.graph.itemBody"},
"bodyPreview": "string",
"categories": ["string"],
"ccRecipients": [{"@odata.type": "microsoft.graph.recipient"}],
"changeKey": "string",
"conversationId": "string",
"conversationIndex": "String (binary)",
"createdDateTime": "String (timestamp)",
"flag": {"@odata.type": "microsoft.graph.followupFlag"},
"from": {"@odata.type": "microsoft.graph.recipient"},
"hasAttachments": true,
"id": "string (identifier)",
"importance": "String",
"inferenceClassification": "String",
"internetMessageHeaders": [{"@odata.type": "microsoft.graph.internetMessageHeader"}],
"internetMessageId": "String",
"isDeliveryReceiptRequested": true,
"isDraft": true,
"isRead": true,
"isReadReceiptRequested": true,
"lastModifiedDateTime": "String (timestamp)",
"mentionsPreview": {"@odata.type": "microsoft.graph.mentionsPreview"},
"parentFolderId": "string",
"receivedDateTime": "String (timestamp)",
"replyTo": [{"@odata.type": "microsoft.graph.recipient"}],
"sender": {"@odata.type": "microsoft.graph.recipient"},
"sentDateTime": "String (timestamp)",
"subject": "string",
"toRecipients": [{"@odata.type": "microsoft.graph.recipient"}],
"uniqueBody": {"@odata.type": "microsoft.graph.itemBody"},
"unsubscribeData": "string",
"unsubscribeEnabled": true,
"webLink": "string",
"attachments": [{"@odata.type": "microsoft.graph.attachment"}],
"extensions": [{"@odata.type": "microsoft.graph.extension"}],
"mentions": [{"@odata.type": "microsoft.graph.mention"}],
"multiValueExtendedProperties": [{"@odata.type": "microsoft.graph.multiValueLegacyExtendedProperty"}],
"singleValueExtendedProperties": [{"@odata.type": "microsoft.graph.singleValueLegacyExtendedProperty"}]
}