blob: e4913d257eaddf87fa4f7f3a383d99497044b242 [file] [log] [blame]
<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.messages.html">messages</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
<code><a href="gmail_v1.users.messages.attachments.html">attachments()</a></code>
</p>
<p class="firstline">Returns the attachments Resource.</p>
<p class="toc_element">
<code><a href="#batchDelete">batchDelete(userId, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Deletes many messages by message ID. Provides no guarantees that messages</p>
<p class="toc_element">
<code><a href="#batchModify">batchModify(userId, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Modifies the labels on the specified messages.</p>
<p class="toc_element">
<code><a href="#delete">delete(userId, id, x__xgafv=None)</a></code></p>
<p class="firstline">Immediately and permanently deletes the specified message. This operation</p>
<p class="toc_element">
<code><a href="#get">get(userId, id, format=None, metadataHeaders=None, x__xgafv=None)</a></code></p>
<p class="firstline">Gets the specified message.</p>
<p class="toc_element">
<code><a href="#import_">import_(userId, body=None, deleted=None, internalDateSource=None, neverMarkSpam=None, processForCalendar=None, x__xgafv=None, media_body=None, media_mime_type=None)</a></code></p>
<p class="firstline">Imports a message into only this user's mailbox, with standard</p>
<p class="toc_element">
<code><a href="#insert">insert(userId, body=None, internalDateSource=None, deleted=None, x__xgafv=None, media_body=None, media_mime_type=None)</a></code></p>
<p class="firstline">Directly inserts a message into only this user's mailbox similar to</p>
<p class="toc_element">
<code><a href="#list">list(userId, maxResults=None, labelIds=None, includeSpamTrash=None, pageToken=None, q=None, x__xgafv=None)</a></code></p>
<p class="firstline">Lists the messages 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="#modify">modify(userId, id, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Modifies the labels on the specified message.</p>
<p class="toc_element">
<code><a href="#send">send(userId, body=None, x__xgafv=None, media_body=None, media_mime_type=None)</a></code></p>
<p class="firstline">Sends the specified message to the recipients in the</p>
<p class="toc_element">
<code><a href="#trash">trash(userId, id, x__xgafv=None)</a></code></p>
<p class="firstline">Moves the specified message to the trash.</p>
<p class="toc_element">
<code><a href="#untrash">untrash(userId, id, x__xgafv=None)</a></code></p>
<p class="firstline">Removes the specified message from the trash.</p>
<h3>Method Details</h3>
<div class="method">
<code class="details" id="batchDelete">batchDelete(userId, body=None, x__xgafv=None)</code>
<pre>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&#x27;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:
{
&quot;ids&quot;: [ # The IDs of the messages to delete.
&quot;A String&quot;,
],
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
</pre>
</div>
<div class="method">
<code class="details" id="batchModify">batchModify(userId, body=None, x__xgafv=None)</code>
<pre>Modifies the labels on the specified messages.
Args:
userId: string, The user&#x27;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:
{
&quot;addLabelIds&quot;: [ # A list of label IDs to add to messages.
&quot;A String&quot;,
],
&quot;removeLabelIds&quot;: [ # A list of label IDs to remove from messages.
&quot;A String&quot;,
],
&quot;ids&quot;: [ # The IDs of the messages to modify. There is a limit of 1000 ids per
# request.
&quot;A String&quot;,
],
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
</pre>
</div>
<div class="method">
<code class="details" id="delete">delete(userId, id, x__xgafv=None)</code>
<pre>Immediately and permanently deletes the specified message. This operation
cannot be undone. Prefer `messages.trash` instead.
Args:
userId: string, The user&#x27;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)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
</pre>
</div>
<div class="method">
<code class="details" id="get">get(userId, id, format=None, metadataHeaders=None, x__xgafv=None)</code>
<pre>Gets the specified message.
Args:
userId: string, The user&#x27;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.
metadataHeaders: string, When given and format is METADATA, only include headers specified. (repeated)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # An email message.
&quot;threadId&quot;: &quot;A String&quot;, # The ID of the thread the message belongs to. To add a message or draft to
# a thread, the following criteria must be met:
# &lt;ol&gt;&lt;li&gt;The requested `threadId` must be specified on the
# `Message` or `Draft.Message` you supply with your
# request.&lt;/li&gt;
# &lt;li&gt;The `References` and `In-Reply-To` headers must
# be set in compliance with the
# &lt;a href=&quot;https://tools.ietf.org/html/rfc2822&quot;&gt;RFC 2822&lt;/a&gt; standard.&lt;/li&gt;
# &lt;li&gt;The `Subject` headers must match.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;internalDate&quot;: &quot;A String&quot;, # 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.
&quot;id&quot;: &quot;A String&quot;, # The immutable ID of the message.
&quot;sizeEstimate&quot;: 42, # Estimated size in bytes of the message.
&quot;payload&quot;: { # A single MIME message part. # The parsed email structure in the message parts.
&quot;mimeType&quot;: &quot;A String&quot;, # The MIME type of the message part.
&quot;parts&quot;: [ # 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
# &lt;a href=&quot;http://www.ietf.org/rfc/rfc1521.txt&quot;&gt;RFC 1521&lt;/a&gt;.
# Object with schema name: MessagePart
],
&quot;headers&quot;: [ # 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`.
{
&quot;name&quot;: &quot;A String&quot;, # The name of the header before the `:` separator. For
# example, `To`.
&quot;value&quot;: &quot;A String&quot;, # The value of the header after the `:` separator. For example,
# `someuser@example.com`.
},
],
&quot;filename&quot;: &quot;A String&quot;, # The filename of the attachment. Only present if this message part
# represents an attachment.
&quot;partId&quot;: &quot;A String&quot;, # The immutable ID of the message part.
&quot;body&quot;: { # The body of a single MIME message part. # The message part body for this part, which may be empty for
# container MIME message parts.
&quot;size&quot;: 42, # Number of bytes for the message part data (encoding notwithstanding).
&quot;attachmentId&quot;: &quot;A String&quot;, # 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.
&quot;data&quot;: &quot;A String&quot;, # 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.
},
},
&quot;historyId&quot;: &quot;A String&quot;, # The ID of the last history record that modified this message.
&quot;snippet&quot;: &quot;A String&quot;, # A short part of the message text.
&quot;raw&quot;: &quot;A String&quot;, # 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.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;labelIds&quot;: [ # List of IDs of labels applied to this message.
# @mutable gmail.users.messages.insert gmail.users.messages.modify
&quot;A String&quot;,
],
}</pre>
</div>
<div class="method">
<code class="details" id="import_">import_(userId, body=None, deleted=None, internalDateSource=None, neverMarkSpam=None, processForCalendar=None, x__xgafv=None, media_body=None, media_mime_type=None)</code>
<pre>Imports a message into only this user&#x27;s mailbox, with standard
email delivery scanning and classification similar to receiving via SMTP.
Does not send a message.
Args:
userId: string, The user&#x27;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.
&quot;threadId&quot;: &quot;A String&quot;, # The ID of the thread the message belongs to. To add a message or draft to
# a thread, the following criteria must be met:
# &lt;ol&gt;&lt;li&gt;The requested `threadId` must be specified on the
# `Message` or `Draft.Message` you supply with your
# request.&lt;/li&gt;
# &lt;li&gt;The `References` and `In-Reply-To` headers must
# be set in compliance with the
# &lt;a href=&quot;https://tools.ietf.org/html/rfc2822&quot;&gt;RFC 2822&lt;/a&gt; standard.&lt;/li&gt;
# &lt;li&gt;The `Subject` headers must match.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;internalDate&quot;: &quot;A String&quot;, # 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.
&quot;id&quot;: &quot;A String&quot;, # The immutable ID of the message.
&quot;sizeEstimate&quot;: 42, # Estimated size in bytes of the message.
&quot;payload&quot;: { # A single MIME message part. # The parsed email structure in the message parts.
&quot;mimeType&quot;: &quot;A String&quot;, # The MIME type of the message part.
&quot;parts&quot;: [ # 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
# &lt;a href=&quot;http://www.ietf.org/rfc/rfc1521.txt&quot;&gt;RFC 1521&lt;/a&gt;.
# Object with schema name: MessagePart
],
&quot;headers&quot;: [ # 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`.
{
&quot;name&quot;: &quot;A String&quot;, # The name of the header before the `:` separator. For
# example, `To`.
&quot;value&quot;: &quot;A String&quot;, # The value of the header after the `:` separator. For example,
# `someuser@example.com`.
},
],
&quot;filename&quot;: &quot;A String&quot;, # The filename of the attachment. Only present if this message part
# represents an attachment.
&quot;partId&quot;: &quot;A String&quot;, # The immutable ID of the message part.
&quot;body&quot;: { # The body of a single MIME message part. # The message part body for this part, which may be empty for
# container MIME message parts.
&quot;size&quot;: 42, # Number of bytes for the message part data (encoding notwithstanding).
&quot;attachmentId&quot;: &quot;A String&quot;, # 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.
&quot;data&quot;: &quot;A String&quot;, # 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.
},
},
&quot;historyId&quot;: &quot;A String&quot;, # The ID of the last history record that modified this message.
&quot;snippet&quot;: &quot;A String&quot;, # A short part of the message text.
&quot;raw&quot;: &quot;A String&quot;, # 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.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;labelIds&quot;: [ # List of IDs of labels applied to this message.
# @mutable gmail.users.messages.insert gmail.users.messages.modify
&quot;A String&quot;,
],
}
deleted: boolean, Mark the email as permanently deleted (not TRASH) and
only visible in
&lt;a href=&quot;http://support.google.com/vault/&quot;&gt;Google Vault&lt;/a&gt; to
a Vault administrator. Only used for G Suite accounts.
internalDateSource: string, Source for Gmail&#x27;s internal date of the message.
neverMarkSpam: boolean, Ignore the Gmail spam classifier decision and never mark
this email as SPAM in the mailbox.
processForCalendar: boolean, Process calendar invites in the email and add any extracted
meetings to the Google Calendar for this user.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
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.
&quot;threadId&quot;: &quot;A String&quot;, # The ID of the thread the message belongs to. To add a message or draft to
# a thread, the following criteria must be met:
# &lt;ol&gt;&lt;li&gt;The requested `threadId` must be specified on the
# `Message` or `Draft.Message` you supply with your
# request.&lt;/li&gt;
# &lt;li&gt;The `References` and `In-Reply-To` headers must
# be set in compliance with the
# &lt;a href=&quot;https://tools.ietf.org/html/rfc2822&quot;&gt;RFC 2822&lt;/a&gt; standard.&lt;/li&gt;
# &lt;li&gt;The `Subject` headers must match.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;internalDate&quot;: &quot;A String&quot;, # 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.
&quot;id&quot;: &quot;A String&quot;, # The immutable ID of the message.
&quot;sizeEstimate&quot;: 42, # Estimated size in bytes of the message.
&quot;payload&quot;: { # A single MIME message part. # The parsed email structure in the message parts.
&quot;mimeType&quot;: &quot;A String&quot;, # The MIME type of the message part.
&quot;parts&quot;: [ # 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
# &lt;a href=&quot;http://www.ietf.org/rfc/rfc1521.txt&quot;&gt;RFC 1521&lt;/a&gt;.
# Object with schema name: MessagePart
],
&quot;headers&quot;: [ # 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`.
{
&quot;name&quot;: &quot;A String&quot;, # The name of the header before the `:` separator. For
# example, `To`.
&quot;value&quot;: &quot;A String&quot;, # The value of the header after the `:` separator. For example,
# `someuser@example.com`.
},
],
&quot;filename&quot;: &quot;A String&quot;, # The filename of the attachment. Only present if this message part
# represents an attachment.
&quot;partId&quot;: &quot;A String&quot;, # The immutable ID of the message part.
&quot;body&quot;: { # The body of a single MIME message part. # The message part body for this part, which may be empty for
# container MIME message parts.
&quot;size&quot;: 42, # Number of bytes for the message part data (encoding notwithstanding).
&quot;attachmentId&quot;: &quot;A String&quot;, # 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.
&quot;data&quot;: &quot;A String&quot;, # 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.
},
},
&quot;historyId&quot;: &quot;A String&quot;, # The ID of the last history record that modified this message.
&quot;snippet&quot;: &quot;A String&quot;, # A short part of the message text.
&quot;raw&quot;: &quot;A String&quot;, # 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.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;labelIds&quot;: [ # List of IDs of labels applied to this message.
# @mutable gmail.users.messages.insert gmail.users.messages.modify
&quot;A String&quot;,
],
}</pre>
</div>
<div class="method">
<code class="details" id="insert">insert(userId, body=None, internalDateSource=None, deleted=None, x__xgafv=None, media_body=None, media_mime_type=None)</code>
<pre>Directly inserts a message into only this user&#x27;s mailbox similar to
`IMAP APPEND`, bypassing most scanning and classification.
Does not send a message.
Args:
userId: string, The user&#x27;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.
&quot;threadId&quot;: &quot;A String&quot;, # The ID of the thread the message belongs to. To add a message or draft to
# a thread, the following criteria must be met:
# &lt;ol&gt;&lt;li&gt;The requested `threadId` must be specified on the
# `Message` or `Draft.Message` you supply with your
# request.&lt;/li&gt;
# &lt;li&gt;The `References` and `In-Reply-To` headers must
# be set in compliance with the
# &lt;a href=&quot;https://tools.ietf.org/html/rfc2822&quot;&gt;RFC 2822&lt;/a&gt; standard.&lt;/li&gt;
# &lt;li&gt;The `Subject` headers must match.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;internalDate&quot;: &quot;A String&quot;, # 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.
&quot;id&quot;: &quot;A String&quot;, # The immutable ID of the message.
&quot;sizeEstimate&quot;: 42, # Estimated size in bytes of the message.
&quot;payload&quot;: { # A single MIME message part. # The parsed email structure in the message parts.
&quot;mimeType&quot;: &quot;A String&quot;, # The MIME type of the message part.
&quot;parts&quot;: [ # 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
# &lt;a href=&quot;http://www.ietf.org/rfc/rfc1521.txt&quot;&gt;RFC 1521&lt;/a&gt;.
# Object with schema name: MessagePart
],
&quot;headers&quot;: [ # 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`.
{
&quot;name&quot;: &quot;A String&quot;, # The name of the header before the `:` separator. For
# example, `To`.
&quot;value&quot;: &quot;A String&quot;, # The value of the header after the `:` separator. For example,
# `someuser@example.com`.
},
],
&quot;filename&quot;: &quot;A String&quot;, # The filename of the attachment. Only present if this message part
# represents an attachment.
&quot;partId&quot;: &quot;A String&quot;, # The immutable ID of the message part.
&quot;body&quot;: { # The body of a single MIME message part. # The message part body for this part, which may be empty for
# container MIME message parts.
&quot;size&quot;: 42, # Number of bytes for the message part data (encoding notwithstanding).
&quot;attachmentId&quot;: &quot;A String&quot;, # 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.
&quot;data&quot;: &quot;A String&quot;, # 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.
},
},
&quot;historyId&quot;: &quot;A String&quot;, # The ID of the last history record that modified this message.
&quot;snippet&quot;: &quot;A String&quot;, # A short part of the message text.
&quot;raw&quot;: &quot;A String&quot;, # 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.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;labelIds&quot;: [ # List of IDs of labels applied to this message.
# @mutable gmail.users.messages.insert gmail.users.messages.modify
&quot;A String&quot;,
],
}
internalDateSource: string, Source for Gmail&#x27;s internal date of the message.
deleted: boolean, Mark the email as permanently deleted (not TRASH) and
only visible in
&lt;a href=&quot;http://support.google.com/vault/&quot;&gt;Google Vault&lt;/a&gt; to
a Vault administrator. Only used for G Suite accounts.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
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.
&quot;threadId&quot;: &quot;A String&quot;, # The ID of the thread the message belongs to. To add a message or draft to
# a thread, the following criteria must be met:
# &lt;ol&gt;&lt;li&gt;The requested `threadId` must be specified on the
# `Message` or `Draft.Message` you supply with your
# request.&lt;/li&gt;
# &lt;li&gt;The `References` and `In-Reply-To` headers must
# be set in compliance with the
# &lt;a href=&quot;https://tools.ietf.org/html/rfc2822&quot;&gt;RFC 2822&lt;/a&gt; standard.&lt;/li&gt;
# &lt;li&gt;The `Subject` headers must match.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;internalDate&quot;: &quot;A String&quot;, # 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.
&quot;id&quot;: &quot;A String&quot;, # The immutable ID of the message.
&quot;sizeEstimate&quot;: 42, # Estimated size in bytes of the message.
&quot;payload&quot;: { # A single MIME message part. # The parsed email structure in the message parts.
&quot;mimeType&quot;: &quot;A String&quot;, # The MIME type of the message part.
&quot;parts&quot;: [ # 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
# &lt;a href=&quot;http://www.ietf.org/rfc/rfc1521.txt&quot;&gt;RFC 1521&lt;/a&gt;.
# Object with schema name: MessagePart
],
&quot;headers&quot;: [ # 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`.
{
&quot;name&quot;: &quot;A String&quot;, # The name of the header before the `:` separator. For
# example, `To`.
&quot;value&quot;: &quot;A String&quot;, # The value of the header after the `:` separator. For example,
# `someuser@example.com`.
},
],
&quot;filename&quot;: &quot;A String&quot;, # The filename of the attachment. Only present if this message part
# represents an attachment.
&quot;partId&quot;: &quot;A String&quot;, # The immutable ID of the message part.
&quot;body&quot;: { # The body of a single MIME message part. # The message part body for this part, which may be empty for
# container MIME message parts.
&quot;size&quot;: 42, # Number of bytes for the message part data (encoding notwithstanding).
&quot;attachmentId&quot;: &quot;A String&quot;, # 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.
&quot;data&quot;: &quot;A String&quot;, # 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.
},
},
&quot;historyId&quot;: &quot;A String&quot;, # The ID of the last history record that modified this message.
&quot;snippet&quot;: &quot;A String&quot;, # A short part of the message text.
&quot;raw&quot;: &quot;A String&quot;, # 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.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;labelIds&quot;: [ # List of IDs of labels applied to this message.
# @mutable gmail.users.messages.insert gmail.users.messages.modify
&quot;A String&quot;,
],
}</pre>
</div>
<div class="method">
<code class="details" id="list">list(userId, maxResults=None, labelIds=None, includeSpamTrash=None, pageToken=None, q=None, x__xgafv=None)</code>
<pre>Lists the messages in the user&#x27;s mailbox.
Args:
userId: string, The user&#x27;s email address. The special value `me`
can be used to indicate the authenticated user. (required)
maxResults: integer, Maximum number of messages to return.
labelIds: string, Only return messages with labels that match all of the specified label IDs. (repeated)
includeSpamTrash: boolean, Include messages from `SPAM` and `TRASH`
in the results.
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,
`&quot;from:someuser@example.com rfc822msgid:&lt;somemsgid@example.com&gt;
is:unread&quot;`. Parameter cannot be used when accessing the api
using the gmail.metadata scope.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{
&quot;resultSizeEstimate&quot;: 42, # Estimated total number of results.
&quot;nextPageToken&quot;: &quot;A String&quot;, # Token to retrieve the next page of results in the list.
&quot;messages&quot;: [ # List of messages. Note that each message resource contains only an
# `id` and a `threadId`. Additional message details can
# be fetched using the
# &lt;a href=&quot;/gmail/api/v1/reference/users/messages/get&quot;&gt;messages.get&lt;/a&gt;
# method.
{ # An email message.
&quot;threadId&quot;: &quot;A String&quot;, # The ID of the thread the message belongs to. To add a message or draft to
# a thread, the following criteria must be met:
# &lt;ol&gt;&lt;li&gt;The requested `threadId` must be specified on the
# `Message` or `Draft.Message` you supply with your
# request.&lt;/li&gt;
# &lt;li&gt;The `References` and `In-Reply-To` headers must
# be set in compliance with the
# &lt;a href=&quot;https://tools.ietf.org/html/rfc2822&quot;&gt;RFC 2822&lt;/a&gt; standard.&lt;/li&gt;
# &lt;li&gt;The `Subject` headers must match.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;internalDate&quot;: &quot;A String&quot;, # 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.
&quot;id&quot;: &quot;A String&quot;, # The immutable ID of the message.
&quot;sizeEstimate&quot;: 42, # Estimated size in bytes of the message.
&quot;payload&quot;: { # A single MIME message part. # The parsed email structure in the message parts.
&quot;mimeType&quot;: &quot;A String&quot;, # The MIME type of the message part.
&quot;parts&quot;: [ # 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
# &lt;a href=&quot;http://www.ietf.org/rfc/rfc1521.txt&quot;&gt;RFC 1521&lt;/a&gt;.
# Object with schema name: MessagePart
],
&quot;headers&quot;: [ # 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`.
{
&quot;name&quot;: &quot;A String&quot;, # The name of the header before the `:` separator. For
# example, `To`.
&quot;value&quot;: &quot;A String&quot;, # The value of the header after the `:` separator. For example,
# `someuser@example.com`.
},
],
&quot;filename&quot;: &quot;A String&quot;, # The filename of the attachment. Only present if this message part
# represents an attachment.
&quot;partId&quot;: &quot;A String&quot;, # The immutable ID of the message part.
&quot;body&quot;: { # The body of a single MIME message part. # The message part body for this part, which may be empty for
# container MIME message parts.
&quot;size&quot;: 42, # Number of bytes for the message part data (encoding notwithstanding).
&quot;attachmentId&quot;: &quot;A String&quot;, # 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.
&quot;data&quot;: &quot;A String&quot;, # 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.
},
},
&quot;historyId&quot;: &quot;A String&quot;, # The ID of the last history record that modified this message.
&quot;snippet&quot;: &quot;A String&quot;, # A short part of the message text.
&quot;raw&quot;: &quot;A String&quot;, # 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.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;labelIds&quot;: [ # List of IDs of labels applied to this message.
# @mutable gmail.users.messages.insert gmail.users.messages.modify
&quot;A String&quot;,
],
},
],
}</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 &#x27;execute()&#x27; 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="modify">modify(userId, id, body=None, x__xgafv=None)</code>
<pre>Modifies the labels on the specified message.
Args:
userId: string, The user&#x27;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:
{
&quot;addLabelIds&quot;: [ # A list of IDs of labels to add to this message.
&quot;A String&quot;,
],
&quot;removeLabelIds&quot;: [ # A list IDs of labels to remove from this message.
&quot;A String&quot;,
],
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # An email message.
&quot;threadId&quot;: &quot;A String&quot;, # The ID of the thread the message belongs to. To add a message or draft to
# a thread, the following criteria must be met:
# &lt;ol&gt;&lt;li&gt;The requested `threadId` must be specified on the
# `Message` or `Draft.Message` you supply with your
# request.&lt;/li&gt;
# &lt;li&gt;The `References` and `In-Reply-To` headers must
# be set in compliance with the
# &lt;a href=&quot;https://tools.ietf.org/html/rfc2822&quot;&gt;RFC 2822&lt;/a&gt; standard.&lt;/li&gt;
# &lt;li&gt;The `Subject` headers must match.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;internalDate&quot;: &quot;A String&quot;, # 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.
&quot;id&quot;: &quot;A String&quot;, # The immutable ID of the message.
&quot;sizeEstimate&quot;: 42, # Estimated size in bytes of the message.
&quot;payload&quot;: { # A single MIME message part. # The parsed email structure in the message parts.
&quot;mimeType&quot;: &quot;A String&quot;, # The MIME type of the message part.
&quot;parts&quot;: [ # 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
# &lt;a href=&quot;http://www.ietf.org/rfc/rfc1521.txt&quot;&gt;RFC 1521&lt;/a&gt;.
# Object with schema name: MessagePart
],
&quot;headers&quot;: [ # 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`.
{
&quot;name&quot;: &quot;A String&quot;, # The name of the header before the `:` separator. For
# example, `To`.
&quot;value&quot;: &quot;A String&quot;, # The value of the header after the `:` separator. For example,
# `someuser@example.com`.
},
],
&quot;filename&quot;: &quot;A String&quot;, # The filename of the attachment. Only present if this message part
# represents an attachment.
&quot;partId&quot;: &quot;A String&quot;, # The immutable ID of the message part.
&quot;body&quot;: { # The body of a single MIME message part. # The message part body for this part, which may be empty for
# container MIME message parts.
&quot;size&quot;: 42, # Number of bytes for the message part data (encoding notwithstanding).
&quot;attachmentId&quot;: &quot;A String&quot;, # 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.
&quot;data&quot;: &quot;A String&quot;, # 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.
},
},
&quot;historyId&quot;: &quot;A String&quot;, # The ID of the last history record that modified this message.
&quot;snippet&quot;: &quot;A String&quot;, # A short part of the message text.
&quot;raw&quot;: &quot;A String&quot;, # 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.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;labelIds&quot;: [ # List of IDs of labels applied to this message.
# @mutable gmail.users.messages.insert gmail.users.messages.modify
&quot;A String&quot;,
],
}</pre>
</div>
<div class="method">
<code class="details" id="send">send(userId, body=None, x__xgafv=None, media_body=None, media_mime_type=None)</code>
<pre>Sends the specified message to the recipients in the
`To`, `Cc`, and `Bcc` headers.
Args:
userId: string, The user&#x27;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.
&quot;threadId&quot;: &quot;A String&quot;, # The ID of the thread the message belongs to. To add a message or draft to
# a thread, the following criteria must be met:
# &lt;ol&gt;&lt;li&gt;The requested `threadId` must be specified on the
# `Message` or `Draft.Message` you supply with your
# request.&lt;/li&gt;
# &lt;li&gt;The `References` and `In-Reply-To` headers must
# be set in compliance with the
# &lt;a href=&quot;https://tools.ietf.org/html/rfc2822&quot;&gt;RFC 2822&lt;/a&gt; standard.&lt;/li&gt;
# &lt;li&gt;The `Subject` headers must match.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;internalDate&quot;: &quot;A String&quot;, # 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.
&quot;id&quot;: &quot;A String&quot;, # The immutable ID of the message.
&quot;sizeEstimate&quot;: 42, # Estimated size in bytes of the message.
&quot;payload&quot;: { # A single MIME message part. # The parsed email structure in the message parts.
&quot;mimeType&quot;: &quot;A String&quot;, # The MIME type of the message part.
&quot;parts&quot;: [ # 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
# &lt;a href=&quot;http://www.ietf.org/rfc/rfc1521.txt&quot;&gt;RFC 1521&lt;/a&gt;.
# Object with schema name: MessagePart
],
&quot;headers&quot;: [ # 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`.
{
&quot;name&quot;: &quot;A String&quot;, # The name of the header before the `:` separator. For
# example, `To`.
&quot;value&quot;: &quot;A String&quot;, # The value of the header after the `:` separator. For example,
# `someuser@example.com`.
},
],
&quot;filename&quot;: &quot;A String&quot;, # The filename of the attachment. Only present if this message part
# represents an attachment.
&quot;partId&quot;: &quot;A String&quot;, # The immutable ID of the message part.
&quot;body&quot;: { # The body of a single MIME message part. # The message part body for this part, which may be empty for
# container MIME message parts.
&quot;size&quot;: 42, # Number of bytes for the message part data (encoding notwithstanding).
&quot;attachmentId&quot;: &quot;A String&quot;, # 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.
&quot;data&quot;: &quot;A String&quot;, # 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.
},
},
&quot;historyId&quot;: &quot;A String&quot;, # The ID of the last history record that modified this message.
&quot;snippet&quot;: &quot;A String&quot;, # A short part of the message text.
&quot;raw&quot;: &quot;A String&quot;, # 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.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;labelIds&quot;: [ # List of IDs of labels applied to this message.
# @mutable gmail.users.messages.insert gmail.users.messages.modify
&quot;A String&quot;,
],
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
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.
&quot;threadId&quot;: &quot;A String&quot;, # The ID of the thread the message belongs to. To add a message or draft to
# a thread, the following criteria must be met:
# &lt;ol&gt;&lt;li&gt;The requested `threadId` must be specified on the
# `Message` or `Draft.Message` you supply with your
# request.&lt;/li&gt;
# &lt;li&gt;The `References` and `In-Reply-To` headers must
# be set in compliance with the
# &lt;a href=&quot;https://tools.ietf.org/html/rfc2822&quot;&gt;RFC 2822&lt;/a&gt; standard.&lt;/li&gt;
# &lt;li&gt;The `Subject` headers must match.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;internalDate&quot;: &quot;A String&quot;, # 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.
&quot;id&quot;: &quot;A String&quot;, # The immutable ID of the message.
&quot;sizeEstimate&quot;: 42, # Estimated size in bytes of the message.
&quot;payload&quot;: { # A single MIME message part. # The parsed email structure in the message parts.
&quot;mimeType&quot;: &quot;A String&quot;, # The MIME type of the message part.
&quot;parts&quot;: [ # 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
# &lt;a href=&quot;http://www.ietf.org/rfc/rfc1521.txt&quot;&gt;RFC 1521&lt;/a&gt;.
# Object with schema name: MessagePart
],
&quot;headers&quot;: [ # 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`.
{
&quot;name&quot;: &quot;A String&quot;, # The name of the header before the `:` separator. For
# example, `To`.
&quot;value&quot;: &quot;A String&quot;, # The value of the header after the `:` separator. For example,
# `someuser@example.com`.
},
],
&quot;filename&quot;: &quot;A String&quot;, # The filename of the attachment. Only present if this message part
# represents an attachment.
&quot;partId&quot;: &quot;A String&quot;, # The immutable ID of the message part.
&quot;body&quot;: { # The body of a single MIME message part. # The message part body for this part, which may be empty for
# container MIME message parts.
&quot;size&quot;: 42, # Number of bytes for the message part data (encoding notwithstanding).
&quot;attachmentId&quot;: &quot;A String&quot;, # 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.
&quot;data&quot;: &quot;A String&quot;, # 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.
},
},
&quot;historyId&quot;: &quot;A String&quot;, # The ID of the last history record that modified this message.
&quot;snippet&quot;: &quot;A String&quot;, # A short part of the message text.
&quot;raw&quot;: &quot;A String&quot;, # 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.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;labelIds&quot;: [ # List of IDs of labels applied to this message.
# @mutable gmail.users.messages.insert gmail.users.messages.modify
&quot;A String&quot;,
],
}</pre>
</div>
<div class="method">
<code class="details" id="trash">trash(userId, id, x__xgafv=None)</code>
<pre>Moves the specified message to the trash.
Args:
userId: string, The user&#x27;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)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # An email message.
&quot;threadId&quot;: &quot;A String&quot;, # The ID of the thread the message belongs to. To add a message or draft to
# a thread, the following criteria must be met:
# &lt;ol&gt;&lt;li&gt;The requested `threadId` must be specified on the
# `Message` or `Draft.Message` you supply with your
# request.&lt;/li&gt;
# &lt;li&gt;The `References` and `In-Reply-To` headers must
# be set in compliance with the
# &lt;a href=&quot;https://tools.ietf.org/html/rfc2822&quot;&gt;RFC 2822&lt;/a&gt; standard.&lt;/li&gt;
# &lt;li&gt;The `Subject` headers must match.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;internalDate&quot;: &quot;A String&quot;, # 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.
&quot;id&quot;: &quot;A String&quot;, # The immutable ID of the message.
&quot;sizeEstimate&quot;: 42, # Estimated size in bytes of the message.
&quot;payload&quot;: { # A single MIME message part. # The parsed email structure in the message parts.
&quot;mimeType&quot;: &quot;A String&quot;, # The MIME type of the message part.
&quot;parts&quot;: [ # 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
# &lt;a href=&quot;http://www.ietf.org/rfc/rfc1521.txt&quot;&gt;RFC 1521&lt;/a&gt;.
# Object with schema name: MessagePart
],
&quot;headers&quot;: [ # 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`.
{
&quot;name&quot;: &quot;A String&quot;, # The name of the header before the `:` separator. For
# example, `To`.
&quot;value&quot;: &quot;A String&quot;, # The value of the header after the `:` separator. For example,
# `someuser@example.com`.
},
],
&quot;filename&quot;: &quot;A String&quot;, # The filename of the attachment. Only present if this message part
# represents an attachment.
&quot;partId&quot;: &quot;A String&quot;, # The immutable ID of the message part.
&quot;body&quot;: { # The body of a single MIME message part. # The message part body for this part, which may be empty for
# container MIME message parts.
&quot;size&quot;: 42, # Number of bytes for the message part data (encoding notwithstanding).
&quot;attachmentId&quot;: &quot;A String&quot;, # 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.
&quot;data&quot;: &quot;A String&quot;, # 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.
},
},
&quot;historyId&quot;: &quot;A String&quot;, # The ID of the last history record that modified this message.
&quot;snippet&quot;: &quot;A String&quot;, # A short part of the message text.
&quot;raw&quot;: &quot;A String&quot;, # 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.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;labelIds&quot;: [ # List of IDs of labels applied to this message.
# @mutable gmail.users.messages.insert gmail.users.messages.modify
&quot;A String&quot;,
],
}</pre>
</div>
<div class="method">
<code class="details" id="untrash">untrash(userId, id, x__xgafv=None)</code>
<pre>Removes the specified message from the trash.
Args:
userId: string, The user&#x27;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)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # An email message.
&quot;threadId&quot;: &quot;A String&quot;, # The ID of the thread the message belongs to. To add a message or draft to
# a thread, the following criteria must be met:
# &lt;ol&gt;&lt;li&gt;The requested `threadId` must be specified on the
# `Message` or `Draft.Message` you supply with your
# request.&lt;/li&gt;
# &lt;li&gt;The `References` and `In-Reply-To` headers must
# be set in compliance with the
# &lt;a href=&quot;https://tools.ietf.org/html/rfc2822&quot;&gt;RFC 2822&lt;/a&gt; standard.&lt;/li&gt;
# &lt;li&gt;The `Subject` headers must match.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;internalDate&quot;: &quot;A String&quot;, # 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.
&quot;id&quot;: &quot;A String&quot;, # The immutable ID of the message.
&quot;sizeEstimate&quot;: 42, # Estimated size in bytes of the message.
&quot;payload&quot;: { # A single MIME message part. # The parsed email structure in the message parts.
&quot;mimeType&quot;: &quot;A String&quot;, # The MIME type of the message part.
&quot;parts&quot;: [ # 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
# &lt;a href=&quot;http://www.ietf.org/rfc/rfc1521.txt&quot;&gt;RFC 1521&lt;/a&gt;.
# Object with schema name: MessagePart
],
&quot;headers&quot;: [ # 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`.
{
&quot;name&quot;: &quot;A String&quot;, # The name of the header before the `:` separator. For
# example, `To`.
&quot;value&quot;: &quot;A String&quot;, # The value of the header after the `:` separator. For example,
# `someuser@example.com`.
},
],
&quot;filename&quot;: &quot;A String&quot;, # The filename of the attachment. Only present if this message part
# represents an attachment.
&quot;partId&quot;: &quot;A String&quot;, # The immutable ID of the message part.
&quot;body&quot;: { # The body of a single MIME message part. # The message part body for this part, which may be empty for
# container MIME message parts.
&quot;size&quot;: 42, # Number of bytes for the message part data (encoding notwithstanding).
&quot;attachmentId&quot;: &quot;A String&quot;, # 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.
&quot;data&quot;: &quot;A String&quot;, # 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.
},
},
&quot;historyId&quot;: &quot;A String&quot;, # The ID of the last history record that modified this message.
&quot;snippet&quot;: &quot;A String&quot;, # A short part of the message text.
&quot;raw&quot;: &quot;A String&quot;, # 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.
# @mutable gmail.users.messages.insert gmail.users.messages.send
# @mutable gmail.users.drafts.create gmail.users.drafts.update
&quot;labelIds&quot;: [ # List of IDs of labels applied to this message.
# @mutable gmail.users.messages.insert gmail.users.messages.modify
&quot;A String&quot;,
],
}</pre>
</div>
</body></html>