Nesta página, explicamos como recuperar os detalhes de uma única mensagem em quarentena
com o método
get
do recurso
customers.quarantinedMessages
na API Mail Admin Quarantine. Use-o para inspecionar os cabeçalhos, o assunto, o corpo e os anexos de uma mensagem antes de decidir se ela será liberada ou recusada.
Pré-requisitos
- Você concluiu as etapas em Configurar a API.
- Um token de acesso que personifica um administrador com um privilégio de quarentena de administrador e inclui o escopo
https://www.googleapis.com/auth/gmail.admin.quarantineouhttps://www.googleapis.com/auth/gmail.admin.quarantine.readonly. Consulte Autorizar com delegação em todo o domínio. - O nome do recurso de uma mensagem em quarentena, que você recebe em Listar e pesquisar mensagens em quarentena.
Receber uma mensagem em quarentena
Para receber uma mensagem em quarentena, envie uma solicitação GET para o método get no nome do recurso da mensagem e escolha quanto conteúdo retornar com o parâmetro de consulta view:
GET https://mailadminquarantine.googleapis.com/v1/customers/CUSTOMER_ID/quarantinedMessages/MESSAGE_OWNER:MESSAGE_ID?view=MESSAGE_VIEW_DETAILS
Authorization: Bearer ACCESS_TOKEN
Substitua:
- CUSTOMER_ID: seu ID de cliente.
- MESSAGE_OWNER: o endereço de e-mail do proprietário da caixa de correio, conforme
retornado no campo
messageOwner. - MESSAGE_ID: o ID da mensagem do Gmail, conforme retornado no
campo
messageId.
Para encontrar esses valores, chame o método
list
ou
search
do recurso customers.quarantinedMessages. É possível transmitir o campo name
de uma resposta list ou search diretamente como o caminho da solicitação, por
exemplo,
https://mailadminquarantine.googleapis.com/v1/customers/01abc23de/quarantinedMessages/user@example.com:18d3ef45a8b2c1d0.
Visualizações de mensagem
O parâmetro de consulta view determina quais campos a resposta inclui:
| Ver | Campos retornados |
|---|---|
MESSAGE_VIEW_BASIC (padrão) |
Somente metadados de quarentena: name, messageId, messageOwner, quarantines, receiveTime, direction, state, retentionExpireTime e triggeredRules. |
MESSAGE_VIEW_DETAILS |
name, messageId, messageOwner e o objeto content analisado com subject, body, headers, attachments, labels e classificationLabelValues. |
MESSAGE_VIEW_RAW |
name, messageId, messageOwner e rawMessage, a mensagem inteira no formato RFC 2822 como uma string codificada em base64url. |
Se você omitir view, a API vai retornar a visualização básica. Um valor de visualização não reconhecido
retorna um erro 400 INVALID_ARGUMENT.
Exemplo de resposta
A resposta a seguir usa view=MESSAGE_VIEW_DETAILS:
{
"name": "customers/01abc23de/quarantinedMessages/user@example.com:18d3ef45a8b2c1d0",
"messageId": "18d3ef45a8b2c1d0",
"messageOwner": "user@example.com",
"content": {
"subject": "Urgent: Verify your account details",
"body": "Please click the link below to verify your login credentials...",
"headers": [
{"name": "From", "value": "security-alert@external.example.net"},
{"name": "To", "value": "user@example.com"},
{"name": "Date", "value": "Tue, 22 Sep 2026 10:15:00 +0000"},
{"name": "Subject", "value": "Urgent: Verify your account details"}
],
"attachments": [
{
"filename": "invoice_update.pdf",
"mimeType": "application/pdf",
"sizeBytes": "142857",
"attachmentId": "att_987654321"
}
],
"labels": ["^admin_quarantine"]
}
}
A tabela a seguir mostra os campos de conteúdo de uma resposta:
| Campo | Descrição |
|---|---|
content.subject |
O assunto da mensagem. |
content.body |
O corpo ou snippet de texto simples da mensagem. |
content.headers[] |
Os cabeçalhos da mensagem, com valores decodificados por MIME. |
content.attachments[] |
O nome do arquivo, o tipo MIME, o tamanho em bytes e o ID de cada anexo. |
content.labels[] |
Marcadores padrão do Gmail aplicados à mensagem. |
content.classificationLabelValues[] |
Marcadores de classificação aplicados à mensagem, se houver. |
Decodificar uma mensagem bruta
Com view=MESSAGE_VIEW_RAW, o campo rawMessage contém a mensagem completa no formato RFC 2822, codificada como uma string base64url. Decodifique-a para analisar a mensagem com ferramentas de e-mail padrão, por exemplo:
import base64
import email
raw_message = response.json()['rawMessage']
mime_message = email.message_from_bytes(base64.urlsafe_b64decode(raw_message))
print(mime_message['Subject'])