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