মেসেজের বিবরণ পান

এই পৃষ্ঠায় ব্যাখ্যা করা হয়েছে যে কীভাবে 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 মেথড কল করুন। আপনি list বা search থেকে পাওয়া উত্তর থেকে সরাসরি অনুরোধের পাথ হিসেবে name ফিল্ড পাস করতে পারবেন, যেমন 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 এবং subject, body, headers, attachments, labels ও classificationLabelValues সহ পার্স করা content অবজেক্ট।
MESSAGE_VIEW_RAW name, messageId, messageOwner এবং rawMessage, base64url-এনকোড করা স্ট্রিং হিসেবে RFC 2822 ফর্ম্যাটে সম্পূর্ণ মেসেজ।

আপনি view বাদ দিলে, API বেসিক ভিউ দেখায়। শনাক্ত করা যায়নি এমন ভিউ ভ্যালু 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[] MIME-ডিকোড করা ভ্যালু সহ মেসেজ হেডার।
content.attachments[] প্রতিটি অ্যাটাচমেন্টের ফাইলের নাম, MIME-এর প্রকার, বাইটে সাইজ এবং আইডি।
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'])

পরবর্তী ধাপ