Home | History | Annotate | Download | only in dyn
      1 <html><body>
      2 <style>
      3 
      4 body, h1, h2, h3, div, span, p, pre, a {
      5   margin: 0;
      6   padding: 0;
      7   border: 0;
      8   font-weight: inherit;
      9   font-style: inherit;
     10   font-size: 100%;
     11   font-family: inherit;
     12   vertical-align: baseline;
     13 }
     14 
     15 body {
     16   font-size: 13px;
     17   padding: 1em;
     18 }
     19 
     20 h1 {
     21   font-size: 26px;
     22   margin-bottom: 1em;
     23 }
     24 
     25 h2 {
     26   font-size: 24px;
     27   margin-bottom: 1em;
     28 }
     29 
     30 h3 {
     31   font-size: 20px;
     32   margin-bottom: 1em;
     33   margin-top: 1em;
     34 }
     35 
     36 pre, code {
     37   line-height: 1.5;
     38   font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
     39 }
     40 
     41 pre {
     42   margin-top: 0.5em;
     43 }
     44 
     45 h1, h2, h3, p {
     46   font-family: Arial, sans serif;
     47 }
     48 
     49 h1, h2, h3 {
     50   border-bottom: solid #CCC 1px;
     51 }
     52 
     53 .toc_element {
     54   margin-top: 0.5em;
     55 }
     56 
     57 .firstline {
     58   margin-left: 2 em;
     59 }
     60 
     61 .method  {
     62   margin-top: 1em;
     63   border: solid 1px #CCC;
     64   padding: 1em;
     65   background: #EEE;
     66 }
     67 
     68 .details {
     69   font-weight: bold;
     70   font-size: 14px;
     71 }
     72 
     73 </style>
     74 
     75 <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>
     76 <h2>Instance Methods</h2>
     77 <p class="toc_element">
     78   <code><a href="gmail_v1.users.messages.attachments.html">attachments()</a></code>
     79 </p>
     80 <p class="firstline">Returns the attachments Resource.</p>
     81 
     82 <p class="toc_element">
     83   <code><a href="#batchDelete">batchDelete(userId, body)</a></code></p>
     84 <p class="firstline">Deletes many messages by message ID. Provides no guarantees that messages were not already deleted or even existed at all.</p>
     85 <p class="toc_element">
     86   <code><a href="#batchModify">batchModify(userId, body)</a></code></p>
     87 <p class="firstline">Modifies the labels on the specified messages.</p>
     88 <p class="toc_element">
     89   <code><a href="#delete">delete(userId, id)</a></code></p>
     90 <p class="firstline">Immediately and permanently deletes the specified message. This operation cannot be undone. Prefer messages.trash instead.</p>
     91 <p class="toc_element">
     92   <code><a href="#get">get(userId, id, format=None, metadataHeaders=None)</a></code></p>
     93 <p class="firstline">Gets the specified message.</p>
     94 <p class="toc_element">
     95   <code><a href="#import_">import_(userId, body=None, media_body=None, internalDateSource=None, neverMarkSpam=None, media_mime_type=None, deleted=None, processForCalendar=None)</a></code></p>
     96 <p class="firstline">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.</p>
     97 <p class="toc_element">
     98   <code><a href="#insert">insert(userId, body=None, media_body=None, internalDateSource=None, media_mime_type=None, deleted=None)</a></code></p>
     99 <p class="firstline">Directly inserts a message into only this user's mailbox similar to IMAP APPEND, bypassing most scanning and classification. Does not send a message.</p>
    100 <p class="toc_element">
    101   <code><a href="#list">list(userId, labelIds=None, q=None, pageToken=None, maxResults=None, includeSpamTrash=None)</a></code></p>
    102 <p class="firstline">Lists the messages in the user's mailbox.</p>
    103 <p class="toc_element">
    104   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
    105 <p class="firstline">Retrieves the next page of results.</p>
    106 <p class="toc_element">
    107   <code><a href="#modify">modify(userId, id, body)</a></code></p>
    108 <p class="firstline">Modifies the labels on the specified message.</p>
    109 <p class="toc_element">
    110   <code><a href="#send">send(userId, body=None, media_body=None, media_mime_type=None)</a></code></p>
    111 <p class="firstline">Sends the specified message to the recipients in the To, Cc, and Bcc headers.</p>
    112 <p class="toc_element">
    113   <code><a href="#trash">trash(userId, id)</a></code></p>
    114 <p class="firstline">Moves the specified message to the trash.</p>
    115 <p class="toc_element">
    116   <code><a href="#untrash">untrash(userId, id)</a></code></p>
    117 <p class="firstline">Removes the specified message from the trash.</p>
    118 <h3>Method Details</h3>
    119 <div class="method">
    120     <code class="details" id="batchDelete">batchDelete(userId, body)</code>
    121   <pre>Deletes many messages by message ID. Provides no guarantees that messages were not already deleted or even existed at all.
    122 
    123 Args:
    124   userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
    125   body: object, The request body. (required)
    126     The object takes the form of:
    127 
    128 {
    129     "ids": [ # The IDs of the messages to delete.
    130       "A String",
    131     ],
    132   }
    133 
    134 </pre>
    135 </div>
    136 
    137 <div class="method">
    138     <code class="details" id="batchModify">batchModify(userId, body)</code>
    139   <pre>Modifies the labels on the specified messages.
    140 
    141 Args:
    142   userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
    143   body: object, The request body. (required)
    144     The object takes the form of:
    145 
    146 {
    147     "removeLabelIds": [ # A list of label IDs to remove from messages.
    148       "A String",
    149     ],
    150     "ids": [ # The IDs of the messages to modify. There is a limit of 1000 ids per request.
    151       "A String",
    152     ],
    153     "addLabelIds": [ # A list of label IDs to add to messages.
    154       "A String",
    155     ],
    156   }
    157 
    158 </pre>
    159 </div>
    160 
    161 <div class="method">
    162     <code class="details" id="delete">delete(userId, id)</code>
    163   <pre>Immediately and permanently deletes the specified message. This operation cannot be undone. Prefer messages.trash instead.
    164 
    165 Args:
    166   userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
    167   id: string, The ID of the message to delete. (required)
    168 </pre>
    169 </div>
    170 
    171 <div class="method">
    172     <code class="details" id="get">get(userId, id, format=None, metadataHeaders=None)</code>
    173   <pre>Gets the specified message.
    174 
    175 Args:
    176   userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
    177   id: string, The ID of the message to retrieve. (required)
    178   format: string, The format to return the message in.
    179     Allowed values
    180       full - 
    181       metadata - 
    182       minimal - 
    183       raw - 
    184   metadataHeaders: string, When given and format is METADATA, only include headers specified. (repeated)
    185 
    186 Returns:
    187   An object of the form:
    188 
    189     { # An email message.
    190     "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.
    191     "historyId": "A String", # The ID of the last history record that modified this message.
    192     "payload": { # A single MIME message part. # The parsed email structure in the message parts.
    193       "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.
    194         "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.
    195         "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.
    196         "size": 42, # Number of bytes for the message part data (encoding notwithstanding).
    197       },
    198       "mimeType": "A String", # The MIME type of the message part.
    199       "partId": "A String", # The immutable ID of the message part.
    200       "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment.
    201       "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.
    202         {
    203           "name": "A String", # The name of the header before the : separator. For example, To.
    204           "value": "A String", # The value of the header after the : separator. For example, someuser (a] example.com.
    205         },
    206       ],
    207       "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.
    208         # Object with schema name: MessagePart
    209       ],
    210     },
    211     "snippet": "A String", # A short part of the message text.
    212     "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.
    213     "sizeEstimate": 42, # Estimated size in bytes of the message.
    214     "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:
    215         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
    216         # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
    217         # - The Subject headers must match.
    218     "labelIds": [ # List of IDs of labels applied to this message.
    219       "A String",
    220     ],
    221     "id": "A String", # The immutable ID of the message.
    222   }</pre>
    223 </div>
    224 
    225 <div class="method">
    226     <code class="details" id="import_">import_(userId, body=None, media_body=None, internalDateSource=None, neverMarkSpam=None, media_mime_type=None, deleted=None, processForCalendar=None)</code>
    227   <pre>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.
    228 
    229 Args:
    230   userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
    231   body: object, The request body.
    232     The object takes the form of:
    233 
    234 { # An email message.
    235   "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.
    236   "historyId": "A String", # The ID of the last history record that modified this message.
    237   "payload": { # A single MIME message part. # The parsed email structure in the message parts.
    238     "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.
    239       "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.
    240       "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.
    241       "size": 42, # Number of bytes for the message part data (encoding notwithstanding).
    242     },
    243     "mimeType": "A String", # The MIME type of the message part.
    244     "partId": "A String", # The immutable ID of the message part.
    245     "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment.
    246     "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.
    247       {
    248         "name": "A String", # The name of the header before the : separator. For example, To.
    249         "value": "A String", # The value of the header after the : separator. For example, someuser (a] example.com.
    250       },
    251     ],
    252     "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.
    253       # Object with schema name: MessagePart
    254     ],
    255   },
    256   "snippet": "A String", # A short part of the message text.
    257   "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.
    258   "sizeEstimate": 42, # Estimated size in bytes of the message.
    259   "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:
    260       # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
    261       # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
    262       # - The Subject headers must match.
    263   "labelIds": [ # List of IDs of labels applied to this message.
    264     "A String",
    265   ],
    266   "id": "A String", # The immutable ID of the message.
    267 }
    268 
    269   media_body: string, The filename of the media request body, or an instance of a MediaUpload object.
    270   internalDateSource: string, Source for Gmail's internal date of the message.
    271     Allowed values
    272       dateHeader - 
    273       receivedTime - 
    274   neverMarkSpam: boolean, Ignore the Gmail spam classifier decision and never mark this email as SPAM in the mailbox.
    275   media_mime_type: string, The MIME type of the media request body, or an instance of a MediaUpload object.
    276   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.
    277   processForCalendar: boolean, Process calendar invites in the email and add any extracted meetings to the Google Calendar for this user.
    278 
    279 Returns:
    280   An object of the form:
    281 
    282     { # An email message.
    283     "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.
    284     "historyId": "A String", # The ID of the last history record that modified this message.
    285     "payload": { # A single MIME message part. # The parsed email structure in the message parts.
    286       "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.
    287         "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.
    288         "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.
    289         "size": 42, # Number of bytes for the message part data (encoding notwithstanding).
    290       },
    291       "mimeType": "A String", # The MIME type of the message part.
    292       "partId": "A String", # The immutable ID of the message part.
    293       "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment.
    294       "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.
    295         {
    296           "name": "A String", # The name of the header before the : separator. For example, To.
    297           "value": "A String", # The value of the header after the : separator. For example, someuser (a] example.com.
    298         },
    299       ],
    300       "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.
    301         # Object with schema name: MessagePart
    302       ],
    303     },
    304     "snippet": "A String", # A short part of the message text.
    305     "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.
    306     "sizeEstimate": 42, # Estimated size in bytes of the message.
    307     "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:
    308         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
    309         # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
    310         # - The Subject headers must match.
    311     "labelIds": [ # List of IDs of labels applied to this message.
    312       "A String",
    313     ],
    314     "id": "A String", # The immutable ID of the message.
    315   }</pre>
    316 </div>
    317 
    318 <div class="method">
    319     <code class="details" id="insert">insert(userId, body=None, media_body=None, internalDateSource=None, media_mime_type=None, deleted=None)</code>
    320   <pre>Directly inserts a message into only this user's mailbox similar to IMAP APPEND, bypassing most scanning and classification. Does not send a message.
    321 
    322 Args:
    323   userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
    324   body: object, The request body.
    325     The object takes the form of:
    326 
    327 { # An email message.
    328   "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.
    329   "historyId": "A String", # The ID of the last history record that modified this message.
    330   "payload": { # A single MIME message part. # The parsed email structure in the message parts.
    331     "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.
    332       "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.
    333       "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.
    334       "size": 42, # Number of bytes for the message part data (encoding notwithstanding).
    335     },
    336     "mimeType": "A String", # The MIME type of the message part.
    337     "partId": "A String", # The immutable ID of the message part.
    338     "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment.
    339     "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.
    340       {
    341         "name": "A String", # The name of the header before the : separator. For example, To.
    342         "value": "A String", # The value of the header after the : separator. For example, someuser (a] example.com.
    343       },
    344     ],
    345     "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.
    346       # Object with schema name: MessagePart
    347     ],
    348   },
    349   "snippet": "A String", # A short part of the message text.
    350   "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.
    351   "sizeEstimate": 42, # Estimated size in bytes of the message.
    352   "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:
    353       # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
    354       # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
    355       # - The Subject headers must match.
    356   "labelIds": [ # List of IDs of labels applied to this message.
    357     "A String",
    358   ],
    359   "id": "A String", # The immutable ID of the message.
    360 }
    361 
    362   media_body: string, The filename of the media request body, or an instance of a MediaUpload object.
    363   internalDateSource: string, Source for Gmail's internal date of the message.
    364     Allowed values
    365       dateHeader - 
    366       receivedTime - 
    367   media_mime_type: string, The MIME type of the media request body, or an instance of a MediaUpload object.
    368   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.
    369 
    370 Returns:
    371   An object of the form:
    372 
    373     { # An email message.
    374     "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.
    375     "historyId": "A String", # The ID of the last history record that modified this message.
    376     "payload": { # A single MIME message part. # The parsed email structure in the message parts.
    377       "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.
    378         "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.
    379         "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.
    380         "size": 42, # Number of bytes for the message part data (encoding notwithstanding).
    381       },
    382       "mimeType": "A String", # The MIME type of the message part.
    383       "partId": "A String", # The immutable ID of the message part.
    384       "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment.
    385       "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.
    386         {
    387           "name": "A String", # The name of the header before the : separator. For example, To.
    388           "value": "A String", # The value of the header after the : separator. For example, someuser (a] example.com.
    389         },
    390       ],
    391       "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.
    392         # Object with schema name: MessagePart
    393       ],
    394     },
    395     "snippet": "A String", # A short part of the message text.
    396     "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.
    397     "sizeEstimate": 42, # Estimated size in bytes of the message.
    398     "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:
    399         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
    400         # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
    401         # - The Subject headers must match.
    402     "labelIds": [ # List of IDs of labels applied to this message.
    403       "A String",
    404     ],
    405     "id": "A String", # The immutable ID of the message.
    406   }</pre>
    407 </div>
    408 
    409 <div class="method">
    410     <code class="details" id="list">list(userId, labelIds=None, q=None, pageToken=None, maxResults=None, includeSpamTrash=None)</code>
    411   <pre>Lists the messages in the user's mailbox.
    412 
    413 Args:
    414   userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
    415   labelIds: string, Only return messages with labels that match all of the specified label IDs. (repeated)
    416   q: string, Only return messages matching the specified query. Supports the same query format as the Gmail search box. For example, "from:someuser (a] example.com rfc822msgid:<somemsgid (a] example.com> is:unread". Parameter cannot be used when accessing the api using the gmail.metadata scope.
    417   pageToken: string, Page token to retrieve a specific page of results in the list.
    418   maxResults: integer, Maximum number of messages to return.
    419   includeSpamTrash: boolean, Include messages from SPAM and TRASH in the results.
    420 
    421 Returns:
    422   An object of the form:
    423 
    424     {
    425     "nextPageToken": "A String", # Token to retrieve the next page of results in the list.
    426     "resultSizeEstimate": 42, # Estimated total number of results.
    427     "messages": [ # List of messages.
    428       { # An email message.
    429         "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.
    430         "historyId": "A String", # The ID of the last history record that modified this message.
    431         "payload": { # A single MIME message part. # The parsed email structure in the message parts.
    432           "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.
    433             "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.
    434             "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.
    435             "size": 42, # Number of bytes for the message part data (encoding notwithstanding).
    436           },
    437           "mimeType": "A String", # The MIME type of the message part.
    438           "partId": "A String", # The immutable ID of the message part.
    439           "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment.
    440           "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.
    441             {
    442               "name": "A String", # The name of the header before the : separator. For example, To.
    443               "value": "A String", # The value of the header after the : separator. For example, someuser (a] example.com.
    444             },
    445           ],
    446           "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.
    447             # Object with schema name: MessagePart
    448           ],
    449         },
    450         "snippet": "A String", # A short part of the message text.
    451         "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.
    452         "sizeEstimate": 42, # Estimated size in bytes of the message.
    453         "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:
    454             # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
    455             # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
    456             # - The Subject headers must match.
    457         "labelIds": [ # List of IDs of labels applied to this message.
    458           "A String",
    459         ],
    460         "id": "A String", # The immutable ID of the message.
    461       },
    462     ],
    463   }</pre>
    464 </div>
    465 
    466 <div class="method">
    467     <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
    468   <pre>Retrieves the next page of results.
    469 
    470 Args:
    471   previous_request: The request for the previous page. (required)
    472   previous_response: The response from the request for the previous page. (required)
    473 
    474 Returns:
    475   A request object that you can call 'execute()' on to request the next
    476   page. Returns None if there are no more items in the collection.
    477     </pre>
    478 </div>
    479 
    480 <div class="method">
    481     <code class="details" id="modify">modify(userId, id, body)</code>
    482   <pre>Modifies the labels on the specified message.
    483 
    484 Args:
    485   userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
    486   id: string, The ID of the message to modify. (required)
    487   body: object, The request body. (required)
    488     The object takes the form of:
    489 
    490 {
    491     "removeLabelIds": [ # A list IDs of labels to remove from this message.
    492       "A String",
    493     ],
    494     "addLabelIds": [ # A list of IDs of labels to add to this message.
    495       "A String",
    496     ],
    497   }
    498 
    499 
    500 Returns:
    501   An object of the form:
    502 
    503     { # An email message.
    504     "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.
    505     "historyId": "A String", # The ID of the last history record that modified this message.
    506     "payload": { # A single MIME message part. # The parsed email structure in the message parts.
    507       "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.
    508         "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.
    509         "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.
    510         "size": 42, # Number of bytes for the message part data (encoding notwithstanding).
    511       },
    512       "mimeType": "A String", # The MIME type of the message part.
    513       "partId": "A String", # The immutable ID of the message part.
    514       "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment.
    515       "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.
    516         {
    517           "name": "A String", # The name of the header before the : separator. For example, To.
    518           "value": "A String", # The value of the header after the : separator. For example, someuser (a] example.com.
    519         },
    520       ],
    521       "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.
    522         # Object with schema name: MessagePart
    523       ],
    524     },
    525     "snippet": "A String", # A short part of the message text.
    526     "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.
    527     "sizeEstimate": 42, # Estimated size in bytes of the message.
    528     "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:
    529         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
    530         # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
    531         # - The Subject headers must match.
    532     "labelIds": [ # List of IDs of labels applied to this message.
    533       "A String",
    534     ],
    535     "id": "A String", # The immutable ID of the message.
    536   }</pre>
    537 </div>
    538 
    539 <div class="method">
    540     <code class="details" id="send">send(userId, body=None, media_body=None, media_mime_type=None)</code>
    541   <pre>Sends the specified message to the recipients in the To, Cc, and Bcc headers.
    542 
    543 Args:
    544   userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
    545   body: object, The request body.
    546     The object takes the form of:
    547 
    548 { # An email message.
    549   "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.
    550   "historyId": "A String", # The ID of the last history record that modified this message.
    551   "payload": { # A single MIME message part. # The parsed email structure in the message parts.
    552     "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.
    553       "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.
    554       "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.
    555       "size": 42, # Number of bytes for the message part data (encoding notwithstanding).
    556     },
    557     "mimeType": "A String", # The MIME type of the message part.
    558     "partId": "A String", # The immutable ID of the message part.
    559     "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment.
    560     "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.
    561       {
    562         "name": "A String", # The name of the header before the : separator. For example, To.
    563         "value": "A String", # The value of the header after the : separator. For example, someuser (a] example.com.
    564       },
    565     ],
    566     "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.
    567       # Object with schema name: MessagePart
    568     ],
    569   },
    570   "snippet": "A String", # A short part of the message text.
    571   "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.
    572   "sizeEstimate": 42, # Estimated size in bytes of the message.
    573   "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:
    574       # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
    575       # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
    576       # - The Subject headers must match.
    577   "labelIds": [ # List of IDs of labels applied to this message.
    578     "A String",
    579   ],
    580   "id": "A String", # The immutable ID of the message.
    581 }
    582 
    583   media_body: string, The filename of the media request body, or an instance of a MediaUpload object.
    584   media_mime_type: string, The MIME type of the media request body, or an instance of a MediaUpload object.
    585 
    586 Returns:
    587   An object of the form:
    588 
    589     { # An email message.
    590     "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.
    591     "historyId": "A String", # The ID of the last history record that modified this message.
    592     "payload": { # A single MIME message part. # The parsed email structure in the message parts.
    593       "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.
    594         "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.
    595         "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.
    596         "size": 42, # Number of bytes for the message part data (encoding notwithstanding).
    597       },
    598       "mimeType": "A String", # The MIME type of the message part.
    599       "partId": "A String", # The immutable ID of the message part.
    600       "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment.
    601       "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.
    602         {
    603           "name": "A String", # The name of the header before the : separator. For example, To.
    604           "value": "A String", # The value of the header after the : separator. For example, someuser (a] example.com.
    605         },
    606       ],
    607       "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.
    608         # Object with schema name: MessagePart
    609       ],
    610     },
    611     "snippet": "A String", # A short part of the message text.
    612     "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.
    613     "sizeEstimate": 42, # Estimated size in bytes of the message.
    614     "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:
    615         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
    616         # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
    617         # - The Subject headers must match.
    618     "labelIds": [ # List of IDs of labels applied to this message.
    619       "A String",
    620     ],
    621     "id": "A String", # The immutable ID of the message.
    622   }</pre>
    623 </div>
    624 
    625 <div class="method">
    626     <code class="details" id="trash">trash(userId, id)</code>
    627   <pre>Moves the specified message to the trash.
    628 
    629 Args:
    630   userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
    631   id: string, The ID of the message to Trash. (required)
    632 
    633 Returns:
    634   An object of the form:
    635 
    636     { # An email message.
    637     "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.
    638     "historyId": "A String", # The ID of the last history record that modified this message.
    639     "payload": { # A single MIME message part. # The parsed email structure in the message parts.
    640       "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.
    641         "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.
    642         "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.
    643         "size": 42, # Number of bytes for the message part data (encoding notwithstanding).
    644       },
    645       "mimeType": "A String", # The MIME type of the message part.
    646       "partId": "A String", # The immutable ID of the message part.
    647       "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment.
    648       "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.
    649         {
    650           "name": "A String", # The name of the header before the : separator. For example, To.
    651           "value": "A String", # The value of the header after the : separator. For example, someuser (a] example.com.
    652         },
    653       ],
    654       "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.
    655         # Object with schema name: MessagePart
    656       ],
    657     },
    658     "snippet": "A String", # A short part of the message text.
    659     "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.
    660     "sizeEstimate": 42, # Estimated size in bytes of the message.
    661     "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:
    662         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
    663         # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
    664         # - The Subject headers must match.
    665     "labelIds": [ # List of IDs of labels applied to this message.
    666       "A String",
    667     ],
    668     "id": "A String", # The immutable ID of the message.
    669   }</pre>
    670 </div>
    671 
    672 <div class="method">
    673     <code class="details" id="untrash">untrash(userId, id)</code>
    674   <pre>Removes the specified message from the trash.
    675 
    676 Args:
    677   userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
    678   id: string, The ID of the message to remove from Trash. (required)
    679 
    680 Returns:
    681   An object of the form:
    682 
    683     { # An email message.
    684     "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.
    685     "historyId": "A String", # The ID of the last history record that modified this message.
    686     "payload": { # A single MIME message part. # The parsed email structure in the message parts.
    687       "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.
    688         "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.
    689         "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.
    690         "size": 42, # Number of bytes for the message part data (encoding notwithstanding).
    691       },
    692       "mimeType": "A String", # The MIME type of the message part.
    693       "partId": "A String", # The immutable ID of the message part.
    694       "filename": "A String", # The filename of the attachment. Only present if this message part represents an attachment.
    695       "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.
    696         {
    697           "name": "A String", # The name of the header before the : separator. For example, To.
    698           "value": "A String", # The value of the header after the : separator. For example, someuser (a] example.com.
    699         },
    700       ],
    701       "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.
    702         # Object with schema name: MessagePart
    703       ],
    704     },
    705     "snippet": "A String", # A short part of the message text.
    706     "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.
    707     "sizeEstimate": 42, # Estimated size in bytes of the message.
    708     "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:
    709         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
    710         # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
    711         # - The Subject headers must match.
    712     "labelIds": [ # List of IDs of labels applied to this message.
    713       "A String",
    714     ],
    715     "id": "A String", # The immutable ID of the message.
    716   }</pre>
    717 </div>
    718 
    719 </body></html>