Method: users.messages.list

Lists the messages in the user's mailbox.

HTTP request

GET https://gmail.googleapis.com/gmail/v1/users/{userId}/messages

The URL uses gRPC Transcoding syntax.

Path parameters

Parameters
userId

string

The user's email address. The special value me can be used to indicate the authenticated user.

Query parameters

Parameters
maxResults

integer (uint32 format)

Maximum number of messages to return.

pageToken

string

Page token to retrieve a specific page of results in the list.

q

string

Only return messages matching the specified query. Supports the same query format as the Gmail search box. For example, "from:someuser@example.com rfc822msgid:<somemsgid@example.com> is:unread". Parameter cannot be used when accessing the api using the gmail.metadata scope.

labelIds

string

Only return messages with labels that match all of the specified label IDs.

includeSpamTrash

boolean

Include messages from SPAM and TRASH in the results.

Request body

The request body must be empty.

Response body

If successful, the response body contains data with the following structure:

JSON representation
{
  "messages": [
    {
      object (Message)
    }
  ],
  "nextPageToken": string,
  "resultSizeEstimate": integer
}
Fields
messages[]

object (Message)

List of messages. Note that each message resource contains only an id and a threadId. Additional message details can be fetched using the messages.get method.

nextPageToken

string

Token to retrieve the next page of results in the list.

resultSizeEstimate

integer (uint32 format)

Estimated total number of results.

Authorization Scopes

Requires one of the following OAuth scopes:

  • https://mail.google.com/
  • https://www.googleapis.com/auth/gmail.modify
  • https://www.googleapis.com/auth/gmail.readonly
  • https://www.googleapis.com/auth/gmail.metadata

For more information, see the OAuth 2.0 Overview.