Visualizza i dettagli del messaggio

Questa pagina spiega come recuperare i dettagli di un singolo messaggio in quarantena con il metodo get della risorsa customers.quarantinedMessages nell'API Mail Admin Quarantine. Utilizzala per esaminare le intestazioni, l'oggetto, il corpo e gli allegati di un messaggio prima di decidere se sbloccarlo o rifiutarlo.

Prerequisiti

Recuperare un messaggio in quarantena

Per recuperare un messaggio in quarantena, invia una richiesta GET al metodo get sul nome della risorsa del messaggio e scegli la quantità di contenuti da restituire con il parametro di query view:

GET https://mailadminquarantine.googleapis.com/v1/customers/CUSTOMER_ID/quarantinedMessages/MESSAGE_OWNER:MESSAGE_ID?view=MESSAGE_VIEW_DETAILS
Authorization: Bearer ACCESS_TOKEN

Sostituisci quanto segue:

  • CUSTOMER_ID: il tuo ID cliente.
  • MESSAGE_OWNER: l'indirizzo email del proprietario della casella di posta, come restituito nel campo messageOwner.
  • MESSAGE_ID: l'ID messaggio Gmail, come restituito nel campo messageId.

Per trovare questi valori, chiama il metodo list o search della risorsa customers.quarantinedMessages. Puoi passare il campo name da una risposta list o search direttamente come percorso della richiesta, ad esempio https://mailadminquarantine.googleapis.com/v1/customers/01abc23de/quarantinedMessages/user@example.com:18d3ef45a8b2c1d0.

Visualizzazioni del messaggio

Il parametro di query view determina i campi inclusi nella risposta:

Visualizza Campi restituiti
MESSAGE_VIEW_BASIC (valore predefinito) Solo metadati di quarantena: name, messageId, messageOwner, quarantines, receiveTime, direction, state, retentionExpireTime e triggeredRules.
MESSAGE_VIEW_DETAILS name, messageId, messageOwner e l'oggetto content analizzato con subject, body, headers, attachments, labels e classificationLabelValues.
MESSAGE_VIEW_RAW name, messageId, messageOwner e rawMessage, l'intero messaggio in formato RFC 2822 come stringa con codifica base64url.

Se ometti view, l'API restituisce la visualizzazione di base. Un valore di visualizzazione non riconosciuto restituisce un errore 400 INVALID_ARGUMENT.

Esempio di risposta

La seguente risposta utilizza 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"]
  }
}

La tabella seguente mostra i campi dei contenuti di una risposta:

Campo Descrizione
content.subject L'oggetto del messaggio.
content.body Il corpo o lo snippet in testo normale del messaggio.
content.headers[] Le intestazioni del messaggio, con valori decodificati MIME.
content.attachments[] Il nome file, il tipo MIME, le dimensioni in byte e l'ID di ogni allegato.
content.labels[] Etichette standard di Gmail applicate al messaggio.
content.classificationLabelValues[] Etichette di classificazione applicate al messaggio, se presenti.

Decodifica un messaggio non elaborato

Con view=MESSAGE_VIEW_RAW, il campo rawMessage contiene il messaggio completo nel formato RFC 2822, codificato come stringa base64url. Decodificalo per analizzare il messaggio con gli strumenti standard per le email, ad esempio:

import base64
import email

raw_message = response.json()['rawMessage']
mime_message = email.message_from_bytes(base64.urlsafe_b64decode(raw_message))
print(mime_message['Subject'])

Passaggi successivi