Cette page explique comment récupérer les détails d'un seul message mis en quarantaine à l'aide de la méthode get de la ressource customers.quarantinedMessages dans l'API Mail Admin Quarantine. Utilisez-le pour inspecter les en-têtes, l'objet, le corps et les pièces jointes d'un message avant de décider de le distribuer ou de le refuser.
Prérequis
- Vous avez suivi les étapes de la section Configurer l'API.
- Un jeton d'accès qui emprunte l'identité d'un administrateur disposant d'un droit de mise en quarantaine d'administrateur et inclut le champ d'application
https://www.googleapis.com/auth/gmail.admin.quarantineouhttps://www.googleapis.com/auth/gmail.admin.quarantine.readonly. Consultez Autoriser avec la délégation au niveau du domaine. - Nom de ressource d'un message mis en quarantaine, que vous obtenez à partir de Lister et rechercher des messages mis en quarantaine.
Obtenir un message mis en quarantaine
Pour obtenir un message mis en quarantaine, envoyez une requête GET à la méthode get sur le nom de ressource du message et choisissez la quantité de contenu à renvoyer avec le paramètre de requête view :
GET https://mailadminquarantine.googleapis.com/v1/customers/CUSTOMER_ID/quarantinedMessages/MESSAGE_OWNER:MESSAGE_ID?view=MESSAGE_VIEW_DETAILS
Authorization: Bearer ACCESS_TOKEN
Remplacez les éléments suivants :
- CUSTOMER_ID : votre numéro client.
- MESSAGE_OWNER : adresse e-mail du propriétaire de la boîte aux lettres, telle qu'elle est renvoyée dans le champ
messageOwner. - MESSAGE_ID : ID du message Gmail, tel qu'il est renvoyé dans le champ
messageId.
Pour trouver ces valeurs, appelez la méthode list ou search de la ressource customers.quarantinedMessages. Vous pouvez transmettre le champ name d'une réponse list ou search directement en tant que chemin de requête, par exemple https://mailadminquarantine.googleapis.com/v1/customers/01abc23de/quarantinedMessages/user@example.com:18d3ef45a8b2c1d0.
Vues du message
Le paramètre de requête view détermine les champs inclus dans la réponse :
| Afficher | Champs renvoyés |
|---|---|
MESSAGE_VIEW_BASIC (par défaut) |
Métadonnées de quarantaine uniquement : name, messageId, messageOwner, quarantines, receiveTime, direction, state, retentionExpireTime et triggeredRules. |
MESSAGE_VIEW_DETAILS |
name, messageId, messageOwner et l'objet content analysé avec subject, body, headers, attachments, labels et classificationLabelValues. |
MESSAGE_VIEW_RAW |
name, messageId, messageOwner et rawMessage : message complet au format RFC 2822 sous forme de chaîne encodée en base64url. |
Si vous omettez view, l'API renvoie la vue de base. Une valeur de vue non reconnue renvoie une erreur 400 INVALID_ARGUMENT.
Exemple de réponse
La réponse suivante utilise 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"]
}
}
Le tableau suivant présente les champs de contenu d'une réponse :
| Champ | Description |
|---|---|
content.subject |
Objet du message. |
content.body |
Corps ou extrait du message en texte brut. |
content.headers[] |
En-têtes du message, avec des valeurs décodées au format MIME. |
content.attachments[] |
Le nom de fichier, le type MIME, la taille en octets et l'ID de chaque pièce jointe. |
content.labels[] |
Libellés Gmail standards appliqués au message. |
content.classificationLabelValues[] |
Libellés de classification appliqués au message, le cas échéant. |
Décoder un message brut
Avec view=MESSAGE_VIEW_RAW, le champ rawMessage contient le message complet au format RFC 2822, encodé sous forme de chaîne base64url. Décodez-le pour analyser le message avec des outils de messagerie standards, par exemple :
import base64
import email
raw_message = response.json()['rawMessage']
mime_message = email.message_from_bytes(base64.urlsafe_b64decode(raw_message))
print(mime_message['Subject'])