Method: users.watch

ตั้งค่าหรืออัปเดตการแจ้งเตือนแบบพุชในกล่องจดหมายของผู้ใช้ที่ระบุ

คำขอ HTTP

POST https://gmail.googleapis.com/gmail/v1/users/{userId}/watch

URL ใช้ไวยากรณ์การแปลงรหัส gRPC

พารามิเตอร์เส้นทาง

พารามิเตอร์
userId

string

อีเมลของผู้ใช้ ค่าพิเศษ me ใช้ระบุผู้ใช้ที่ได้รับการตรวจสอบสิทธิ์ได้

เนื้อความของคำขอ

เนื้อหาของคำขอมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้

การแสดง JSON
{
  "labelIds": [
    string
  ],
  "labelFilterAction": enum (LabelFilterAction),
  "labelFilterBehavior": enum (LabelFilterAction),
  "topicName": string
}
ช่อง
labelIds[]

string

รายการ labelIds เพื่อจำกัดการแจ้งเตือน โดยค่าเริ่มต้น หากไม่ได้ระบุ ระบบจะพุชการเปลี่ยนแปลงทั้งหมด หากระบุไว้ จะเป็นตัวกำหนดว่าต้องใช้ป้ายกำกับใดในการสร้างการแจ้งเตือนแบบพุช

labelFilterAction
(deprecated)

enum (LabelFilterAction)

ระบุลักษณะการทำงานของการกรองของ labelIds list ฟิลด์นี้เลิกใช้งานแล้วเนื่องจากทำให้เกิดลักษณะการทำงานที่ไม่ถูกต้องในบางกรณี โปรดใช้ labelFilterBehavior แทน

labelFilterBehavior

enum (LabelFilterAction)

ระบุลักษณะการทำงานของการกรองของ labelIds list ฟิลด์นี้จะแทนที่ labelFilterAction หากตั้งค่าไว้ ระบบจะไม่สนใจ labelFilterAction

topicName

string

ชื่อหัวข้อ Google Cloud Pub/Sub API ที่มีคุณสมบัติครบถ้วนเพื่อเผยแพร่เหตุการณ์ ชื่อหัวข้อนี้ต้องมีอยู่ใน Cloud Pub/Sub อยู่แล้ว และคุณต้องได้ให้สิทธิ์ "เผยแพร่" แก่ Gmail ในหัวข้อดังกล่าวแล้ว เช่น "projects/my-project-identifier/topics/my-topic-name" (ใช้รูปแบบการตั้งชื่อหัวข้อ "v1" ของ Cloud Pub/Sub)

โปรดทราบว่าส่วน "my-project-identifier" ต้องตรงกับรหัสโปรเจ็กต์นักพัฒนาแอป Google ของคุณ (โปรเจ็กต์ที่ดำเนินการคำขอการดูนี้) ทุกประการ

เนื้อหาการตอบกลับ

การตอบกลับในนาฬิกาสำหรับข้อความ Push

หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้

การแสดง JSON
{
  "historyId": string,
  "expiration": string
}
ช่อง
historyId

string

รหัสของบันทึกประวัติปัจจุบันของกล่องจดหมาย

expiration

string (int64 format)

เมื่อ Gmail จะหยุดส่งการแจ้งเตือนสำหรับการอัปเดตกล่องจดหมาย (epoch millis) โปรดโทรหา watch อีกครั้งก่อนเวลานี้เพื่อต่ออายุการใช้งานนาฬิกา

ขอบเขตการให้สิทธิ์

ต้องใช้ขอบเขต OAuth อย่างใดอย่างหนึ่งต่อไปนี้

  • https://mail.google.com/
  • https://www.googleapis.com/auth/gmail.modify
  • https://www.googleapis.com/auth/gmail.readonly
  • https://www.googleapis.com/auth/gmail.metadata

ดูข้อมูลเพิ่มเติมได้ที่ OAuth 2.0 Overview

LabelFilterAction

ระบุลักษณะการกรองของรายการ labelIds

Enum
include รับข้อความ Push เฉพาะการเปลี่ยนแปลงข้อความที่เกี่ยวข้องกับ labelIds ที่ระบุ
exclude รับข้อความ Push สำหรับการเปลี่ยนแปลงข้อความทั้งหมด ยกเว้นการเปลี่ยนแปลงที่เกี่ยวข้องกับ labelIds ที่ระบุ