หน้านี้อธิบายวิธีเรียกดูรายละเอียดของข้อความที่กักเก็บไว้รายการเดียวด้วยเมธอด get ของทรัพยากร customers.quarantinedMessages ใน Mail Admin Quarantine API ใช้เพื่อตรวจสอบส่วนหัว เรื่อง เนื้อหา และไฟล์แนบของข้อความก่อนตัดสินใจว่าจะปล่อยหรือปฏิเสธข้อความ
ข้อกำหนดเบื้องต้น
- คุณได้ทำตามขั้นตอนในหัวข้อตั้งค่า API แล้ว
- โทเค็นเพื่อการเข้าถึงที่แอบอ้างเป็นผู้ดูแลระบบที่มีสิทธิ์เขตกักบริเวณของผู้ดูแลระบบและมีขอบเขต
https://www.googleapis.com/auth/gmail.admin.quarantineหรือhttps://www.googleapis.com/auth/gmail.admin.quarantine.readonlyดูหัวข้อให้สิทธิ์ด้วยการมอบสิทธิ์ทั่วทั้งโดเมน - ชื่อทรัพยากรของข้อความที่กักเก็บไว้ ซึ่งคุณจะได้รับจากแสดงรายการและค้นหาข้อความที่กักเก็บไว้
รับข้อความที่กักเก็บไว้
หากต้องการรับข้อความที่กักเก็บไว้ ให้ส่งคำขอ 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, 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'])