Webhooks

ภาพรวม

Webhooks ช่วยให้แอพการผสานการทำงานแบบกำหนดเองสามารถสมัครรับข้อมูลเหตุการณ์ต่างๆ ใน Workplace และรับข้อมูลอัพเดตแบบเรียลไทม์ได้ เมื่อมีการเปลี่ยนแปลงเกิดขึ้นใน Workplace ระบบจะส่งคำขอ HTTPS POST ไปยัง URL การเรียกกลับของแอพการผสานการทำงานแบบกำหนดเองแต่ละรายการที่ได้สมัครรับข้อมูลหัวข้อ Webhook ที่เกี่ยวข้องไว้

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

การรองรับ Webhook สำหรับ Workplace มาจากเฟรมเวิร์กเดียวกันกับที่สนับสนุน Webhooks สำหรับ API กราฟ

การสมัครรับข้อมูลหัวข้อ Webhook

กล่องโต้ตอบแก้ไขการผสานการทำงานแบบกำหนดเองมีแท็บต่างๆ สำหรับหัวข้อ Webhook แต่ละหัวข้อที่แอพใช้งานได้บน Workplace

ส่วน Webhooks ในกล่องโต้ตอบแก้ไขการผสานการทำงานแบบกำหนดเอง

หากต้องการเพิ่มการสมัครรับข้อมูล Webhook ใหม่สำหรับหัวข้อนั้นๆ ให้ระบุ URL การเรียกกลับและโทเค็นการตรวจสอบยืนยัน จากนั้นเลือกช่องการสมัครรับข้อมูลที่จำเป็นสำหรับฟังก์ชั่นการทำงานที่แอพของคุณจะนำเสนอ

คุณสามารถสมัครรับข้อมูล URL ได้ 1 รายการต่อ 1 หัวข้อ Webhook แต่คุณสามารถใช้ URL เดียวกันสำหรับหลายหัวข้อได้

การจัดการคำขอให้ตรวจสอบยืนยัน

เมื่อคุณเพิ่มการสมัครรับข้อมูลใหม่ หรือแก้ไขการสมัครรับข้อมูลที่มีอยู่ เซิร์ฟเวอร์ Meta จะสร้างคำขอ GET ไปยัง URL การเรียกกลับของคุณเพื่อตรวจสอบยืนยันความถูกต้องของเซิร์ฟเวอร์การเรียกกลับ

ระบบจะนำสตริงการสืบค้นมาต่อท้าย URL นี้โดยมีพารามิเตอร์ต่อไปนี้

  • hub.mode - สตริง "subscribe" ได้รับการส่งผ่านในพารามิเตอร์นี้
  • hub.challenge - สตริงแบบสุ่ม
  • hub.verify_token - ค่า verify_token ที่คุณระบุในตอนที่สร้างการสมัครรับข้อมูล

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

  • ตรวจสอบยืนยันว่าค่า hub.verify_token ตรงกับสตริงที่คุณตั้งค่าไว้ในช่องโทเค็นการตรวจสอบยืนยันในตอนที่คุณกำหนดค่า Webhook
  • ตอบกลับด้วยค่า hub.challenge

การรักษาความปลอดภัยด้วย Webhook

การเรียกใช้ Webhook ไปยัง URL การเรียกกลับที่ผู้พัฒนากำหนดไว้จะดำเนินการผ่าน HTTPS ทั้งหมด ซึ่งช่วยให้มีการรักษาความปลอดภัยที่ระดับการส่งสำหรับเพย์โหลด Webhook

หากต้องการเสริมการรักษาความปลอดภัยเพิ่มเติม ส่วนหัว HTTPX-Hub-Signature-256 จะรวมอยู่ในเพย์โหลด POST แต่ละรายการ ซึ่งคุณควรใช้เพื่อตรวจสอบยืนยันว่าเพย์โหลดมาจากเซิร์ฟเวอร์ Meta

หากต้องการรายละเอียดทั้งหมดของลักษณะการทำงานนี้ โปรดดูเอกสารประกอบเกี่ยวกับเฟรมเวิร์ก Webhook

การเรียกใช้ Webhook ไปยัง URL การเรียกกลับที่ผู้พัฒนากำหนดไว้จะดำเนินการผ่าน HTTPS ทั้งหมด ซึ่งช่วยให้มีการรักษาความปลอดภัยที่ระดับการส่งสำหรับเพย์โหลด Webhook

การสมัครรับข้อมูล Webhooks โดยใช้การเรียกใช้ API

การเรียกใช้ API ให้อ่านหรือเปลี่ยนแปลงการสมัครรับข้อมูล Webhook จะต้องดำเนินการโดยใช้โทเค็นของแอพแทนที่จะใช้โทเค็นการผสานการทำงานแบบกำหนดเองตามปกติ ทั้งนี้ คุณสามารถสร้างโทเค็นของแอพได้โดยการนำ ID ของแอพ, สัญลักษณ์ '|' และข้อมูลลับของแอพมาวางเรียงต่อกัน

ตัวอย่างเช่น:

ข้อมูลสตริง

ID ของแอพ

504221332732118

ข้อมูลลับของแอพ

d76ab3f35f3ff5aa6ffdc8637a660d2ea7

โทเค็นของแอพ:

504221332732118|d76ab3f35f3ff5aa6ffdc8637a660d2ea7

รับการสมัครรับข้อมูล Webhook ปัจจุบัน (โดยใช้โทเค็นของแอพ)

GET graph.facebook.com
  /{app-id}/subscriptions
    &access_token={your_app_token}

เพิ่มการสมัครรับข้อมูล Webhook ใหม่ (โดยใช้โทเค็นของแอพ)

POST graph.facebook.com
  /{app-id}/subscriptions
    ?object=page
    &fields=mention,messages
    &callback_url={your-url}
    &verify_token={your-verify-token}
    &access_token={your_app_token}

การแก้ไขปัญหาการสมัครรับข้อมูลเพจ/แอพ

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

การเรียกใช้ API ต่อไปนี้พร้อมให้ใช้งานในการตรวจสอบการสมัครรับข้อมูลนี้

รับการสมัครรับข้อมูลแอพ/เพจปัจจุบัน (โดยใช้โทเค็นของแอพ)

GET graph.facebook.com
  /me/subscribed_apps?access_token={your_page_token}

การเรียกใช้ API ต่อไปนี้พร้อมให้ใช้งานในการสร้างการสมัครรับข้อมูลนี้อีกครั้ง

สร้างการสมัครรับข้อมูลแอพ/เพจปัจจุบันอีกครั้ง (โดยใช้โทเค็นของแอพ)

POST graph.facebook.com
  /me/subscribed_apps?access_token={your_page_token}
	{"subscribed_fields": ["messages"...]}

หัวข้อ Webhook

กิจกรรมบน Workplace จะได้รับการจัดกลุ่มเป็นหัวข้อต่างๆ โดยแต่ละหัวข้อจะมีช่องจำนวนหนึ่งที่แมปกับเหตุการณ์ในหัวข้อนั้นๆ แอพสามารถสมัครรับข้อมูลอัพเดต Webhook ในแต่ละหัวข้อ รวมถึงสมัครรับข้อมูลช่องที่เฉพาะเจาะจงภายในแต่ละหัวข้อได้

ในปัจจุบัน Workplace นำเสนอ Webhooks สำหรับหัวข้อและกลุ่มต่อไปนี้

เพจ

ข้อมูลเพิ่มเติมมีอยู่ในเอกสารอ้างอิงสำหรับหัวข้อของเพจ

ช่องการสมัครรับข้อมูลลักษณะการทำงาน

mention

ทริกเกอร์เมื่อมีการกล่าวถึงเพจการผสานการทำงานแบบกำหนดเอง (บอท) ในกลุ่ม

messages

ทริกเกอร์เมื่อมีการส่งข้อความถึงเพจการผสานการทำงานแบบกำหนดเอง (บอท) ใน Work Chat

message_deliveries

ทริกเกอร์เมื่อข้อความที่ส่งจากเพจการผสานการทำงานแบบกำหนดเอง (บอท) ไปถึงผู้รับแล้ว

messaging_postbacks

ทริกเกอร์เมื่อมีการกดปุ่มโพสต์ย้อนกลับใน Work Chat

message_reads

ทริกเกอร์เมื่อผู้รับอ่านข้อความจากเพจการผสานการทำงานแบบกำหนดเอง (บอท) แล้ว

กลุ่ม

ข้อมูลเพิ่มเติมมีอยู่ในเอกสารอ้างอิงสำหรับหัวข้อของกลุ่ม

ช่องการสมัครรับข้อมูลลักษณะการทำงาน

posts

ทริกเกอร์เมื่อมีการเพิ่ม อัพเดต หรือลบโพสต์ในกลุ่ม

comments

ทริกเกอร์ทุกครั้งที่มีการเพิ่มความคิดเห็นใหม่ รวมถึงการอัพเดตหรือลบความคิดเห็นบนโพสต์ในกลุ่ม

membership

ทริกเกอร์เมื่อการเป็นสมาชิกในกลุ่มเปลี่ยนแปลงไป

membership_requests

ทริกเกอร์เมื่อผู้ใช้ส่งคำขอเป็นสมาชิกของกลุ่ม

ผู้ใช้

ข้อมูลเพิ่มเติมมีอยู่ในเอกสารอ้างอิงสำหรับหัวข้อของผู้ใช้

ช่องการสมัครรับข้อมูลลักษณะการทำงาน

status

ทริกเกอร์เมื่อผู้ใช้โพสต์หรือแก้ไขการอัพเดตสถานะในโปรไฟล์ของตนเอง ซึ่งรวมถึงโพสต์ในไทม์ไลน์ของผู้ใช้ด้วย

events

ทริกเกอร์ทุกครั้งที่ผู้ใช้สร้าง ยอมรับ หรือปฏิเสธงานกิจกรรม

message_sends

ทริกเกอร์ทุกครั้งที่ผู้ใช้ส่งข้อความใน Workplace Chat

message_unsends

ทริกเกอร์ทุกครั้งที่ผู้ใช้ลบข้อความในแชทบน Workplace สำหรับทุกคนในเธรด

timeline_comments

ทริกเกอร์ทุกครั้งที่มีความคิดเห็นบนโพสต์ในไทม์ไลน์ของผู้ใช้

การรักษาความปลอดภัย

ข้อมูลเพิ่มเติมมีอยู่ในเอกสารอ้างอิงสำหรับหัวข้อของการรักษาความปลอดภัย

admin_activity

เหตุการณ์ทริกเกอร์เมื่อมีการเพิ่มหรือลบผู้ดูแลออกจากชุมชน Workplace

เหตุการณ์ลักษณะการทำงาน

admin_set_to_unclaimed

ผู้ดูแลได้ตั้งค่าสถานะบัญชีของผู้ใช้เป็นยังไม่ได้ขอรับสิทธิ์จากแผงควบคุมสำหรับผู้ดูแลหรือผ่าน API การจัดการบัญชี

admin_force_log_out

ผู้ดูแลได้บังคับให้ผู้ใช้ออกจากระบบในอุปกรณ์ทั้งหมดจากแผงควบคุมสำหรับผู้ดูแล

admin_deactivate

ผู้ดูแลได้ปิดใช้งานบัญชีจากแผงควบคุมสำหรับผู้ดูแลหรือผ่าน API การจัดการบัญชี

admin_activate_account

ผู้ดูแลได้เปิดใช้งานบัญชีจากแผงควบคุมสำหรับผู้ดูแลหรือผ่าน API การจัดการบัญชี

force_password_reset

ผู้ดูแลได้บังคับให้ผู้ใช้รีเซ็ตรหัสผ่านของตนจากแผงควบคุมสำหรับผู้ดูแล

admin_create_account

ผู้ดูแลได้สร้างบัญชีจากแผงควบคุมสำหรับผู้ดูแล

compromised_credentials

เหตุการณ์ทริกเกอร์เมื่อเราสงสัยว่ารหัสผ่าน Workplace ของบัญชีผู้ใช้บางรายการในชุมชนอาจมีความเสี่ยง

เหตุการณ์ลักษณะการทำงาน

found_compromised_credentials

Workplace พบข้อมูลประจำตัวที่ถูกบุกรุก

files

เหตุการณ์ทริกเกอร์เมื่อมีกิจกรรมของไฟล์ Workplace

เหตุการณ์ลักษณะการทำงาน

group_file_upload

ผู้ใช้ได้อัพโหลดไฟล์ไปยังกลุ่ม

group_file_download

ผู้ใช้ได้ดาวน์โหลดไฟล์จากกลุ่ม

file_upload_malware_found

พบมัลแวร์ในไฟล์ที่อัพโหลด

groups

เหตุการณ์ทริกเกอร์เมื่อมีคนสร้างหรือเข้าร่วมกลุ่มที่มีหลายบริษัทใน Workplace

เหตุการณ์ลักษณะการทำงาน

mcg_join

ผู้ใช้รายหนึ่งในชุมชนได้เข้าร่วม MCG

mcg_create

ผู้ใช้รายหนึ่งในชุมชนได้สร้าง MCG

integrations

เหตุการณ์ทริกเกอร์เมื่อผู้ดูแลสร้างหรือเปลี่ยนแปลงคุณสมบัติการผสานการทำงาน

เหตุการณ์ลักษณะการทำงาน

custom_integration_create

ผู้ดูแลได้สร้างการผสานการทำงานแบบกำหนดเอง

custom_integration_edit

ผู้ดูแลได้แก้ไขการผสานการทำงานแบบกำหนดเอง

custom_integration_delete

ผู้ดูแลได้ลบการผสานการทำงานแบบกำหนดเอง

custom_integration_token_reset

ผู้ดูแลได้สร้างโทเค็นการเข้าถึงใหม่ขึ้นมาสำหรับการผสานการทำงานแบบกำหนดเอง

content_app_install

ผู้ใช้ได้สร้างการผสานการทำงานของเนื้อหา

content_app_uninstall

ผู้ใช้ได้ยกเลิกการติดตั้งการผสานการทำงานของเนื้อหา

invites

เหตุการณ์ทริกเกอร์เมื่อมีคนเข้าร่วม Workplace ผ่านการส่งคำเชิญให้ตนเอง

เหตุการณ์ลักษณะการทำงาน

coworker_invite_sent

ผู้ใช้ได้เชิญเพื่อนร่วมงานให้เข้าร่วมชุมชน

self_invite_sent

ผู้ใช้ได้ขออีเมลคำเชิญให้กับตนเอง

passwords

เหตุการณ์ทริกเกอร์เมื่อมีคนเปลี่ยนรหัสผ่านของตนหรือขอรีเซ็ตรหัสผ่าน

เหตุการณ์ลักษณะการทำงาน

password_change

มีการเปลี่ยนรหัสผ่านของผู้ใช้ ซึ่งเป็นผลจากการกู้คืนรหัสผ่านเสร็จสมบูรณ์หรือผ่านการตั้งค่าบัญชีของผู้ใช้รายดังกล่าว

password_reset_request

มีการเริ่มต้นขั้นตอนการกู้คืนรหัสผ่านของผู้ใช้ และมีการส่งรหัสไปยังอีเมลของผู้ใช้ดังกล่าว

password_reset_wrong_code

ผู้ใช้ป้อนรหัสกู้คืนสำหรับรีเซ็ตรหัสผ่านไม่ถูกต้อง

password_reset_success

ขั้นตอนการกู้คืนรหัสผ่านของผู้ใช้รายหนึ่งเสร็จสมบูรณ์แล้ว

sessions

เหตุการณ์ทริกเกอร์เมื่อมีบุคคลเข้าสู่ระบบหรือออกจากระบบ Workplace

เหตุการณ์ลักษณะการทำงาน

log_in

ผู้ใช้ได้เข้าสู่ระบบ Workplace โดยใช้รหัสผ่านหรือ SSO ไม่ว่าจะใน www หรือแอพมือถือ

log_out

ผู้ใช้ได้ออกจากระบบ Workplace โดยใช้รหัสผ่านหรือ SSO ไม่ว่าจะใน www หรือแอพมือถือ

โดยไม่รวมการบังคับให้ออกจากระบบที่ผู้ดูแลเป็นผู้เริ่มดำเนินการ (ดู admin_force_log_out)

two_factor

เหตุการณ์ทริกเกอร์เมื่อมีคนเปิดหรือปิดใช้งานการยืนยันตัวตนแบบสองชั้น

เหตุการณ์ลักษณะการทำงาน

two_factor_enable

ผู้ใช้ได้เปิดใช้งานการยืนยันตัวตนแบบสองชั้นจากแท็บการตั้งค่า ทั้งนี้ รายการนี้จะไม่บันทึกเวลาที่มีผู้ยืนยันโทรศัพท์หนึ่งๆ แต่จะระบุว่าฟีเจอร์ดังกล่าวได้ถูกเปิดใช้งาน

two_factor_disable

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

add_two_factor_phone

ผู้ใช้ได้เพิ่มและยืนยันโทรศัพท์ที่ใช้สำหรับการยืนยันตัวตนแบบสองชั้น

two_factor_code_success

ผู้ใช้ได้ป้อนรหัสสำหรับการยืนยันตัวตนแบบสองชั้นที่ถูกต้องเมื่อเข้าสู่ระบบในเว็บไซต์หรือเว็บไซต์บนมือถือของ Workplace

two_factor_code_failure

ผู้ใช้ได้ป้อนรหัสสำหรับการยืนยันตัวตนแบบสองชั้นที่ไม่ถูกต้องเมื่อเข้าสู่ระบบในเว็บไซต์หรือเว็บไซต์บนมือถือของ Workplace

two_factor_code_success_m

ผู้ใช้ได้ป้อนรหัสสำหรับการยืนยันตัวตนแบบสองชั้นที่ถูกต้องเมื่อเข้าสู่ระบบในแอพมือถือ iOS หรือ Android ของ Workplace

two_factor_code_failure_m

ผู้ใช้ได้ป้อนรหัสสำหรับการยืนยันตัวตนแบบสองชั้นที่ไม่ถูกต้องเมื่อเข้าสู่ระบบในแอพมือถือ iOS หรือ Android ของ Workplace

reseller_events

เหตุการณ์ที่เกี่ยวข้องกับผู้ค้าปลีก

เหตุการณ์ลักษณะการทำงาน

reseller_user_added

อนุญาตให้ผู้ใช้ที่ไม่ใช่ผู้ดูแลในบริษัทผู้ค้าปลีกเห็นคอนโซลของผู้ค้าปลีก

reseller_user_removed

ไม่อนุญาตให้ผู้ใช้ที่ไม่ใช่ผู้ดูแลในบริษัทผู้ค้าปลีกเห็นคอนโซลของผู้ค้าปลีก

reseller_invite_sent

ผู้ค้าปลีกเชิญให้บริษัทอื่นมาเชื่อมโยงกับตน

reseller_invite_accepted

บริษัทยอมรับคำเชิญให้เชื่อมโยงของผู้ค้าปลีก

reseller_invite_declined

บริษัทปฏิเสธคำเชิญให้เชื่อมโยงของผู้ค้าปลีก

ลิงก์

ข้อมูลเพิ่มเติมมีอยู่ในเอกสารอ้างอิงสำหรับหัวข้อของลิงก์

เหตุการณ์ลักษณะการทำงาน

preview

เมตาดาต้าเกี่ยวกับผู้ใช้ที่ขอสิทธิ์การเข้าถึงลิงก์ที่สามารถแชร์ได้

collection

เมตาดาต้าสำหรับลิงก์ที่แชร์บน Workplace เพื่อสร้างตัวอย่าง

คลังความรู้

ข้อมูลเพิ่มเติมมีอยู่ในเอกสาร API กราฟของหมวดหมู่คลังความรู้

ช่องการสมัครรับข้อมูลลักษณะการทำงาน

categories

ทริกเกอร์เมื่อมีการเพิ่ม อัพเดต หรือลบเนื้อหาของคลังความรู้ หรือเมื่อมีการอัพเดตกลุ่มเป้าหมายของการอ่าน

comments

ทริกเกอร์ทุกครั้งที่มีการเพิ่มความคิดเห็นใหม่ รวมถึงการอัพเดตหรือลบความคิดเห็นในคลังความรู้

quicklinks

ทริกเกอร์เมื่อมีการเพิ่ม อัพเดต หรือลบลิงก์ด่วนของคลังความรู้