List messages

Get the messages in the signed-in user's mailbox (including the Deleted Items and Clutter folders).


One of the following scopes is required to execute this API: Mail.Read; Mail.ReadWrite

HTTP request

To get all the messages in a user's mailbox:

GET /me/messages
GET /users/{id | userPrincipalName}/messages

To get messages in a specific folder in the user's mailbox:

GET /me/mailFolders/{id}/messages
GET /users/{id | userPrincipalName}/mailFolders/{id}/messages

Optional query parameters

This method supports the OData Query Parameters to help customize the response.

Request headers

Header Value
Authorization Bearer . Required.
Content-Type application/json

Request body

Do not supply a request body for this method.


If successful, this method returns a 200 OK response code and collection of Message objects in the response body.

The default page size for this request is 10 messages.



Here is an example of the request.


Here is an example of the response. Note: The response object shown here may be truncated for brevity. All of the properties will be returned from an actual call.

HTTP/1.1 200 OK
Content-type: application/json
Content-length: 317

  "value": [
      "receivedDateTime": "datetime-value",
      "sentDateTime": "datetime-value",
      "hasAttachments": true,
      "subject": "subject-value",
      "body": {
        "contentType": "",
        "content": "content-value"
      "bodyPreview": "bodyPreview-value"