ข้ามไปยังเนื้อหา

Webhook

Webhook ช่วยให้คุณสามารถส่งข้อมูล Journey ไปยังบริการภายนอก เช่น ระบบวิเคราะห์, ระบบ CRM และเครื่องมือทางการตลาด คุณสามารถ:

  • แจ้งเตือนระบบภายนอกเมื่อลูกค้าดำเนินการบางอย่างใน Journey
  • ส่งข้อมูลลูกค้าไปยังเครื่องมือวิเคราะห์
  • ทริกเกอร์อีเมล, SMS หรือ WhatsApp ของบุคคลที่สามตามเหตุการณ์เฉพาะใน Journey

วิธีตั้งค่าองค์ประกอบ Webhook

Anchor link to

เพิ่มองค์ประกอบ Webhook

Anchor link to

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

องค์ประกอบ Webhook บน canvas พร้อมการตั้งค่าชื่อและคำขอ

ตั้งชื่อขั้นตอน Webhook และระบุ URL และประเภทของคำขอ

Anchor link to

ในช่อง STEP NAME ให้ป้อนชื่อสำหรับ Webhook การตั้งชื่อ Webhook ตามบริการที่ส่งข้อมูลไปหรือตามกรณีการใช้งานอาจเป็นประโยชน์

ถัดไป ในช่อง URL ให้ระบุ URL ของคำขอที่จะส่งข้อมูลไป ถัดจากช่อง URL ให้เลือกประเภทของคำขอจากเมนูแบบเลื่อนลง REQUEST TYPE: GET หรือ POST

อินเทอร์เฟซการกำหนดค่า Webhook ที่แสดงช่อง URL และเมนูแบบเลื่อนลง REQUEST TYPE สำหรับเลือกเมธอด GET หรือ POST

กำหนดค่า Headers

Anchor link to

ในส่วน HEADERS ให้ตั้งค่าประเภทของเนื้อหา

โดยค่าเริ่มต้น ประเภทของเนื้อหาคือ application/json หากบริการที่คุณส่ง Webhook ไปต้องการประเภทเนื้อหาอื่น ให้ป้อนประเภทที่เหมาะสมในค่า Header ของ Content-Type

ตัวอย่างของประเภทเนื้อหาได้แก่:

  • x-www-form-urlencoded
  • text/plain
  • text/xml

เพิ่ม Header เพิ่มเติมหากจำเป็นโดยคลิก + ADD HEADER คุณสามารถลบ Header ใดๆ ได้โดยคลิกไอคอน ‘x’ ที่อยู่ถัดไป

เพิ่ม Header การยืนยันตัวตนใดๆ ที่ Endpoint ของคุณต้องการ ตัวอย่างเช่น:

  • Authorization: Bearer <token>
  • X-Api-Key: <key>
  • Authorization: Basic <base64(user:pass)>

รองรับเฉพาะ Secret แบบคงที่ใน Header เท่านั้น ไม่รองรับขั้นตอนการแลกเปลี่ยนโทเค็น OAuth2, mTLS และการลงนามคำขอบนฝั่ง Pushwoosh คุณยังสามารถจำกัด Endpoint ให้เข้าถึงได้เฉพาะจากที่อยู่ IP ของ Pushwoosh แทนหรือเพิ่มเติมจาก Header Secret ได้อีกด้วย ดู ที่อยู่ IP ของ Pushwoosh

สำหรับการยืนยันตัวตนแบบ HTTP Basic โดยเฉพาะ ให้ทำดังต่อไปนี้:

  1. เปิดโปรแกรมแก้ไขข้อความธรรมดาแล้วพิมพ์ชื่อผู้ใช้และรหัสผ่านของคุณโดยไม่มีเว้นวรรค คั่นด้วยเครื่องหมายโคลอน ตัวอย่างเช่น: myuser:mypass
  2. เข้ารหัสสตริงนี้เป็น Base64
  3. คัดลอกสตริง Base64 ที่ได้ (ตัวอย่างเช่น bXl1c2VyOm15cGFzcw==)
  4. ในการตั้งค่า Webhook ให้เพิ่ม Header Authorization พร้อมค่า: Basic <YOUR BASE64 STRING> ตรวจสอบให้แน่ใจว่ามีเว้นวรรคหลังคำว่า “Basic”
ตัวอย่าง Header Authorization สำหรับการยืนยันตัวตนแบบ Basic ในการตั้งค่า Webhook ที่แสดง Header Content-Type และ Authorization

เพิ่มเนื้อหาคำขอ JSON

Anchor link to

ในส่วน DATA ให้ป้อนเนื้อหาคำขอ JSON ของคุณ ตรวจสอบให้แน่ใจว่าเนื้อหาคำขออยู่ในรูปแบบ JSON ที่ถูกต้อง

ตัวอย่าง:

{
"hwid": "{{device:hwid}}"
}

ใช้ข้อมูลไดนามิกและมาโคร

Anchor link to

แผง DATA BUILDER ช่วยให้คุณสามารถแทรกข้อมูลไดนามิก (เช่น ข้อมูลผู้ใช้, อุปกรณ์, Tag หรือเหตุการณ์) ลงในเนื้อหาคำขอ JSON ของคุณได้โดยตรง ด้วย Dynamic Data คุณสามารถรวมค่าเฉพาะสำหรับผู้ใช้แต่ละรายที่กำลังดำเนินไปใน Journey ได้

สำหรับสิ่งนี้:

  1. เลือก หมวดหมู่ คุณสามารถดึงข้อมูลจากสามหมวดหมู่:
  • Device: ใช้ข้อมูลอุปกรณ์เมื่อคุณต้องการข้อมูลทางเทคนิคที่ผูกกับอุปกรณ์ของผู้ใช้

  • Tag: ใช้ข้อมูล Tag เมื่อคุณต้องการส่งข้อมูลที่จัดเก็บไว้ในโปรไฟล์ผู้ใช้

  • Event: ใช้ข้อมูลเหตุการณ์เมื่อ Webhook ควรส่งค่าจากเหตุการณ์ที่ทริกเกอร์ Journey

  1. เลือก พารามิเตอร์ (ตัวอย่างเช่น HWID, หมวดหมู่โปรด ฯลฯ)
  2. Pushwoosh จะสร้างมาโครที่มีลักษณะดังนี้:
{{tag:Language}}
  1. คัดลอกมาโครและวางลงในเนื้อหา JSON ของคุณในส่วน DATA

เมื่อ Webhook ทำงานใน Journey ที่ใช้งานจริง Pushwoosh จะแทนที่มาโครด้วยค่าจริงสำหรับผู้ใช้นั้นโดยอัตโนมัติ

แทรกตัวยึดตำแหน่ง Dynamic Data ลงในเนื้อหาคำขอของ Webhook

แมปข้อมูลการตอบกลับของ Webhook กับตัวแปร

Anchor link to

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

ในส่วน RESPONSE MAPPING ให้คลิก + ADD MAPPING และกรอกข้อมูลในสองช่องสำหรับแต่ละค่าที่คุณต้องการจับ:

  • Path: ตำแหน่งของค่าภายในเนื้อหา JSON ของการตอบกลับ
  • Attribute: ชื่อที่คุณใช้อ้างอิงถึงค่านี้ในภายหลังใน Journey
ส่วนการแมปการตอบกลับพร้อมช่อง Path และ Attribute และปุ่ม Add mapping ในการตั้งค่า Webhook

ตัวอย่างเช่น หาก CRM ของคุณตอบกลับด้วย:

{
"data": {
"user": {
"id": "789xyz"
}
}
}

ตั้งค่า Path เป็น data.user.id และ Attribute เป็น crm_user_id เพื่อจับ ID นั้น

การหมดเวลา, การลองใหม่ และคำขอที่ล้มเหลว

Anchor link to

Pushwoosh จะรอการตอบกลับนานสูงสุด 10 วินาที ขั้นตอน Webhook ทั้งหมด รวมถึงการส่งคำขอและการประมวลผลการตอบกลับ ถูกจำกัดไว้ที่ 30 วินาที ผู้เดินทางแต่ละคนจะทริกเกอร์คำขอหนึ่งครั้ง และไม่มีการลองใหม่อัตโนมัติ

สิ่งนี้ครอบคลุมเฉพาะตัวคำขอที่ไม่สามารถดำเนินการให้เสร็จสิ้นได้เท่านั้น การตอบกลับที่มาถึงแต่ไม่สามารถแมปได้อย่างสมบูรณ์ เช่น JSON ที่ไม่ถูกต้อง, Path ที่ไม่สามารถแก้ไขได้ หรือเนื้อหาที่เกิน 64 KB จะไม่ทำให้ผู้เดินทางออกจาก Journey ดูหมายเหตุใต้ การแมปการตอบกลับ ด้านบน

ทดสอบ Webhook

Anchor link to

คลิก Test webhook เพื่อตรวจสอบว่าการกำหนดค่า Webhook ของคุณถูกต้องและคำขอถูกส่งสำเร็จ

บันทึกการกำหนดค่าของคุณ

Anchor link to

คลิก Apply เพื่อบันทึกการกำหนดค่า Webhook ของคุณ