รับ
ป้ายกำกับและ bucket
จัดเก็บอีเมลที่ส่งและได้รับเข้าป้ายกำกับโดยอัตโนมัติ และให้เอเจนต์มี bucket ที่บทสนทนาไม่หลุดออกไป
ป้ายกำกับ
ป้ายกำกับทำงานเหมือนโฟลเดอร์ของ Gmail ข้อความหนึ่งฉบับมีป้ายกำกับได้สูงสุด 10 รายการ และเวิร์กสเปซมีได้ 200 รายการ สร้างด้วย POST /labels แสดงรายการพร้อมจำนวนข้อความและจำนวนที่ยังไม่อ่านด้วย GET /labels และอ่านรายการหนึ่งด้วย GET /emails?label=Billing อ้างอิงป้ายกำกับได้ด้วยชื่อหรือ lbl_ ID ได้ทุกที่
ส่งเข้าป้ายกำกับ
{
"from": "Orders <orders@example.com>",
"to": [
"customer@example.net"
],
"subject": "Order 1042",
"text": "Reply with a delivery window.",
"labels": [
"Agent/Orders"
]
}ชื่อป้ายกำกับที่ไม่รู้จักจะถูกสร้างขึ้น ทุกข้อความที่ตามมาในบทสนทนา รวมถึงอีเมลตอบกลับของลูกค้า จะสืบทอดป้ายกำกับของบทสนทนา
Bucket
สร้างป้ายกำกับด้วย "skip_inbox": true เพื่อให้เป็น bucket อีเมลที่ได้รับและได้ป้ายกำกับ bucket ไม่ว่าจากกฎการจัดเก็บ การตอบกลับบทสนทนาที่มีป้ายกำกับ หรือ POST /emails/:id/labels จะถูกเก็บถาวร จึงปรากฏเฉพาะในป้ายกำกับ ไม่ปรากฏในกล่องเข้า อีเมลที่ส่งไม่ปรากฏในกล่องเข้าเลย เมื่อรวมกัน บทสนทนางานของเอเจนต์จะอยู่ที่เดียวทั้งสองทิศทาง
{
"name": "Agent/Orders",
"skip_inbox": true,
"rules": [
{
"inbox_id": "inb_…"
}
],
"apply_to_existing": true
}กฎการจัดเก็บ
กฎจะจัดเก็บอีเมลใหม่โดยอัตโนมัติ ทุกเงื่อนไขที่ตั้งไว้ในกฎต้องตรงกัน ได้แก่ inbox_id (ที่อยู่ที่รับ) direction (in หรือ out) และสตริงย่อยของ from, to (To และ Cc) และ subject โดยไม่สนตัวพิมพ์ skip_inbox ของกฎเองจะเก็บถาวรเฉพาะอีเมลที่ได้รับซึ่งตรงกับกฎ เพิ่มกฎด้วย POST /labels/:id/rules ส่วน apply_to_existing จะจัดเก็บอีเมลที่เก็บรักษาไว้ด้วย
ทำงานกับ bucket
poll GET /emails?label=Agent%2FOrders&direction=in&unread=true อ่านบทสนทนาด้วย GET /threads/:id ตอบกลับด้วย reply_to_email_id แล้วทำเครื่องหมายว่าจัดการแล้วด้วย PATCH /emails/:id {"read": true} ย้ายข้อความเข้าหรือออกด้วย POST /emails/:id/labels {"add": [...], "remove": [...]} MCP server เปิดให้ใช้การดำเนินการเดียวกันในชื่อ create_label, create_label_rule, label_email และ list_emails