- คำขอ HTTP
- พารามิเตอร์เส้นทาง
- เนื้อหาคำขอ
- เนื้อหาการตอบกลับ
- ขอบเขตการให้สิทธิ์
- LabelFilterAction
- ลองใช้งาน
ตั้งค่าหรืออัปเดตการแจ้งเตือนแบบพุชในกล่องจดหมายของผู้ใช้ที่ระบุ
คำขอ HTTP
POST https://gmail.googleapis.com/gmail/v1/users/{userId}/watch
URL ใช้ไวยากรณ์การแปลงรหัส gRPC
พารามิเตอร์เส้นทาง
| พารามิเตอร์ | |
|---|---|
userId |
อีเมลของผู้ใช้ ค่าพิเศษ |
เนื้อความของคำขอ
เนื้อหาของคำขอมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
| การแสดง JSON |
|---|
{ "labelIds": [ string ], "labelFilterAction": enum ( |
| ช่อง | |
|---|---|
labelIds[] |
รายการ labelIds เพื่อจำกัดการแจ้งเตือน โดยค่าเริ่มต้น หากไม่ได้ระบุ ระบบจะพุชการเปลี่ยนแปลงทั้งหมด หากระบุไว้ จะเป็นตัวกำหนดว่าต้องใช้ป้ายกำกับใดในการสร้างการแจ้งเตือนแบบพุช |
labelFilterAction |
ระบุลักษณะการทำงานของการกรองของ |
labelFilterBehavior |
ระบุลักษณะการทำงานของการกรองของ |
topicName |
ชื่อหัวข้อ 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 |
รหัสของบันทึกประวัติปัจจุบันของกล่องจดหมาย |
expiration |
เมื่อ Gmail จะหยุดส่งการแจ้งเตือนสำหรับการอัปเดตกล่องจดหมาย (epoch millis) โปรดโทรหา |
ขอบเขตการให้สิทธิ์
ต้องใช้ขอบเขต OAuth อย่างใดอย่างหนึ่งต่อไปนี้
https://mail.google.com/https://www.googleapis.com/auth/gmail.modifyhttps://www.googleapis.com/auth/gmail.readonlyhttps://www.googleapis.com/auth/gmail.metadata
ดูข้อมูลเพิ่มเติมได้ที่ OAuth 2.0 Overview
LabelFilterAction
ระบุลักษณะการกรองของรายการ labelIds
| Enum | |
|---|---|
include |
รับข้อความ Push เฉพาะการเปลี่ยนแปลงข้อความที่เกี่ยวข้องกับ labelIds ที่ระบุ |
exclude |
รับข้อความ Push สำหรับการเปลี่ยนแปลงข้อความทั้งหมด ยกเว้นการเปลี่ยนแปลงที่เกี่ยวข้องกับ labelIds ที่ระบุ |