---
title: "List mailFolders"
method: GET
path: "/me/mailFolders"
tags: ["me.mailFolder"]
---

# List mailFolders

`GET /me/mailFolders`

Get the mail folder collection directly under the root folder of the signed-in user. The returned collection includes any mail search folders directly under the root. By default, this operation does not return hidden folders. Use the includeHiddenFolders query parameter to include them in the response.

## Query parameters

- `includeHiddenFolders` boolean
- `$top` integer
- `$skip` integer
- `$search` string
- `$filter` string
- `$count` boolean
- `$orderby` string[]
- `$select` string[]
- `$expand` string[]

## Response `2XX`

Retrieved collection

- MicrosoftGraphMailFolderCollectionResponse
  - `@odata.nextLink` string, nullable
  - `@odata.count` integer, nullable
  - `value` MicrosoftGraphMailFolder[]
    - `@odata.type` string
    - `id` string — The unique identifier for an entity. Read-only
    - `childFolderCount` number, nullable — The number of immediate child mailFolders in the current mailFolder
    - `parentFolderId` string, nullable — The unique identifier for the mailFolder's parent mailFolder
    - `displayName` string, nullable — The mailFolder's display name
    - `childFolders` MicrosoftGraphMailFolder[] — The collection of child folders in the mailFolder
    - `messages` MicrosoftGraphMessage[] — The collection of messages in the mailFolder
      - `@odata.type` string
      - `id` string — The unique identifier for an entity. Read-only
      - `changeKey` string, nullable — Identifies the version of the item. Every time the item is changed, changeKey changes as well. This allows Exchange to apply changes to the correct version of the object. Read-only
      - `lastModifiedDateTime` string, date-time, nullable — 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
      - `createdDateTime` string, date-time, nullable — 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
      - `categories` string[] — The categories associated with the item
      - `flag` union — Indicates the status, start date, due date, or completion date for the message
        - MicrosoftGraphFollowupFlag
          - `startDateTime` union — The date and time that the follow-up is to begin
            - MicrosoftGraphDateTimeTimeZone
              - …
            - object, nullable
          - `dueDateTime` union — The date and time that the follow-up is to be finished. Note: To set the due date, you must also specify the startDateTime; otherwise, you get a 400 Bad Request response
            - MicrosoftGraphDateTimeTimeZone
              - …
            - object, nullable
          - `flagStatus` union — The status for follow-up for an item. Possible values are notFlagged, complete, and flagged
            - 'notFlagged' | 'complete' | 'flagged'
            - object, nullable
          - `@odata.type` string
          - `completedDateTime` union — The date and time that the follow-up was finished
            - MicrosoftGraphDateTimeTimeZone
              - …
            - object, nullable
        - object, nullable
      - `attachments` MicrosoftGraphAttachment[] — The fileAttachment and itemAttachment attachments for the message
        - `@odata.type` string
        - `id` string — The unique identifier for an entity. Read-only
        - `lastModifiedDateTime` string, date-time, nullable — 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
        - `size` number — The length of the attachment in bytes
        - `name` string, nullable — The attachment's file name
        - `isInline` boolean — true if the attachment is an inline attachment; otherwise, false
        - `contentType` string, nullable — The MIME type
        - `contentBytes` string, base64url, nullable — The base64-encoded contents of the file attachment. Required only for file attachments
      - `parentFolderId` string, nullable — The unique identifier for the message's parent mailFolder
      - `importance` union — The importance of the message. The possible values are: low, normal, and high
        - 'low' | 'normal' | 'high'
        - object, nullable
      - `subject` string, nullable — The subject of the message
      - `webLink` string, nullable — The URL to open the message in Outlook on the web
      - `isDraft` boolean, nullable — Indicates whether the message is a draft. A message is a draft if it hasn't been sent yet
      - `isRead` boolean, nullable — Indicates whether the message has been read
      - `bodyPreview` string, nullable — The first 255 characters of the message body. It is in text format
      - `body` union — The body of the message. It can be in HTML or text format. Find out about safe HTML in a message body
        - MicrosoftGraphItemBody
          - `@odata.type` string
          - `contentType` union — The type of the content. Possible values are text and html
            - 'text' | 'html'
            - object, nullable
          - `content` string, nullable — The content of the item
        - object, nullable
      - `inferenceClassification` union — The classification of the message for the user, based on inferred relevance or importance, or on an explicit override
        - 'focused' | 'other'
        - object, nullable
      - `internetMessageId` string, nullable — The message ID in the format specified by RFC2822
      - `toRecipients` MicrosoftGraphRecipient[] — The To: recipients for the message
        - `emailAddress` union — The recipient's email address
          - MicrosoftGraphEmailAddress
            - `address` string, nullable — The email address of the person or entity
            - `@odata.type` string
            - `name` string, nullable — The display name of the person or entity
          - object, nullable
        - `@odata.type` string
      - `isReadReceiptRequested` boolean, nullable — Indicates whether a read receipt is requested for the message
      - `from` union — 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
        - MicrosoftGraphRecipient
          - `emailAddress` union — The recipient's email address
            - MicrosoftGraphEmailAddress
              - …
            - object, nullable
          - `@odata.type` string
        - object, nullable
      - `uniqueBody` union — 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 with $select=uniqueBody
        - MicrosoftGraphItemBody
          - `@odata.type` string
          - `contentType` union — The type of the content. Possible values are text and html
            - 'text' | 'html'
            - object, nullable
          - `content` string, nullable — The content of the item
        - object, nullable
      - `hasAttachments` boolean, nullable — 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
      - `sentDateTime` string, date-time, nullable — The date and time the message was sent. The date and time information uses ISO 8601 format and is always in UTC time
      - `conversationIndex` string, base64url, nullable — Indicates the position of the message within the conversation
      - `conversationId` string, nullable — The ID of the conversation the email belongs to
      - `internetMessageHeaders` MicrosoftGraphInternetMessageHeader[] — 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
        - `@odata.type` string
        - `name` string, nullable — Represents the key in a key-value pair
        - `value` string, nullable — The value in a key-value pair
      - `receivedDateTime` string, date-time, nullable — The date and time the message was received. The date and time information uses ISO 8601 format and is always in UTC time
      - `extensions` MicrosoftGraphExtension[] — The collection of open extensions defined for the message. Nullable
        - `@odata.type` string
        - `id` string — The unique identifier for an entity. Read-only
      - `sender` union — The account that is used to generate the message. In most cases, this value is the same as the from property
        - MicrosoftGraphRecipient
          - `emailAddress` union — The recipient's email address
            - MicrosoftGraphEmailAddress
              - …
            - object, nullable
          - `@odata.type` string
        - object, nullable
      - `bccRecipients` MicrosoftGraphRecipient[] — The Bcc: recipients for the message
        - `emailAddress` union — The recipient's email address
          - MicrosoftGraphEmailAddress
            - `address` string, nullable — The email address of the person or entity
            - `@odata.type` string
            - `name` string, nullable — The display name of the person or entity
          - object, nullable
        - `@odata.type` string
      - `ccRecipients` MicrosoftGraphRecipient[] — The Cc: recipients for the message
        - `emailAddress` union — The recipient's email address
          - MicrosoftGraphEmailAddress
            - `address` string, nullable — The email address of the person or entity
            - `@odata.type` string
            - `name` string, nullable — The display name of the person or entity
          - object, nullable
        - `@odata.type` string
      - `isDeliveryReceiptRequested` boolean, nullable — Indicates whether a read receipt is requested for the message
      - `replyTo` MicrosoftGraphRecipient[] — The email addresses to use when replying
        - `emailAddress` union — The recipient's email address
          - MicrosoftGraphEmailAddress
            - `address` string, nullable — The email address of the person or entity
            - `@odata.type` string
            - `name` string, nullable — The display name of the person or entity
          - object, nullable
        - `@odata.type` string
    - `unreadItemCount` number, nullable — The number of items in the mailFolder marked as unread
    - `isHidden` boolean, nullable — Indicates whether the mailFolder is hidden. This property can be set only when creating the folder
    - `totalItemCount` number, nullable — The number of items in the mailFolder

## Other responses

- `4XX` — error
- `5XX` — error

---

[API](https://skmtc.net/ballerina-platform/apis/microsoft-graph-mail-api.md) · [All operations](https://skmtc.net/ballerina-platform/apis/microsoft-graph-mail-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ballerina-platform/microsoft-graph-mail-api/versions/af62694b9f2d/schema)
