الحصول على تفاصيل الرسالة

توضّح هذه الصفحة كيفية استرداد تفاصيل رسالة واحدة معزولة باستخدام طريقة get للمورد customers.quarantinedMessages في Mail Admin Quarantine API. ويمكنك استخدامها لفحص رؤوس الرسالة وموضوعها ونصها ومرفقاتها قبل أن تقرر ما إذا كنت ستوافق عليها أو ترفضها.

المتطلبات الأساسية

الحصول على رسالة معزولة

للحصول على رسالة معزولة، أرسِل طلب 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

للعثور على هذه القيم، يمكنك استدعاء الطريقة list أو search للمورد customers.quarantinedMessages. يمكنك تمرير الحقل 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.

في حال حذف 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[] رؤوس الرسائل، مع قيم تم فك ترميزها باستخدام 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'])

الخطوات التالية