Returns the attachments Resource.
batchDelete(userId=*, body=None)
Deletes many messages by message ID. Provides no guarantees that messages were not already deleted or even existed at all.
batchModify(userId=*, body=None)
Modifies the labels on the specified messages.
Immediately and permanently deletes the specified message. This operation cannot be undone. Prefer messages.trash instead.
get(userId=*, id=*, format=None, metadataHeaders=None)
Gets the specified message.
Imports a message into only this user's mailbox, with standard email delivery scanning and classification similar to receiving via SMTP. Does not send a message.
Directly inserts a message into only this user's mailbox similar to IMAP APPEND, bypassing most scanning and classification. Does not send a message.
list(userId=*, labelIds=None, q=None, pageToken=None, maxResults=None, includeSpamTrash=None)
Lists the messages in the user's mailbox.
list_next(previous_request=*, previous_response=*)
Retrieves the next page of results.
modify(userId=*, id=*, body=None)
Modifies the labels on the specified message.
send(userId=*, body=None, media_body=None, media_mime_type=None)
Sends the specified message to the recipients in the To, Cc, and Bcc headers.
Moves the specified message to the trash.
Removes the specified message from the trash.
batchDelete(userId=*, body=None)
Deletes many messages by message ID. Provides no guarantees that messages were not already deleted or even existed at all. Args: userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required) body: object, The request body. The object takes the form of: { "ids": [ # The IDs of the messages to delete. "A String", ], }
batchModify(userId=*, body=None)
Modifies the labels on the specified messages. Args: userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required) body: object, The request body. The object takes the form of: { "removeLabelIds": [ # A list of label IDs to remove from messages. "A String", ], "ids": [ # The IDs of the messages to modify. There is a limit of 1000 ids per request. "A String", ], "addLabelIds": [ # A list of label IDs to add to messages. "A String", ], }
delete(userId=*, id=*)
Immediately and permanently deletes the specified message. This operation cannot be undone. Prefer messages.trash instead. Args: userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required) id: string, The ID of the message to delete. (required)
get(userId=*, id=*, format=None, metadataHeaders=None)
Gets the specified message. Args: userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required) id: string, The ID of the message to retrieve. (required) format: string, The format to return the message in. Allowed values full - metadata - minimal - raw - metadataHeaders: string, When given and format is METADATA, only include headers specified. (repeated) Returns: An object of the form: { # An email message. "internalDate": "A String", # The internal message creation timestamp (epoch ms), which determines ordering in the inbox. For normal SMTP-received email, this represents the time the message was originally accepted by Google, which is more reliable than the Date header. However, for API-migrated mail, it can be configured by client to be based on the Date header. "historyId": "A String", # The ID of the last history record that modified this message. "payload": { # A single MIME message part. # The parsed email structure in the message parts. "body": { # The body of a single MIME message part. # The message part body for this part, which may be empty for container MIME message parts. "data": "A String", # The body data of a MIME message part as a base64url encoded string. May be empty for MIME container types that have no message body or when the body data is sent as a separate attachment. An attachment ID is present if the body data is contained in a separate attachment. "attachmentId": "A String", # When present, contains the ID of an external attachment that can be retrieved in a separate messages.attachments.get request. When not present, the entire content of the message part body is contained in the data field. "size": 42, # Number of bytes for the message part data (encoding notwithstanding). }, "mimeType": "A String", # The MIME type of the message part. "partId": "A String", # The immutable ID of the message part. "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment. "headers": [ # List of headers on this message part. For the top-level message part, representing the entire message payload, it will contain the standard RFC 2822 email headers such as To, From, and Subject. { "name": "A String", # The name of the header before the : separator. For example, To. "value": "A String", # The value of the header after the : separator. For example, someuser@example.com. }, ], "parts": [ # The child MIME message parts of this part. This only applies to container MIME message parts, for example multipart/*. For non- container MIME message part types, such as text/plain, this field is empty. For more information, see RFC 1521. # Object with schema name: MessagePart ], }, "snippet": "A String", # A short part of the message text. "raw": "A String", # The entire email message in an RFC 2822 formatted and base64url encoded string. Returned in messages.get and drafts.get responses when the format=RAW parameter is supplied. "sizeEstimate": 42, # Estimated size in bytes of the message. "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met: # - The requested threadId must be specified on the Message or Draft.Message you supply with your request. # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard. # - The Subject headers must match. "labelIds": [ # List of IDs of labels applied to this message. "A String", ], "id": "A String", # The immutable ID of the message. }
import_(userId=*, body=None, media_body=None, internalDateSource=None, neverMarkSpam=None, media_mime_type=None, deleted=None, processForCalendar=None)
Imports a message into only this user's mailbox, with standard email delivery scanning and classification similar to receiving via SMTP. Does not send a message. Args: userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required) body: object, The request body. The object takes the form of: { # An email message. "internalDate": "A String", # The internal message creation timestamp (epoch ms), which determines ordering in the inbox. For normal SMTP-received email, this represents the time the message was originally accepted by Google, which is more reliable than the Date header. However, for API-migrated mail, it can be configured by client to be based on the Date header. "historyId": "A String", # The ID of the last history record that modified this message. "payload": { # A single MIME message part. # The parsed email structure in the message parts. "body": { # The body of a single MIME message part. # The message part body for this part, which may be empty for container MIME message parts. "data": "A String", # The body data of a MIME message part as a base64url encoded string. May be empty for MIME container types that have no message body or when the body data is sent as a separate attachment. An attachment ID is present if the body data is contained in a separate attachment. "attachmentId": "A String", # When present, contains the ID of an external attachment that can be retrieved in a separate messages.attachments.get request. When not present, the entire content of the message part body is contained in the data field. "size": 42, # Number of bytes for the message part data (encoding notwithstanding). }, "mimeType": "A String", # The MIME type of the message part. "partId": "A String", # The immutable ID of the message part. "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment. "headers": [ # List of headers on this message part. For the top-level message part, representing the entire message payload, it will contain the standard RFC 2822 email headers such as To, From, and Subject. { "name": "A String", # The name of the header before the : separator. For example, To. "value": "A String", # The value of the header after the : separator. For example, someuser@example.com. }, ], "parts": [ # The child MIME message parts of this part. This only applies to container MIME message parts, for example multipart/*. For non- container MIME message part types, such as text/plain, this field is empty. For more information, see RFC 1521. # Object with schema name: MessagePart ], }, "snippet": "A String", # A short part of the message text. "raw": "A String", # The entire email message in an RFC 2822 formatted and base64url encoded string. Returned in messages.get and drafts.get responses when the format=RAW parameter is supplied. "sizeEstimate": 42, # Estimated size in bytes of the message. "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met: # - The requested threadId must be specified on the Message or Draft.Message you supply with your request. # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard. # - The Subject headers must match. "labelIds": [ # List of IDs of labels applied to this message. "A String", ], "id": "A String", # The immutable ID of the message. } media_body: string, The filename of the media request body, or an instance of a MediaUpload object. internalDateSource: string, Source for Gmail's internal date of the message. Allowed values dateHeader - receivedTime - neverMarkSpam: boolean, Ignore the Gmail spam classifier decision and never mark this email as SPAM in the mailbox. media_mime_type: string, The MIME type of the media request body, or an instance of a MediaUpload object. deleted: boolean, Mark the email as permanently deleted (not TRASH) and only visible in Google Vault to a Vault administrator. Only used for G Suite accounts. processForCalendar: boolean, Process calendar invites in the email and add any extracted meetings to the Google Calendar for this user. Returns: An object of the form: { # An email message. "internalDate": "A String", # The internal message creation timestamp (epoch ms), which determines ordering in the inbox. For normal SMTP-received email, this represents the time the message was originally accepted by Google, which is more reliable than the Date header. However, for API-migrated mail, it can be configured by client to be based on the Date header. "historyId": "A String", # The ID of the last history record that modified this message. "payload": { # A single MIME message part. # The parsed email structure in the message parts. "body": { # The body of a single MIME message part. # The message part body for this part, which may be empty for container MIME message parts. "data": "A String", # The body data of a MIME message part as a base64url encoded string. May be empty for MIME container types that have no message body or when the body data is sent as a separate attachment. An attachment ID is present if the body data is contained in a separate attachment. "attachmentId": "A String", # When present, contains the ID of an external attachment that can be retrieved in a separate messages.attachments.get request. When not present, the entire content of the message part body is contained in the data field. "size": 42, # Number of bytes for the message part data (encoding notwithstanding). }, "mimeType": "A String", # The MIME type of the message part. "partId": "A String", # The immutable ID of the message part. "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment. "headers": [ # List of headers on this message part. For the top-level message part, representing the entire message payload, it will contain the standard RFC 2822 email headers such as To, From, and Subject. { "name": "A String", # The name of the header before the : separator. For example, To. "value": "A String", # The value of the header after the : separator. For example, someuser@example.com. }, ], "parts": [ # The child MIME message parts of this part. This only applies to container MIME message parts, for example multipart/*. For non- container MIME message part types, such as text/plain, this field is empty. For more information, see RFC 1521. # Object with schema name: MessagePart ], }, "snippet": "A String", # A short part of the message text. "raw": "A String", # The entire email message in an RFC 2822 formatted and base64url encoded string. Returned in messages.get and drafts.get responses when the format=RAW parameter is supplied. "sizeEstimate": 42, # Estimated size in bytes of the message. "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met: # - The requested threadId must be specified on the Message or Draft.Message you supply with your request. # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard. # - The Subject headers must match. "labelIds": [ # List of IDs of labels applied to this message. "A String", ], "id": "A String", # The immutable ID of the message. }
insert(userId=*, body=None, media_body=None, internalDateSource=None, media_mime_type=None, deleted=None)
Directly inserts a message into only this user's mailbox similar to IMAP APPEND, bypassing most scanning and classification. Does not send a message. Args: userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required) body: object, The request body. The object takes the form of: { # An email message. "internalDate": "A String", # The internal message creation timestamp (epoch ms), which determines ordering in the inbox. For normal SMTP-received email, this represents the time the message was originally accepted by Google, which is more reliable than the Date header. However, for API-migrated mail, it can be configured by client to be based on the Date header. "historyId": "A String", # The ID of the last history record that modified this message. "payload": { # A single MIME message part. # The parsed email structure in the message parts. "body": { # The body of a single MIME message part. # The message part body for this part, which may be empty for container MIME message parts. "data": "A String", # The body data of a MIME message part as a base64url encoded string. May be empty for MIME container types that have no message body or when the body data is sent as a separate attachment. An attachment ID is present if the body data is contained in a separate attachment. "attachmentId": "A String", # When present, contains the ID of an external attachment that can be retrieved in a separate messages.attachments.get request. When not present, the entire content of the message part body is contained in the data field. "size": 42, # Number of bytes for the message part data (encoding notwithstanding). }, "mimeType": "A String", # The MIME type of the message part. "partId": "A String", # The immutable ID of the message part. "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment. "headers": [ # List of headers on this message part. For the top-level message part, representing the entire message payload, it will contain the standard RFC 2822 email headers such as To, From, and Subject. { "name": "A String", # The name of the header before the : separator. For example, To. "value": "A String", # The value of the header after the : separator. For example, someuser@example.com. }, ], "parts": [ # The child MIME message parts of this part. This only applies to container MIME message parts, for example multipart/*. For non- container MIME message part types, such as text/plain, this field is empty. For more information, see RFC 1521. # Object with schema name: MessagePart ], }, "snippet": "A String", # A short part of the message text. "raw": "A String", # The entire email message in an RFC 2822 formatted and base64url encoded string. Returned in messages.get and drafts.get responses when the format=RAW parameter is supplied. "sizeEstimate": 42, # Estimated size in bytes of the message. "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met: # - The requested threadId must be specified on the Message or Draft.Message you supply with your request. # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard. # - The Subject headers must match. "labelIds": [ # List of IDs of labels applied to this message. "A String", ], "id": "A String", # The immutable ID of the message. } media_body: string, The filename of the media request body, or an instance of a MediaUpload object. internalDateSource: string, Source for Gmail's internal date of the message. Allowed values dateHeader - receivedTime - media_mime_type: string, The MIME type of the media request body, or an instance of a MediaUpload object. deleted: boolean, Mark the email as permanently deleted (not TRASH) and only visible in Google Vault to a Vault administrator. Only used for G Suite accounts. Returns: An object of the form: { # An email message. "internalDate": "A String", # The internal message creation timestamp (epoch ms), which determines ordering in the inbox. For normal SMTP-received email, this represents the time the message was originally accepted by Google, which is more reliable than the Date header. However, for API-migrated mail, it can be configured by client to be based on the Date header. "historyId": "A String", # The ID of the last history record that modified this message. "payload": { # A single MIME message part. # The parsed email structure in the message parts. "body": { # The body of a single MIME message part. # The message part body for this part, which may be empty for container MIME message parts. "data": "A String", # The body data of a MIME message part as a base64url encoded string. May be empty for MIME container types that have no message body or when the body data is sent as a separate attachment. An attachment ID is present if the body data is contained in a separate attachment. "attachmentId": "A String", # When present, contains the ID of an external attachment that can be retrieved in a separate messages.attachments.get request. When not present, the entire content of the message part body is contained in the data field. "size": 42, # Number of bytes for the message part data (encoding notwithstanding). }, "mimeType": "A String", # The MIME type of the message part. "partId": "A String", # The immutable ID of the message part. "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment. "headers": [ # List of headers on this message part. For the top-level message part, representing the entire message payload, it will contain the standard RFC 2822 email headers such as To, From, and Subject. { "name": "A String", # The name of the header before the : separator. For example, To. "value": "A String", # The value of the header after the : separator. For example, someuser@example.com. }, ], "parts": [ # The child MIME message parts of this part. This only applies to container MIME message parts, for example multipart/*. For non- container MIME message part types, such as text/plain, this field is empty. For more information, see RFC 1521. # Object with schema name: MessagePart ], }, "snippet": "A String", # A short part of the message text. "raw": "A String", # The entire email message in an RFC 2822 formatted and base64url encoded string. Returned in messages.get and drafts.get responses when the format=RAW parameter is supplied. "sizeEstimate": 42, # Estimated size in bytes of the message. "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met: # - The requested threadId must be specified on the Message or Draft.Message you supply with your request. # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard. # - The Subject headers must match. "labelIds": [ # List of IDs of labels applied to this message. "A String", ], "id": "A String", # The immutable ID of the message. }
list(userId=*, labelIds=None, q=None, pageToken=None, maxResults=None, includeSpamTrash=None)
Lists the messages in the user's mailbox. Args: userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required) labelIds: string, Only return messages with labels that match all of the specified label IDs. (repeated) 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. pageToken: string, Page token to retrieve a specific page of results in the list. maxResults: integer, Maximum number of messages to return. includeSpamTrash: boolean, Include messages from SPAM and TRASH in the results. Returns: An object of the form: { "nextPageToken": "A String", # Token to retrieve the next page of results in the list. "resultSizeEstimate": 42, # Estimated total number of results. "messages": [ # 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. { # An email message. "internalDate": "A String", # The internal message creation timestamp (epoch ms), which determines ordering in the inbox. For normal SMTP-received email, this represents the time the message was originally accepted by Google, which is more reliable than the Date header. However, for API-migrated mail, it can be configured by client to be based on the Date header. "historyId": "A String", # The ID of the last history record that modified this message. "payload": { # A single MIME message part. # The parsed email structure in the message parts. "body": { # The body of a single MIME message part. # The message part body for this part, which may be empty for container MIME message parts. "data": "A String", # The body data of a MIME message part as a base64url encoded string. May be empty for MIME container types that have no message body or when the body data is sent as a separate attachment. An attachment ID is present if the body data is contained in a separate attachment. "attachmentId": "A String", # When present, contains the ID of an external attachment that can be retrieved in a separate messages.attachments.get request. When not present, the entire content of the message part body is contained in the data field. "size": 42, # Number of bytes for the message part data (encoding notwithstanding). }, "mimeType": "A String", # The MIME type of the message part. "partId": "A String", # The immutable ID of the message part. "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment. "headers": [ # List of headers on this message part. For the top-level message part, representing the entire message payload, it will contain the standard RFC 2822 email headers such as To, From, and Subject. { "name": "A String", # The name of the header before the : separator. For example, To. "value": "A String", # The value of the header after the : separator. For example, someuser@example.com. }, ], "parts": [ # The child MIME message parts of this part. This only applies to container MIME message parts, for example multipart/*. For non- container MIME message part types, such as text/plain, this field is empty. For more information, see RFC 1521. # Object with schema name: MessagePart ], }, "snippet": "A String", # A short part of the message text. "raw": "A String", # The entire email message in an RFC 2822 formatted and base64url encoded string. Returned in messages.get and drafts.get responses when the format=RAW parameter is supplied. "sizeEstimate": 42, # Estimated size in bytes of the message. "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met: # - The requested threadId must be specified on the Message or Draft.Message you supply with your request. # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard. # - The Subject headers must match. "labelIds": [ # List of IDs of labels applied to this message. "A String", ], "id": "A String", # The immutable ID of the message. }, ], }
list_next(previous_request=*, previous_response=*)
Retrieves the next page of results. Args: previous_request: The request for the previous page. (required) previous_response: The response from the request for the previous page. (required) Returns: A request object that you can call 'execute()' on to request the next page. Returns None if there are no more items in the collection.
modify(userId=*, id=*, body=None)
Modifies the labels on the specified message. Args: userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required) id: string, The ID of the message to modify. (required) body: object, The request body. The object takes the form of: { "removeLabelIds": [ # A list IDs of labels to remove from this message. "A String", ], "addLabelIds": [ # A list of IDs of labels to add to this message. "A String", ], } Returns: An object of the form: { # An email message. "internalDate": "A String", # The internal message creation timestamp (epoch ms), which determines ordering in the inbox. For normal SMTP-received email, this represents the time the message was originally accepted by Google, which is more reliable than the Date header. However, for API-migrated mail, it can be configured by client to be based on the Date header. "historyId": "A String", # The ID of the last history record that modified this message. "payload": { # A single MIME message part. # The parsed email structure in the message parts. "body": { # The body of a single MIME message part. # The message part body for this part, which may be empty for container MIME message parts. "data": "A String", # The body data of a MIME message part as a base64url encoded string. May be empty for MIME container types that have no message body or when the body data is sent as a separate attachment. An attachment ID is present if the body data is contained in a separate attachment. "attachmentId": "A String", # When present, contains the ID of an external attachment that can be retrieved in a separate messages.attachments.get request. When not present, the entire content of the message part body is contained in the data field. "size": 42, # Number of bytes for the message part data (encoding notwithstanding). }, "mimeType": "A String", # The MIME type of the message part. "partId": "A String", # The immutable ID of the message part. "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment. "headers": [ # List of headers on this message part. For the top-level message part, representing the entire message payload, it will contain the standard RFC 2822 email headers such as To, From, and Subject. { "name": "A String", # The name of the header before the : separator. For example, To. "value": "A String", # The value of the header after the : separator. For example, someuser@example.com. }, ], "parts": [ # The child MIME message parts of this part. This only applies to container MIME message parts, for example multipart/*. For non- container MIME message part types, such as text/plain, this field is empty. For more information, see RFC 1521. # Object with schema name: MessagePart ], }, "snippet": "A String", # A short part of the message text. "raw": "A String", # The entire email message in an RFC 2822 formatted and base64url encoded string. Returned in messages.get and drafts.get responses when the format=RAW parameter is supplied. "sizeEstimate": 42, # Estimated size in bytes of the message. "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met: # - The requested threadId must be specified on the Message or Draft.Message you supply with your request. # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard. # - The Subject headers must match. "labelIds": [ # List of IDs of labels applied to this message. "A String", ], "id": "A String", # The immutable ID of the message. }
send(userId=*, body=None, media_body=None, media_mime_type=None)
Sends the specified message to the recipients in the To, Cc, and Bcc headers. Args: userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required) body: object, The request body. The object takes the form of: { # An email message. "internalDate": "A String", # The internal message creation timestamp (epoch ms), which determines ordering in the inbox. For normal SMTP-received email, this represents the time the message was originally accepted by Google, which is more reliable than the Date header. However, for API-migrated mail, it can be configured by client to be based on the Date header. "historyId": "A String", # The ID of the last history record that modified this message. "payload": { # A single MIME message part. # The parsed email structure in the message parts. "body": { # The body of a single MIME message part. # The message part body for this part, which may be empty for container MIME message parts. "data": "A String", # The body data of a MIME message part as a base64url encoded string. May be empty for MIME container types that have no message body or when the body data is sent as a separate attachment. An attachment ID is present if the body data is contained in a separate attachment. "attachmentId": "A String", # When present, contains the ID of an external attachment that can be retrieved in a separate messages.attachments.get request. When not present, the entire content of the message part body is contained in the data field. "size": 42, # Number of bytes for the message part data (encoding notwithstanding). }, "mimeType": "A String", # The MIME type of the message part. "partId": "A String", # The immutable ID of the message part. "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment. "headers": [ # List of headers on this message part. For the top-level message part, representing the entire message payload, it will contain the standard RFC 2822 email headers such as To, From, and Subject. { "name": "A String", # The name of the header before the : separator. For example, To. "value": "A String", # The value of the header after the : separator. For example, someuser@example.com. }, ], "parts": [ # The child MIME message parts of this part. This only applies to container MIME message parts, for example multipart/*. For non- container MIME message part types, such as text/plain, this field is empty. For more information, see RFC 1521. # Object with schema name: MessagePart ], }, "snippet": "A String", # A short part of the message text. "raw": "A String", # The entire email message in an RFC 2822 formatted and base64url encoded string. Returned in messages.get and drafts.get responses when the format=RAW parameter is supplied. "sizeEstimate": 42, # Estimated size in bytes of the message. "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met: # - The requested threadId must be specified on the Message or Draft.Message you supply with your request. # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard. # - The Subject headers must match. "labelIds": [ # List of IDs of labels applied to this message. "A String", ], "id": "A String", # The immutable ID of the message. } media_body: string, The filename of the media request body, or an instance of a MediaUpload object. media_mime_type: string, The MIME type of the media request body, or an instance of a MediaUpload object. Returns: An object of the form: { # An email message. "internalDate": "A String", # The internal message creation timestamp (epoch ms), which determines ordering in the inbox. For normal SMTP-received email, this represents the time the message was originally accepted by Google, which is more reliable than the Date header. However, for API-migrated mail, it can be configured by client to be based on the Date header. "historyId": "A String", # The ID of the last history record that modified this message. "payload": { # A single MIME message part. # The parsed email structure in the message parts. "body": { # The body of a single MIME message part. # The message part body for this part, which may be empty for container MIME message parts. "data": "A String", # The body data of a MIME message part as a base64url encoded string. May be empty for MIME container types that have no message body or when the body data is sent as a separate attachment. An attachment ID is present if the body data is contained in a separate attachment. "attachmentId": "A String", # When present, contains the ID of an external attachment that can be retrieved in a separate messages.attachments.get request. When not present, the entire content of the message part body is contained in the data field. "size": 42, # Number of bytes for the message part data (encoding notwithstanding). }, "mimeType": "A String", # The MIME type of the message part. "partId": "A String", # The immutable ID of the message part. "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment. "headers": [ # List of headers on this message part. For the top-level message part, representing the entire message payload, it will contain the standard RFC 2822 email headers such as To, From, and Subject. { "name": "A String", # The name of the header before the : separator. For example, To. "value": "A String", # The value of the header after the : separator. For example, someuser@example.com. }, ], "parts": [ # The child MIME message parts of this part. This only applies to container MIME message parts, for example multipart/*. For non- container MIME message part types, such as text/plain, this field is empty. For more information, see RFC 1521. # Object with schema name: MessagePart ], }, "snippet": "A String", # A short part of the message text. "raw": "A String", # The entire email message in an RFC 2822 formatted and base64url encoded string. Returned in messages.get and drafts.get responses when the format=RAW parameter is supplied. "sizeEstimate": 42, # Estimated size in bytes of the message. "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met: # - The requested threadId must be specified on the Message or Draft.Message you supply with your request. # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard. # - The Subject headers must match. "labelIds": [ # List of IDs of labels applied to this message. "A String", ], "id": "A String", # The immutable ID of the message. }
trash(userId=*, id=*)
Moves the specified message to the trash. Args: userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required) id: string, The ID of the message to Trash. (required) Returns: An object of the form: { # An email message. "internalDate": "A String", # The internal message creation timestamp (epoch ms), which determines ordering in the inbox. For normal SMTP-received email, this represents the time the message was originally accepted by Google, which is more reliable than the Date header. However, for API-migrated mail, it can be configured by client to be based on the Date header. "historyId": "A String", # The ID of the last history record that modified this message. "payload": { # A single MIME message part. # The parsed email structure in the message parts. "body": { # The body of a single MIME message part. # The message part body for this part, which may be empty for container MIME message parts. "data": "A String", # The body data of a MIME message part as a base64url encoded string. May be empty for MIME container types that have no message body or when the body data is sent as a separate attachment. An attachment ID is present if the body data is contained in a separate attachment. "attachmentId": "A String", # When present, contains the ID of an external attachment that can be retrieved in a separate messages.attachments.get request. When not present, the entire content of the message part body is contained in the data field. "size": 42, # Number of bytes for the message part data (encoding notwithstanding). }, "mimeType": "A String", # The MIME type of the message part. "partId": "A String", # The immutable ID of the message part. "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment. "headers": [ # List of headers on this message part. For the top-level message part, representing the entire message payload, it will contain the standard RFC 2822 email headers such as To, From, and Subject. { "name": "A String", # The name of the header before the : separator. For example, To. "value": "A String", # The value of the header after the : separator. For example, someuser@example.com. }, ], "parts": [ # The child MIME message parts of this part. This only applies to container MIME message parts, for example multipart/*. For non- container MIME message part types, such as text/plain, this field is empty. For more information, see RFC 1521. # Object with schema name: MessagePart ], }, "snippet": "A String", # A short part of the message text. "raw": "A String", # The entire email message in an RFC 2822 formatted and base64url encoded string. Returned in messages.get and drafts.get responses when the format=RAW parameter is supplied. "sizeEstimate": 42, # Estimated size in bytes of the message. "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met: # - The requested threadId must be specified on the Message or Draft.Message you supply with your request. # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard. # - The Subject headers must match. "labelIds": [ # List of IDs of labels applied to this message. "A String", ], "id": "A String", # The immutable ID of the message. }
untrash(userId=*, id=*)
Removes the specified message from the trash. Args: userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required) id: string, The ID of the message to remove from Trash. (required) Returns: An object of the form: { # An email message. "internalDate": "A String", # The internal message creation timestamp (epoch ms), which determines ordering in the inbox. For normal SMTP-received email, this represents the time the message was originally accepted by Google, which is more reliable than the Date header. However, for API-migrated mail, it can be configured by client to be based on the Date header. "historyId": "A String", # The ID of the last history record that modified this message. "payload": { # A single MIME message part. # The parsed email structure in the message parts. "body": { # The body of a single MIME message part. # The message part body for this part, which may be empty for container MIME message parts. "data": "A String", # The body data of a MIME message part as a base64url encoded string. May be empty for MIME container types that have no message body or when the body data is sent as a separate attachment. An attachment ID is present if the body data is contained in a separate attachment. "attachmentId": "A String", # When present, contains the ID of an external attachment that can be retrieved in a separate messages.attachments.get request. When not present, the entire content of the message part body is contained in the data field. "size": 42, # Number of bytes for the message part data (encoding notwithstanding). }, "mimeType": "A String", # The MIME type of the message part. "partId": "A String", # The immutable ID of the message part. "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment. "headers": [ # List of headers on this message part. For the top-level message part, representing the entire message payload, it will contain the standard RFC 2822 email headers such as To, From, and Subject. { "name": "A String", # The name of the header before the : separator. For example, To. "value": "A String", # The value of the header after the : separator. For example, someuser@example.com. }, ], "parts": [ # The child MIME message parts of this part. This only applies to container MIME message parts, for example multipart/*. For non- container MIME message part types, such as text/plain, this field is empty. For more information, see RFC 1521. # Object with schema name: MessagePart ], }, "snippet": "A String", # A short part of the message text. "raw": "A String", # The entire email message in an RFC 2822 formatted and base64url encoded string. Returned in messages.get and drafts.get responses when the format=RAW parameter is supplied. "sizeEstimate": 42, # Estimated size in bytes of the message. "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met: # - The requested threadId must be specified on the Message or Draft.Message you supply with your request. # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard. # - The Subject headers must match. "labelIds": [ # List of IDs of labels applied to this message. "A String", ], "id": "A String", # The immutable ID of the message. }