เอกสารนี้อธิบายวิธีใช้ Push Notification ที่แจ้งให้แอปพลิเคชันทราบเมื่อมีการเปลี่ยนแปลงทรัพยากร
ภาพรวม
Admin SDK API มีข้อความ Push ที่ช่วยให้คุณตรวจสอบการเปลี่ยนแปลงในทรัพยากรได้ คุณสามารถใช้ฟีเจอร์นี้เพื่อปรับปรุงประสิทธิภาพของแอปพลิเคชันได้ ซึ่งช่วยให้คุณประหยัดค่าใช้จ่ายเครือข่ายและค่าประมวลผลเพิ่มเติมที่เกี่ยวข้องกับการสำรวจทรัพยากรเพื่อดูว่ามีการเปลี่ยนแปลงหรือไม่ เมื่อใดก็ตามที่ทรัพยากรที่ดูมีการเปลี่ยนแปลง Admin SDK API จะแจ้งเตือนแอปพลิเคชันของคุณ
หากต้องการใช้ข้อความ Push คุณต้องดำเนินการ 2 อย่างต่อไปนี้
ตั้งค่า URL รับหรือตัวรับ Callback "เว็บฮุค"
นี่คือเซิร์ฟเวอร์ HTTPS ที่จัดการข้อความแจ้งเตือน API ที่ทริกเกอร์เมื่อทรัพยากรเปลี่ยนแปลง
ตั้งค่า (ช่องทางการแจ้งเตือน) สำหรับปลายทางของทรัพยากรแต่ละรายการที่ต้องการดู
ช่องจะระบุข้อมูลการกำหนดเส้นทางสำหรับข้อความการแจ้งเตือน ในการตั้งค่าช่อง คุณต้องระบุ URL ที่เฉพาะเจาะจงที่ต้องการรับการแจ้งเตือน เมื่อทรัพยากรของแชแนลมีการเปลี่ยนแปลง Admin SDK API จะส่งข้อความแจ้งเป็น
POST
คำขอไปยัง URL นั้น
ปัจจุบัน Admin SDK API รองรับการแจ้งเตือนสำหรับการเปลี่ยนแปลงทรัพยากร Activity
สร้างช่องทางการแจ้งเตือน
หากต้องการขอข้อความ Push คุณต้องตั้งค่าช่องทางการแจ้งเตือนสำหรับทรัพยากรแต่ละรายการที่ต้องการตรวจสอบ หลังจากตั้งค่าช่องทางการแจ้งเตือนแล้ว Admin SDK API จะแจ้งให้แอปพลิเคชันทราบเมื่อทรัพยากรที่มีการดูมีการเปลี่ยนแปลง
สร้างคำขอดูนาฬิกา
ทรัพยากร Admin SDK API ที่รับชมได้แต่ละรายการจะมีวิธีการ watch
ที่เชื่อมโยงกันในรูปแบบ URI ต่อไปนี้
https://www.googleapis.com/API_NAME/API_VERSION/RESOURCE_PATH/watch
หากต้องการตั้งค่าช่องทางการแจ้งเตือนสำหรับข้อความเกี่ยวกับการเปลี่ยนแปลงทรัพยากรหนึ่งๆ ให้ส่งคำขอ POST
ไปยังเมธอด watch
ของทรัพยากรนั้น
ช่องทางการแจ้งเตือนแต่ละช่องทางเชื่อมโยงทั้งกับผู้ใช้รายหนึ่งและทรัพยากรหนึ่งๆ (หรือชุดทรัพยากร) คำขอ watch
จะไม่สำเร็จ เว้นแต่ผู้ใช้
หรือบัญชีบริการ
ปัจจุบันเป็นเจ้าของหรือมีสิทธิ์เข้าถึงทรัพยากรนี้
ตัวอย่าง
คำขอดูทั้งหมดสำหรับทรัพยากรกิจกรรมมีรูปแบบทั่วไปดังนี้
POST https://admin.googleapis.com/admin/reports/v1/activity/users/userKey or all/applications/applicationName/watch Authorization: Bearer auth_token_for_current_user Content-Type: application/json { "id": "01234567-89ab-cdef-0123456789ab", // Your channel ID. "type": "web_hook", "address": "https://mydomain.com/notifications", // Your receiving URL. ... "token": "target=myApp-myFilesChannelDest", // (Optional) Your channel token. "payload": true, // (Optional) Whether to include the payload (message body) in notifications. "expiration": 3600 // (Optional) Your requested channel expiration time. }
คุณสามารถใช้พารามิเตอร์ userKey, applicationName, eventName
และ filters
เพื่อรับการแจ้งเตือนสำหรับเหตุการณ์ ผู้ใช้ หรือแอปพลิเคชันที่ระบุเท่านั้น
หมายเหตุ: ตัวอย่างต่อไปนี้ละเว้นเนื้อหาคำขอเพื่อความชัดเจน
ตรวจสอบกิจกรรมทั้งหมดของผู้ดูแลระบบ
POST https://admin.googleapis.com/admin/reports/v1/activity/users/all/applications/admin/watch
ตรวจสอบกิจกรรมทั้งหมดในเอกสาร
POST https://admin.googleapis.com/admin/reports/v1/activity/users/all/applications/docs/watch
ดูกิจกรรมของผู้ดูแลระบบของผู้ใช้ที่เฉพาะเจาะจง
POST https://admin.googleapis.com/admin/reports/v1/activity/users/liz@example.com/applications/admin/watch
คอยสังเกตเหตุการณ์ที่เฉพาะเจาะจง เช่น การเปลี่ยนรหัสผ่านของผู้ใช้
POST https://admin.googleapis.com/admin/reports/v1/activity/users/all/applications/admin/watch?eventName=CHANGE_PASSWORD
คอยดูการเปลี่ยนแปลงในเอกสารที่เฉพาะเจาะจง โดยทำดังนี้
POST https://admin.googleapis.com/admin/reports/v1/activity/users/all/applications/docs/watch?eventName=EDIT&filters==doc_id=123456abcdef
พร็อพเพอร์ตี้ที่จำเป็น
ในคำขอ watch
แต่ละรายการ คุณจะต้องกรอกข้อมูลในช่องต่อไปนี้
-
สตริงพร็อพเพอร์ตี้
id
ที่ระบุช่องทางการแจ้งเตือนใหม่นี้ภายในโปรเจ็กต์ของคุณโดยไม่ซ้ำกัน เราขอแนะนำให้ใช้ตัวระบุที่ไม่ซ้ำกับผู้อื่น (UUID) หรือสตริงที่ไม่ซ้ำกันแบบอื่นๆ ที่คล้ายกัน ความยาวสูงสุด: 64 อักขระระบบจะแสดงค่ารหัสที่คุณตั้งไว้ใน
X-Goog-Channel-Id
ส่วนหัว HTTP ของข้อความการแจ้งเตือนทุกข้อความที่คุณได้รับสำหรับช่องนี้ -
ตั้งค่าสตริงพร็อพเพอร์ตี้
type
เป็นค่าweb_hook
-
สตริงพร็อพเพอร์ตี้
address
ที่ตั้งค่าเป็น URL ที่คอยฟังและตอบสนองต่อการแจ้งเตือนสําหรับช่องทางการแจ้งเตือนนี้ นี่คือ URL การเรียกกลับของ Webhook ของคุณ และต้องใช้ HTTPSโปรดทราบว่า Admin SDK API จะส่งการแจ้งเตือนไปยังที่อยู่ HTTPS นี้ได้ก็ต่อเมื่อมีการติดตั้งใบรับรอง SSL ที่ถูกต้องในเว็บเซิร์ฟเวอร์เท่านั้น ใบรับรองที่ไม่ถูกต้องมีดังนี้
- ใบรับรองแบบ Self-signed
- ใบรับรองที่ลงนามโดยแหล่งที่มาที่ไม่น่าเชื่อถือ
- ใบรับรองที่เพิกถอนไปแล้ว
- ใบรับรองที่มีเรื่องไม่ตรงกับชื่อโฮสต์เป้าหมาย
พร็อพเพอร์ตี้ที่ไม่บังคับ
นอกจากนี้ คุณยังระบุฟิลด์ที่ไม่บังคับเหล่านี้พร้อมกับคำขอwatch
ได้ด้วย
-
พร็อพเพอร์ตี้
token
ที่ระบุค่าสตริงแบบอิสระเพื่อใช้เป็นโทเค็นของช่อง คุณใช้โทเค็นช่องทางการแจ้งเตือนเพื่อวัตถุประสงค์ต่างๆ ได้ เช่น คุณสามารถใช้โทเค็นเพื่อยืนยันว่าข้อความขาเข้าแต่ละรายการมีไว้สำหรับช่องทางที่แอปพลิเคชันของคุณสร้างขึ้น เพื่อให้แน่ใจว่าไม่มีการปลอมแปลงการแจ้งเตือน หรือเพื่อกำหนดเส้นทางข้อความไปยังปลายทางที่เหมาะสมภายในแอปพลิเคชันตามวัตถุประสงค์ของช่องทางนี้ ความยาวสูงสุด: 256 อักขระโทเค็นจะรวมอยู่ในส่วนหัว HTTP
X-Goog-Channel-Token
ในทุกข้อความแจ้งเตือนที่แอปพลิเคชันได้รับสำหรับแชแนลนี้หากคุณใช้โทเค็นช่องทางการแจ้งเตือน เราขอแนะนำให้ทำดังนี้
ใช้รูปแบบการเข้ารหัสที่ขยายได้ เช่น พารามิเตอร์การค้นหาของ URL ตัวอย่าง:
forwardTo=hr&createdBy=mobile
อย่าใส่ข้อมูลที่ละเอียดอ่อน เช่น โทเค็น OAuth
-
สตริงพร็อพเพอร์ตี้
expiration
ที่ตั้งค่าเป็นการประทับเวลา Unix (เป็นมิลลิวินาที) ของวันที่และเวลาที่คุณต้องการให้ Admin SDK API หยุดส่งข้อความสำหรับช่องทางการแจ้งเตือนนี้หากแชแนลมีเวลาหมดอายุ แชแนลดังกล่าวจะรวมเป็นค่าของส่วนหัว HTTP
X-Goog-Channel-Expiration
(ในรูปแบบที่มนุษย์อ่านได้) ในข้อความแจ้งเตือนทุกรายการที่แอปพลิเคชันได้รับสำหรับแชแนลนี้
ดูรายละเอียดเพิ่มเติมเกี่ยวกับคำขอได้ที่เมธอด watch
สำหรับทรัพยากร Activity ในข้อมูลอ้างอิง API
ดูการตอบกลับ
หากคำขอ watch
สร้างช่องทางการแจ้งเตือนสำเร็จ คำขอจะแสดงรหัสสถานะ HTTP 200 OK
เนื้อหาข้อความของการตอบกลับการดูจะให้ข้อมูลเกี่ยวกับแชแนลการแจ้งเตือนที่คุณเพิ่งสร้างขึ้น ดังที่แสดงในตัวอย่างด้านล่าง
{ "kind": "api#channel", "id": "reportsApiId", // ID you specified for this channel. "resourceId": "o3hgv1538sdjfh", // ID of the watched resource. "resourceUri": "https://admin.googleapis.com/admin/reports/v1/activity/userKey/applications/applicationName", // Version-specific ID of the watched resource. "token": "target=myApp-myFilesChannelDest", // Present only if one was provided. "expiration": 3600, // Actual expiration time as Unix timestamp (in ms), if applicable. }
นอกเหนือจากพร็อพเพอร์ตี้ที่คุณส่งมาเป็นส่วนหนึ่งของคำขอแล้ว ข้อมูลที่แสดงผลจะมี resourceId
และ resourceUri
เพื่อระบุแหล่งข้อมูลที่รับชมในแชแนลการแจ้งเตือนนี้ด้วย
คุณสามารถส่งข้อมูลที่แสดงผลไปยังการดำเนินการอื่นๆ ของช่องทางการแจ้งเตือนได้ เช่น เมื่อต้องการหยุดรับการแจ้งเตือน
ดูรายละเอียดเพิ่มเติมเกี่ยวกับการตอบกลับได้ที่เมธอด watch
สําหรับทรัพยากร Activities ในข้อมูลอ้างอิง API
ซิงค์ข้อความ
หลังจากสร้างช่องทางการแจ้งเตือนเพื่อดูทรัพยากรแล้ว Admin SDK API จะส่งข้อความ sync
เพื่อระบุว่าการแจ้งเตือนกำลังจะเริ่มขึ้น ค่าส่วนหัว HTTP ของ X-Goog-Resource-State
สำหรับข้อความเหล่านี้คือ sync
คุณอาจได้รับข้อความ sync
ก่อนที่จะได้รับการตอบกลับของเมธอด watch
เนื่องจากเกิดปัญหาเกี่ยวกับเวลาของเครือข่าย
คุณไม่จำเป็นต้องสนใจการแจ้งเตือน sync
แต่จะใช้ก็ได้ ตัวอย่างเช่น หากตัดสินใจว่าไม่ต้องการเก็บแชแนลไว้ คุณสามารถใช้ค่า X-Goog-Channel-ID
และ X-Goog-Resource-ID
ในการเรียกใช้เพื่อหยุดรับการแจ้งเตือน นอกจากนี้ คุณยังใช้การแจ้งเตือน sync
เพื่อทำการเริ่มต้นใช้งานบางอย่างเพื่อเตรียมพร้อมสําหรับเหตุการณ์ในภายหลังได้ด้วย
รูปแบบของsync
ข้อความที่ Admin SDK API ส่งไปยัง URL ที่คุณรับจะแสดงอยู่ด้านล่าง
POST https://mydomain.com/notifications // Your receiving URL. X-Goog-Channel-ID: channel-ID-value X-Goog-Channel-Token: channel-token-value X-Goog-Channel-Expiration: expiration-date-and-time // In human-readable format. Present only if the channel expires. X-Goog-Resource-ID: identifier-for-the-watched-resource X-Goog-Resource-URI: version-specific-URI-of-the-watched-resource X-Goog-Resource-State: sync X-Goog-Message-Number: 1
ข้อความที่ซิงค์จะมีค่าส่วนหัว X-Goog-Message-Number
HTTP เป็น 1
เสมอ การแจ้งเตือนแต่ละรายการที่ตามมาสำหรับแชแนลนี้จะมีหมายเลขข้อความที่มากกว่ารายการก่อนหน้า แม้ว่าหมายเลขข้อความจะไม่เรียงตามลำดับก็ตาม
ต่ออายุช่องทางการแจ้งเตือน
ช่องทางการแจ้งเตือนอาจมีเวลาหมดอายุ โดยค่าจะกำหนดโดยคำขอของคุณหรือขีดจำกัดภายในของ Admin SDK API หรือค่าเริ่มต้น (ระบบจะใช้ค่าที่เข้มงวดกว่า) ระบบจะรวมเวลาหมดอายุของแชแนล (หากมี) ไว้ในการประทับเวลา Unix (เป็นมิลลิวินาที) ในข้อมูลที่เมธอด watch
แสดงผล นอกจากนี้ ระบบจะระบุวันที่และเวลาหมดอายุ (ในรูปแบบที่มนุษย์อ่านได้) ไว้ในข้อความแจ้งเตือนทุกข้อความที่แอปพลิเคชันของคุณได้รับสำหรับแชแนลนี้ในส่วนX-Goog-Channel-Expiration
ส่วนหัว HTTP
ปัจจุบันยังไม่มีวิธีต่ออายุช่องทางการแจ้งเตือนอัตโนมัติ เมื่อช่องใกล้จะหมดอายุ คุณต้องแทนที่ด้วยช่องใหม่โดยเรียกใช้เมธอด watch
คุณต้องใช้ค่าที่ไม่ซ้ำกันสำหรับพร็อพเพอร์ตี้ id
ของแชแนลใหม่เหมือนเช่นเคย โปรดทราบว่าอาจมีระยะเวลาที่ "ทับซ้อนกัน" เมื่อช่องทางการแจ้งเตือน 2 ช่องทางสำหรับทรัพยากรเดียวกันทำงานอยู่
รับการแจ้งเตือน
เมื่อใดก็ตามที่มีการเปลี่ยนแปลงทรัพยากรที่ดู แอปพลิเคชันจะได้รับข้อความแจ้งเตือนที่อธิบายการเปลี่ยนแปลงดังกล่าว Admin SDK API จะส่งข้อความเหล่านี้เป็นคำขอ POST
ผ่าน HTTPS ไปยัง URL ที่คุณระบุเป็นพร็อพเพอร์ตี้ address
สำหรับช่องทางการแจ้งเตือนนี้
ตีความรูปแบบข้อความแจ้งเตือน
ข้อความแจ้งเตือนทั้งหมดจะมีชุดส่วนหัว HTTP ที่มีคำนำหน้า X-Goog-
การแจ้งเตือนบางประเภทอาจรวมเนื้อหาข้อความไว้ด้วย
ส่วนหัว
ข้อความการแจ้งเตือนที่ Admin SDK API โพสต์ไปยัง URL ฝั่งที่รับของคุณจะมีส่วนหัว HTTP ต่อไปนี้
ส่วนหัว | คำอธิบาย |
---|---|
แสดงอยู่เสมอ | |
|
UUID หรือสตริงที่ไม่ซ้ำกันอื่นๆ ที่คุณระบุเพื่อระบุแชแนลการแจ้งเตือนนี้ |
|
จำนวนเต็มที่ระบุข้อความนี้สำหรับช่องทางการแจ้งเตือนนี้ ค่าสำหรับข้อความ sync คือ 1 เสมอ จำนวนข้อความที่เพิ่มขึ้นสำหรับแต่ละข้อความที่ตามมาบนช่องทาง แต่จะไม่มีจำนวนเพิ่มขึ้นตามลำดับ |
|
ค่าแบบทึบระบุทรัพยากรที่ดูอยู่ รหัสนี้มีความเสถียรในทุกเวอร์ชันของ API |
|
สถานะทรัพยากรใหม่ที่เรียกใช้การแจ้งเตือน
ค่าที่เป็นไปได้ ได้แก่ sync หรือชื่อเหตุการณ์
|
|
ตัวระบุเฉพาะเวอร์ชัน API สําหรับทรัพยากรที่ดูอยู่ |
บางครั้งมี | |
|
วันที่และเวลาของช่องทางการแจ้งเตือนหมดอายุ ซึ่งแสดงในรูปแบบที่มนุษย์อ่านได้ แสดงเมื่อกำหนดไว้เท่านั้น |
|
โทเค็นช่องทางการแจ้งเตือนที่แอปพลิเคชันของคุณตั้งค่าไว้และคุณใช้เพื่อยืนยันแหล่งที่มาของการแจ้งเตือนได้ แสดงเฉพาะในกรณีที่มีการกําหนด |
ข้อความแจ้งเตือนสำหรับกิจกรรมมีข้อมูลต่อไปนี้ในส่วนเนื้อหาคำขอ
พร็อพเพอร์ตี้ | คำอธิบาย |
---|---|
kind |
ระบุว่าข้อมูลนี้เป็นทรัพยากรกิจกรรม ค่า: สตริงแบบคงที่ "admin#reports#activity " |
id |
ตัวระบุที่ไม่ซ้ำของระเบียนกิจกรรม |
id.time |
เวลาเกิดกิจกรรม ค่าอยู่ในรูปแบบวันที่และเวลา ISO 8601 เวลาคือวันที่แบบเต็มพร้อมชั่วโมง นาที และวินาทีในรูปแบบ ปปปป-ดด-ววTชช:นน:ววTZD เช่น 2010-04-05T17:30:04+01:00 |
id.uniqueQualifier |
ตัวระบุที่ไม่ซ้ำกันในกรณีที่มีกิจกรรมหลายรายการเหมือนกัน |
id.applicationName |
ชื่อแอปพลิเคชันของเหตุการณ์ ค่าที่เป็นไปได้มีดังนี้ |
id.customerId |
ตัวระบุที่ไม่ซ้ำสำหรับบัญชี Google Workspace |
actor |
ผู้ใช้ที่ดำเนินการ |
actor.callerType |
ประเภทผู้เขียนที่ดําเนินการซึ่งแสดงในรายงาน ใน API เวอร์ชันนี้ callerType คือคำขอเอนทิตี USER หรือ OAuth 2LO ที่ดำเนินการตามที่ระบุไว้ในรายงาน |
actor.email |
อีเมลหลักของผู้ใช้ที่มีกิจกรรมที่รายงาน |
actor.profileId |
รหัสโปรไฟล์ Google Workspace ที่ไม่ซ้ำกันของผู้ใช้ |
ownerDomain |
โดเมนของคอนโซลผู้ดูแลระบบหรือเจ้าของเอกสารของแอปพลิเคชันเอกสาร นี่คือโดเมนที่ได้รับผลกระทบจากเหตุการณ์ของรายงาน |
ipAddress |
ที่อยู่ IP ของผู้ใช้ที่ดำเนินการ นี่คือที่อยู่ Internet Protocol (IP) ของผู้ใช้เมื่อเข้าสู่ระบบ Google Workspace ซึ่งอาจแสดงหรือไม่ได้แสดงตำแหน่งจริงของผู้ใช้ เช่น ที่อยู่ IP อาจเป็นที่อยู่ของพร็อกซีเซิร์ฟเวอร์ของผู้ใช้หรือที่อยู่เครือข่ายส่วนตัวเสมือน (VPN) API รองรับ IPv4 และ IPv6 |
events[] |
เหตุการณ์กิจกรรมในรายงาน |
events[].type |
ประเภทเหตุการณ์ บริการหรือฟีเจอร์ Google Workspace ที่ผู้ดูแลระบบเปลี่ยนแปลงจะระบุไว้ในพร็อพเพอร์ตี้ type ซึ่งระบุเหตุการณ์โดยใช้พร็อพเพอร์ตี้ eventName |
events[].name |
ชื่อเหตุการณ์ นี่คือชื่อที่เฉพาะเจาะจงของกิจกรรมที่ API รายงาน และ eventName แต่ละรายการจะเกี่ยวข้องกับบริการหรือฟีเจอร์ของ Google Workspace ที่เฉพาะเจาะจง ซึ่ง API จะจัดแบ่งประเภทเหตุการณ์
สำหรับพารามิเตอร์คำขอ eventName โดยทั่วไปแล้ว
|
events[].parameters[] |
คู่ค่าพารามิเตอร์สําหรับแอปพลิเคชันต่างๆ |
events[].parameters[].name |
ชื่อพารามิเตอร์ |
events[].parameters[].value |
ค่าสตริงของพารามิเตอร์ |
events[].parameters[].intValue |
ค่าจำนวนเต็มของพารามิเตอร์ |
events[].parameters[].boolValue |
ค่าบูลีนของพารามิเตอร์ |
ตัวอย่าง
ข้อความแจ้งเตือนสำหรับเหตุการณ์ทรัพยากรกิจกรรมจะมีรูปแบบทั่วไปดังนี้
POST https://mydomain.com/notifications // Your receiving URL. Content-Type: application/json; utf-8 Content-Length: 0 X-Goog-Channel-ID: reportsApiId X-Goog-Channel-Token: 398348u3tu83ut8uu38 X-Goog-Channel-Expiration: Tue, 29 Oct 2013 20:32:02 GMT X-Goog-Resource-ID: ret08u3rv24htgh289g X-Goog-Resource-URI: https://admin.googleapis.com/admin/reports/v1/activity/userKey/applications/applicationName X-Goog-Resource-State: eventName X-Goog-Message-Number: 10 { "kind": "admin#reports#activity", "id": { "time": datetime, "uniqueQualifier": long, "applicationName": string, "customerId": string }, "actor": { "callerType": string, "email": string, "profileId": long }, "ownerDomain": string, "ipAddress": string, "events": [ { "type": string, "name": string, "parameters": [ { "name": string, "value": string, "intValue": long, "boolValue": boolean } ] } ] }
ตัวอย่างเหตุการณ์กิจกรรมของผู้ดูแลระบบ
POST https://mydomain.com/notifications // Your receiving URL. Content-Type: application/json; utf-8 Content-Length: 596 X-Goog-Channel-ID: reportsApiId X-Goog-Channel-Token: 245t1234tt83trrt333 X-Goog-Channel-Expiration: Tue, 29 Oct 2013 20:32:02 GMT X-Goog-Resource-ID: ret987df98743md8g X-Goog-Resource-URI: https://admin.googleapis.com/admin/reports/v1/activity/users/all/applications/admin?alt=json X-Goog-Resource-State: CREATE_USER X-Goog-Message-Number: 23 { "kind": "admin#reports#activity", "id": { "time": "2013-09-10T18:23:35.808Z", "uniqueQualifier": "-0987654321", "applicationName": "admin", "customerId": "ABCD012345" }, "actor": { "callerType": "USER", "email": "admin@example.com", "profileId": "0123456789987654321" }, "ownerDomain": "apps-reporting.example.com", "ipAddress": "192.0.2.0", "events": [ { "type": "USER_SETTINGS", "name": "CREATE_USER", "parameters": [ { "name": "USER_EMAIL", "value": "liz@example.com" } ] } ] }
ตอบสนองต่อการแจ้งเตือนต่างๆ
หากต้องการระบุความสําเร็จ ให้แสดงรหัสสถานะต่อไปนี้
200
, 201
, 202
, 204
หรือ
102
หากบริการของคุณใช้ไลบรารีไคลเอ็นต์ API ของ Google และแสดงผลเป็น 500
,502
, 503
หรือ 504
Admin SDK API จะลองอีกครั้งโดยใช้การถดถอยแบบเลขชี้กำลัง
รหัสสถานะการคืนสินค้าอื่นๆ ทั้งหมดจะถือว่าเป็นข้อความล้มเหลว
ทําความเข้าใจเหตุการณ์การแจ้งเตือนของ Admin SDK API
ส่วนนี้จะแสดงรายละเอียดเกี่ยวกับข้อความแจ้งเตือนที่คุณได้รับเมื่อใช้ข้อความ Push กับ Admin SDK API
การแจ้งเตือนแบบพุชของ Reports API มีข้อความ 2 ประเภท ได้แก่ ข้อความซิงค์และการแจ้งเตือนเหตุการณ์ ประเภทข้อความจะระบุไว้ในX-Goog-Resource-State
ส่วนหัว HTTP ค่าที่เป็นไปได้สำหรับการแจ้งเตือนเหตุการณ์จะเหมือนกับของเมธอด activities.list
แอปพลิเคชันแต่ละรายการมีเหตุการณ์ที่ไม่ซ้ำกัน ดังนี้
ปิดการแจ้งเตือน
พร็อพเพอร์ตี้ expiration
จะควบคุมเวลาที่การแจ้งเตือนจะหยุดโดยอัตโนมัติ คุณสามารถเลือกหยุดรับการแจ้งเตือนสำหรับบางช่องก่อนที่ช่องจะหมดอายุได้โดยเรียกใช้เมธอด stop
ที่ URI ต่อไปนี้
https://www.googleapis.com/admin/reports_v1/channels/stop
วิธีนี้กำหนดให้คุณระบุพร็อพเพอร์ตี้ id
และ resourceId
ของช่องเป็นอย่างน้อย ดังที่แสดงในตัวอย่างด้านล่าง โปรดทราบว่าหาก Admin SDK API มีทรัพยากรหลายประเภทที่มีเมธอด watch
จะมีเมธอด stop
เพียงเมธอดเดียว
เฉพาะผู้ใช้ที่มีสิทธิ์เท่านั้นที่จะหยุดช่องได้ โดยเฉพาะอย่างยิ่งฟีเจอร์ต่อไปนี้
- หากบัญชีผู้ใช้ทั่วไปสร้างช่อง เฉพาะผู้ใช้รายเดียวกันจากไคลเอ็นต์เดียวกัน (ตามที่ระบุโดยรหัสไคลเอ็นต์ OAuth 2.0 จากโทเค็นการตรวจสอบสิทธิ์) ที่สร้างช่องเท่านั้นที่จะหยุดช่องได้
- หากช่องสร้างขึ้นโดยบัญชีบริการ ผู้ใช้ทุกคนจากไคลเอ็นต์เดียวกันจะหยุดช่องได้
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีหยุดรับการแจ้งเตือน
POST https://www.googleapis.com/admin/reports_v1/channels/stop Authorization: Bearer CURRENT_USER_AUTH_TOKEN Content-Type: application/json { "id": "4ba78bf0-6a47-11e2-bcfd-0800200c9a66", "resourceId": "ret08u3rv24htgh289g" }