<html><body> <style> body, h1, h2, h3, div, span, p, pre, a { margin: 0; padding: 0; border: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; } body { font-size: 13px; padding: 1em; } h1 { font-size: 26px; margin-bottom: 1em; } h2 { font-size: 24px; margin-bottom: 1em; } h3 { font-size: 20px; margin-bottom: 1em; margin-top: 1em; } pre, code { line-height: 1.5; font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; } pre { margin-top: 0.5em; } h1, h2, h3, p { font-family: Arial, sans serif; } h1, h2, h3 { border-bottom: solid #CCC 1px; } .toc_element { margin-top: 0.5em; } .firstline { margin-left: 2 em; } .method { margin-top: 1em; border: solid 1px #CCC; padding: 1em; background: #EEE; } .details { font-weight: bold; font-size: 14px; } </style> <h1><a href="gmail_v1.html">Gmail API</a> . <a href="gmail_v1.users.html">users</a> . <a href="gmail_v1.users.drafts.html">drafts</a></h1> <h2>Instance Methods</h2> <p class="toc_element"> <code><a href="#create">create(userId, body=None, media_body=None, media_mime_type=None)</a></code></p> <p class="firstline">Creates a new draft with the DRAFT label.</p> <p class="toc_element"> <code><a href="#delete">delete(userId, id)</a></code></p> <p class="firstline">Immediately and permanently deletes the specified draft. Does not simply trash it.</p> <p class="toc_element"> <code><a href="#get">get(userId, id, format=None)</a></code></p> <p class="firstline">Gets the specified draft.</p> <p class="toc_element"> <code><a href="#list">list(userId, q=None, pageToken=None, maxResults=None, includeSpamTrash=None)</a></code></p> <p class="firstline">Lists the drafts in the user's mailbox.</p> <p class="toc_element"> <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p> <p class="firstline">Retrieves the next page of results.</p> <p class="toc_element"> <code><a href="#send">send(userId, body=None, media_body=None, media_mime_type=None)</a></code></p> <p class="firstline">Sends the specified, existing draft to the recipients in the To, Cc, and Bcc headers.</p> <p class="toc_element"> <code><a href="#update">update(userId, id, body=None, media_body=None, media_mime_type=None)</a></code></p> <p class="firstline">Replaces a draft's content.</p> <h3>Method Details</h3> <div class="method"> <code class="details" id="create">create(userId, body=None, media_body=None, media_mime_type=None)</code> <pre>Creates a new draft with the DRAFT label. 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: { # A draft email in the user's mailbox. "message": { # An email message. # The message content of the draft. "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. }, "id": "A String", # The immutable ID of the draft. } 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: { # A draft email in the user's mailbox. "message": { # An email message. # The message content of the draft. "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. }, "id": "A String", # The immutable ID of the draft. }</pre> </div> <div class="method"> <code class="details" id="delete">delete(userId, id)</code> <pre>Immediately and permanently deletes the specified draft. Does not simply trash it. 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 draft to delete. (required) </pre> </div> <div class="method"> <code class="details" id="get">get(userId, id, format=None)</code> <pre>Gets the specified draft. 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 draft to retrieve. (required) format: string, The format to return the draft in. Allowed values full - metadata - minimal - raw - Returns: An object of the form: { # A draft email in the user's mailbox. "message": { # An email message. # The message content of the draft. "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. }, "id": "A String", # The immutable ID of the draft. }</pre> </div> <div class="method"> <code class="details" id="list">list(userId, q=None, pageToken=None, maxResults=None, includeSpamTrash=None)</code> <pre>Lists the drafts 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) q: string, Only return draft messages matching the specified query. Supports the same query format as the Gmail search box. For example, "from:someuser@example.com rfc822msgid: is:unread". pageToken: string, Page token to retrieve a specific page of results in the list. maxResults: integer, Maximum number of drafts to return. includeSpamTrash: boolean, Include drafts 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. "drafts": [ # List of drafts. { # A draft email in the user's mailbox. "message": { # An email message. # The message content of the draft. "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. }, "id": "A String", # The immutable ID of the draft. }, ], }</pre> </div> <div class="method"> <code class="details" id="list_next">list_next(previous_request, previous_response)</code> <pre>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. </pre> </div> <div class="method"> <code class="details" id="send">send(userId, body=None, media_body=None, media_mime_type=None)</code> <pre>Sends the specified, existing draft 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: { # A draft email in the user's mailbox. "message": { # An email message. # The message content of the draft. "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. }, "id": "A String", # The immutable ID of the draft. } 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. }</pre> </div> <div class="method"> <code class="details" id="update">update(userId, id, body=None, media_body=None, media_mime_type=None)</code> <pre>Replaces a draft's content. 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 draft to update. (required) body: object, The request body. The object takes the form of: { # A draft email in the user's mailbox. "message": { # An email message. # The message content of the draft. "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. }, "id": "A String", # The immutable ID of the draft. } 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: { # A draft email in the user's mailbox. "message": { # An email message. # The message content of the draft. "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. }, "id": "A String", # The immutable ID of the draft. }</pre> </div> </body></html>