קבלת פרטי ההודעה

בדף הזה מוסבר איך לאחזר את הפרטים של הודעה אחת בהסגר באמצעות ה-method‏ get של המשאב customers.quarantinedMessages ב-Mail Admin Quarantine API. אתם יכולים להשתמש בו כדי לבדוק את הכותרות, הנושא, גוף ההודעה והקבצים המצורפים של ההודעה לפני שאתם מחליטים אם לשחרר או לדחות אותה.

דרישות מוקדמות

קבלת הודעה בהסגר

כדי לקבל הודעה בהסגר, שולחים בקשת GET ל-method‏ 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.

כדי למצוא את הערכים האלה, צריך להפעיל את ה-method‏ 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, ה-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'])

השלבים הבאים