मैसेज की जानकारी पाना

इस पेज पर, क्वॉरंटीन किए गए किसी एक मैसेज की जानकारी पाने का तरीका बताया गया है. इसके लिए, Mail Admin Quarantine API में customers.quarantinedMessages रिसॉर्स के get तरीके का इस्तेमाल किया जाता है. इसका इस्तेमाल करके, किसी मैसेज के हेडर, विषय, मुख्य हिस्से, और अटैचमेंट की जांच करें. इसके बाद, तय करें कि उसे रिलीज़ करना है या अस्वीकार करना है.

ज़रूरी शर्तें

क्वॉरंटीन किया गया मैसेज पाना

क्वारंटीन किए गए किसी मैसेज को पाने के लिए, मैसेज के रिसॉर्स नेम पर get तरीके के लिए GET अनुरोध भेजें. साथ ही, view क्वेरी पैरामीटर की मदद से चुनें कि कितना कॉन्टेंट वापस पाना है:

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

इनकी जगह ये डालें:

  • CUSTOMER_ID: आपका ग्राहक आईडी.
  • MESSAGE_OWNER: मेलबॉक्स के मालिक का ईमेल पता, जैसा कि messageOwner फ़ील्ड में दिखाया गया है.
  • MESSAGE_ID: Gmail पर मिले मैसेज का आईडी, जैसा कि messageId फ़ील्ड में दिखाया गया है.

इन वैल्यू को ढूंढने के लिए, customers.quarantinedMessages संसाधन के list या search तरीके को कॉल करें. name फ़ील्ड को list या search रिस्पॉन्स से सीधे अनुरोध पाथ के तौर पर पास किया जा सकता है. उदाहरण के लिए, https://mailadminquarantine.googleapis.com/v1/customers/01abc23de/quarantinedMessages/user@example.com:18d3ef45a8b2c1d0.

मैसेज देखने वालों की संख्या

view क्वेरी पैरामीटर से यह तय होता है कि जवाब में कौनसे फ़ील्ड शामिल हैं:

देखें लौटाए गए फ़ील्ड
MESSAGE_VIEW_BASIC (डिफ़ॉल्ट) सिर्फ़ क्वॉरंटीन मेटाडेटा: name, messageId, messageOwner, quarantines, receiveTime, direction, state, retentionExpireTime, और triggeredRules.
MESSAGE_VIEW_DETAILS name, messageId, messageOwner, और पार्स किया गया content ऑब्जेक्ट, जिसमें subject, body, headers, attachments, labels, और classificationLabelValues शामिल हैं.
MESSAGE_VIEW_RAW name, messageId, messageOwner, और rawMessage, RFC 2822 फ़ॉर्मैट में पूरा मैसेज, base64url-encoded स्ट्रिंग के तौर पर.

view को शामिल न करने पर, एपीआई बेसिक व्यू दिखाता है. व्यू की ऐसी वैल्यू जिसकी पहचान नहीं की जा सकी, 400 INVALID_ARGUMENT गड़बड़ी दिखाती है.

जवाब का उदाहरण

इस जवाब में 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"]
  }
}

इस टेबल में, रिस्पॉन्स के कॉन्टेंट फ़ील्ड दिखाए गए हैं:

फ़ील्ड ब्यौरा
content.subject मैसेज का विषय.
content.body मैसेज का सादा टेक्स्ट या स्निपेट.
content.headers[] एमआईएमई-डिकोड की गई वैल्यू के साथ मैसेज के हेडर.
content.attachments[] हर अटैचमेंट का फ़ाइल नाम, एमआईएमई टाइप, साइज़ (बाइट में), और आईडी.
content.labels[] मैसेज पर लागू किए गए Gmail के स्टैंडर्ड लेबल.
content.classificationLabelValues[] मैसेज पर लागू किए गए क्लासिफ़िकेशन लेबल, अगर कोई हो.

रॉ मैसेज को डिकोड करना

view=MESSAGE_VIEW_RAW के साथ, rawMessage फ़ील्ड में RFC 2822 फ़ॉर्मैट में पूरा मैसेज होता है. इसे base64url स्ट्रिंग के तौर पर एन्कोड किया जाता है. मैसेज का विश्लेषण करने के लिए, उसे डिकोड करें. इसके लिए, ईमेल के स्टैंडर्ड टूल का इस्तेमाल करें. उदाहरण के लिए:

import base64
import email

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

अगले चरण