การอ้างอิงพอยต์
ทุก point จะมีอ็อบเจกต์ point_data ที่มีคีย์ซ้อนกันเพียงหนึ่งคีย์ ซึ่งตรงกับ point_type ของพอยต์ (ดู การจับคู่ point-type → key) หน้านี้จะอธิบายโครงสร้างภายใต้แต่ละคีย์
พอยต์การเข้า
Anchor link toJourney ต้องการพอยต์การเข้าอย่างน้อยหนึ่งพอยต์ พอยต์การเข้าทั้งหมดมี output default เพียงหนึ่งเดียว
start_by_segment
Anchor link toให้ผู้ใช้ที่ตรงกับ segment เข้ามา POINT_TYPE_START_BY_SEGMENT
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
application_code | string | Application code |
filter_code | string | Segment/filter code ที่กำหนด audience |
repeat | SegmentRepeat | กำหนดการเข้าซ้ำที่เป็นทางเลือก (ดู SegmentRepeat) |
start_at | timestamp | อย่าประมวลผลก่อนเวลานี้ (ISO 8601) |
is_deactivated | bool | ระบุว่าพอยต์การเข้านี้ถูกปิดใช้งานหรือไม่ |
message_bus (การเข้าด้วย event)
Anchor link toให้ผู้ใช้เข้ามาเมื่อพวกเขากระตุ้น event POINT_TYPE_EVENT
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
event_name | string | Event name ที่จะรอฟัง |
application_code | string | Application code |
event_conditions | PointEventCondition[] | เงื่อนไขที่จับคู่กับ attribute ของ event |
active_period | Period | กรอบเวลาที่ trigger ทำงาน |
multi_entry | MultiEntry | วิธีที่ผู้ใช้สามารถเข้าได้มากกว่าหนึ่งครั้ง (ดู MultiEntry) |
attribute_entry | AttributeEntry | ลงทะเบียน User ID ที่อยู่ใน attribute ของ event แทนผู้ใช้ที่กระตุ้น event (ดู AttributeEntry) |
allow_reenter | bool | ระบุว่าผู้ใช้สามารถเข้า journey ซ้ำได้หรือไม่ |
AttributeEntry
Anchor link toลงทะเบียน User IDs ที่อยู่ใน attribute ของ event แทนผู้ใช้ที่กระตุ้น event สะท้อน Users from an event attribute ใน Customer Journey builder
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
enabled | bool | ระบุว่าจะลงทะเบียนผู้ใช้ที่ระบุใน attribute ของ event แทนผู้ใช้ที่กระตุ้น event หรือไม่ |
attribute_name | string | ชื่อของ attribute ของ event ที่เก็บ User ID (หรือรายการของ User IDs) ที่จะลงทะเบียน |
start_by_api
Anchor link toพอยต์การเข้าที่ถูกป้อนโดยการเรียก Start by API POINT_TYPE_START_BY_API
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
application_code | string | Application code |
attributes | string[] | ชื่อของ attribute ที่กำหนดเองที่สามารถส่งผ่านใน attribute_values ของคำขอ Start by API |
is_deactivated | bool | ระบุว่าพอยต์การเข้านี้ถูกปิดใช้งานหรือไม่ |
พอยต์การกำหนดเวลา
Anchor link todelay (รอ)
Anchor link toหยุดผู้ใช้แต่ละคนชั่วคราวตามช่วงเวลาที่กำหนดหรือคำนวณได้ POINT_TYPE_WAIT อ็อบเจกต์ point_data.delay จะตั้งค่าคีย์ช่วงเวลาต่อไปนี้เพียงหนึ่งคีย์:
| คีย์ช่วงเวลา | ประเภท | คำอธิบาย |
|---|---|---|
sec | uint64 | รอเป็นจำนวนวินาทีที่กำหนด |
exact_time | ExactTime | รอจนถึงเวลาของวัน (hour, minute) |
exact_date_time | ExactDateTime | รอจนถึงวันที่และเวลาที่แน่นอน |
exact_week_days_time | ExactWeekDaysTime | รอจนถึงเวลาที่ระบุในวันของสัปดาห์ที่ระบุ (map ของวัน 0=จันทร์ … 6=อาทิตย์ → ExactTime) |
dynamic_time | DynamicTime | รอโดยอ้างอิงกับค่าจาก tag หรือ event |
dynamic_time ที่มี split_branches: true จะเพิ่มสาขา output1 (ดู คีย์ output)
DynamicTime
Anchor link to| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
from | enum DynamicTimeFrom | ระบุว่าเวลาพื้นฐานมาจาก tag หรือ event |
direction | enum DynamicTimeDirection | การชดเชยเวลาก่อนหรือหลังเวลาพื้นฐาน |
duration | uint64 | ขนาดของการชดเชยเวลา |
unit | enum DynamicTimeUnit | หน่วยของ duration (นาที, ชั่วโมง, วัน, …) |
split_branches | bool | แยกผู้ใช้ออกเป็นสาขาต่างๆ เมื่อเวลาที่คำนวณได้แตกต่างกัน |
tag_name | string | Tag ที่เก็บเวลาพื้นฐาน (เมื่อ from เป็น tag) |
event_name / event_attribute / point_id | string | แหล่งที่มาของ event ของเวลาพื้นฐาน (เมื่อ from เป็น event) |
wait_event
Anchor link toรอจนกว่าผู้ใช้จะกระตุ้น event (หรือหมดเวลา) POINT_TYPE_WAIT_EVENT output default คือเส้นทาง ไม่ถูกกระตุ้น เส้นทางที่ถูกกระตุ้นคือ output1 หรือด้วย script จะเป็นหนึ่งสาขาต่อเงื่อนไข
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
events | PointWaitEventInfo[] | Events ที่จะรอ |
conditions_script | string | script ที่เป็นทางเลือกสำหรับตรรกะหลาย event ที่ซับซ้อน ชื่อเงื่อนไขที่แยกวิเคราะห์จะกลายเป็นคีย์ output |
multi_entry | MultiEntry | พฤติกรรมการเข้าซ้ำ |
พอยต์การแยกและการกรอง
Anchor link toboolean_splitter
Anchor link toนำทางผู้ใช้ไปยังสาขาต่างๆ ตามเงื่อนไข POINT_TYPE_BOOLEAN_SPLITTER
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
split_strategy | enum | SPLIT_FILTER (ตาม segment), SPLIT_TAGS (ตามเงื่อนไข tag), หรือ SPLIT_EVENTS (ตามเงื่อนไข event) |
load_policy | enum | ALL (อุปกรณ์ใดๆ ของผู้ใช้อาจตรงกัน) หรือ FILTER (เฉพาะอุปกรณ์ปัจจุบัน) |
filter_code | string | Segment code, เมื่อ split_strategy คือ SPLIT_FILTER |
filter_expressions | FilterExpression[] | เงื่อนไข Tag, เมื่อ split_strategy คือ SPLIT_TAGS: เพิ่มสาขา output หนึ่งสาขาต่อ expression |
event | BooleanSplitterEventInfo | เงื่อนไข Event, เมื่อ split_strategy คือ SPLIT_EVENTS: เพิ่มสาขา output หนึ่งสาขาต่อเงื่อนไข |
ab_splitter
Anchor link toสุ่มแยกผู้ใช้ออกเป็นกลุ่มต่างๆ ตามน้ำหนัก POINT_TYPE_AB_SPLITTER คีย์ output คือ output0, output1, … (หนึ่งรายการต่อรายการใน split, เริ่มจากดัชนี 0 ไม่มี default)
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
split | uint32[] | เปอร์เซ็นต์สำหรับแต่ละสาขา ต้องรวมกันได้ 100 ดัชนี i จะจับคู่กับคีย์ output output{i} |
auto_select_winner | bool | ระบุว่าจะเลือกสาขาที่ชนะโดยอัตโนมัติหรือไม่ |
winner_strategy | enum | ANY_GOAL หรือ SPECIFIC_GOAL |
goal_uuid | string | Goal ที่ใช้ในการตัดสินผู้ชนะ (ด้วย SPECIFIC_GOAL) |
winner_split | uint32 | หมายเลขสาขาที่ชนะ (เริ่มจาก 1, 0 = ยังไม่มีผู้ชนะ) |
filter
Anchor link toให้เฉพาะผู้ใช้ที่ตรงกันไปต่อ (default), และนำทางผู้ใช้ที่เหลือไปยัง output1 POINT_TYPE_FILTER
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
filter | enum Filter | การตรวจสอบที่กำหนดไว้ล่วงหน้า: EMAIL_EXISTS, PUSH_TOKEN_EXISTS, SMS_TOKEN_EXISTS, WHATSAPP_TOKEN_EXISTS, LINE_TOKEN_EXISTS, หรือ CUSTOM |
filter_raw | string | นิพจน์ตัวกรองที่กำหนดเอง, เมื่อ filter คือ CUSTOM |
พอยต์การกระทำ
Anchor link toset_tags
Anchor link toอัปเดต tag ของผู้ใช้ POINT_TYPE_SET_TAGS
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
application_code | string | Application code |
tags | Tag[] | Tag ที่จะเขียน |
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
name | string | ชื่อ Tag |
type | enum TagType | ประเภทข้อมูลและการดำเนินการ: TYPE_STRING, TYPE_INTEGER, TYPE_DATE, TYPE_BOOLEAN, TYPE_LIST, TYPE_LIST_APPEND, TYPE_LIST_REMOVE, TYPE_DYNAMIC, … |
| value | oneof | คีย์ค่าเพียงหนึ่งคีย์ที่ตรงกับ type: str, int, bool, date, price, version, timezone, list, หรือ dynamic |
web_hook
Anchor link toส่งคำขอ HTTP ขาออก POINT_TYPE_WEBHOOK มี output default เพียงหนึ่งเดียว
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
method | string | เมธอด HTTP (GET, POST, PUT, …) |
url | string | URL เป้าหมาย |
request_template | string | เทมเพลตเนื้อหาคำขอ รองรับเทมเพลต Liquid |
headers | map<string, string> | เฮดเดอร์ HTTP |
disabled | bool | อ่านอย่างเดียว true เมื่อ Pushwoosh ปิดใช้งาน webhook โดยอัตโนมัติหลังจากเกิดข้อผิดพลาดซ้ำๆ |
reactivate | bool | เขียนอย่างเดียว ตั้งค่าเป็น true เพื่อเปิดใช้งาน webhook ที่ถูกปิดใช้งานอีกครั้ง |
audience_sync
Anchor link toเพิ่มหรือลบผู้ใช้ออกจาก Meta Custom Audience POINT_TYPE_AUDIENCE_SYNC
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
ad_account_id | string | ID บัญชีโฆษณา Meta |
ad_account_name | string | ชื่อที่แสดงสำหรับ ad_account_id, สำหรับ UI เท่านั้น |
audience_id | string | ID ของ Meta Custom Audience |
audience_name | string | ชื่อที่แสดงสำหรับ audience_id, สำหรับ UI เท่านั้น |
action | enum AudienceSyncAction | AUDIENCE_SYNC_ACTION_ADD หรือ AUDIENCE_SYNC_ACTION_REMOVE |
พอยต์การแปลงค่า
Anchor link togoal_event
Anchor link toติดตาม conversion goal POINT_TYPE_GOAL_EVENT ไม่มี output
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
event_name | string | ชื่อ Goal event |
application_code | string | Application code |
event_conditions | PointEventCondition[] | เงื่อนไขที่จับคู่กับ attribute ของ goal event |
is_throw_out | bool | ระบุว่าจะลบผู้ใช้ออกจาก journey เมื่อบรรลุ goal หรือไม่ |
is_cancel_event | bool | ระบุว่านี่เป็น goal เชิงลบ (การยกเลิก) หรือไม่ |
พอยต์การออก
Anchor link toterminator
Anchor link toสิ้นสุด journey สำหรับผู้ใช้ POINT_TYPE_EXIT อ็อบเจกต์ว่าง ({}) และไม่มี output
{ "point_type": "POINT_TYPE_EXIT", "point_data": { "terminator": {} }, "outputs": [] }พอยต์ terminator เป็นทางเลือก การปล่อยให้ info.next_point_uuid ของ output ว่างไว้จะสิ้นสุด journey สำหรับผู้ใช้ในลักษณะเดียวกับ terminator ที่ระบุไว้อย่างชัดเจน — ทั้งสองกรณีจะถูกนับในลักษณะเดียวกันคือเป็น Exits ไม่ใช่ข้อผิดพลาด
พอยต์การส่งข้อความ
Anchor link toพอยต์การส่งข้อความทั้งหมดจะส่งผ่าน channel และใช้ envelope ร่วมกัน แต่ละพอยต์มี output default เพียงหนึ่งเดียว เว้นแต่จะเปิดใช้งาน splitter (ดู คีย์ output)
ฟิลด์ทั่วไป:
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
application_code | string | Application code |
preset_code | string | Preset (เทมเพลต) ที่จะส่ง inapp ใช้ richmedia_code แทน |
content / title | string | เนื้อหาข้อความแบบอินไลน์, เมื่อไม่ได้ใช้ preset (ขึ้นอยู่กับ channel) |
campaign_code | string | Campaign code สำหรับการติดตาม จะถูกสร้างขึ้นโดยอัตโนมัติหากละไว้ |
split_params | BehaviorSplitter | ทางเลือก: รอการโต้ตอบและแยกสาขาตามนั้น |
message_type | enum | ประเภทข้อความ Marketing vs transactional (ควบคุมการจัดการ control-group) ไม่ได้ใช้โดย send_email ซึ่งมีคู่ email_type/email_category ของตัวเองด้านล่าง |
ประเภทพอยต์และฟิลด์เพิ่มเติมที่น่าสนใจ:
| ประเภทพอยต์ | คีย์ point_data | หมายเหตุ |
|---|---|---|
POINT_TYPE_SEND_PUSH | send_push | split_params (พฤติกรรม) บวกกับ delivery splitter สามารถสร้าง output ได้สูงสุดสามรายการ send_by_user_id, wait_optimal_time |
POINT_TYPE_SEND_EMAIL | send_email | liquid_template_params, personalise, email_type, email_category (ดูด้านล่าง) ดู Email API |
POINT_TYPE_SEND_SMS | send_sms | ดู SMS |
POINT_TYPE_SEND_WHATSAPP | send_whatsapp | personalise (ดูด้านล่าง) preset การตอบกลับด่วนจะเพิ่ม output หนึ่งรายการต่อการตอบกลับ (คีย์ = ค่าการตอบกลับ) ดู WhatsApp |
POINT_TYPE_SEND_TELEGRAM | send_telegram | ช่องทาง Telegram |
POINT_TYPE_SEND_KAKAO | send_kakao | ดู Kakao |
POINT_TYPE_SEND_LINE | send_line | ดู LINE API |
POINT_TYPE_SEND_DATA | send_data | ข้อความข้อมูลแบบเงียบ (ไม่มี UI) |
POINT_TYPE_INAPP | inapp | ใช้ richmedia_code, expire_in_days, capping |
ประเภทที่ใช้ร่วมกัน
Anchor link toSegmentRepeat
Anchor link to| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
enabled | bool | ระบุว่าการเข้าซ้ำเปิดใช้งานอยู่หรือไม่ |
frequency | string | daily, weekly, monthly, หรือ dates |
every | uint32 | ทำซ้ำทุก N ช่วงเวลา |
dates | string[] | วันที่ที่ระบุ, เมื่อ frequency คือ dates |
time | SegmentRepeatTime | การกำหนดค่าเวลาของวัน |
อ็อบเจกต์เวลา
Anchor link toExactTime:{ "hour": 0–23, "minute": 0–59 }ExactDateTime:{ "year", "month": 1–12, "day": 1–31, "hour": 0–23, "minute": 0–59 }
BehaviorSplitter
Anchor link to| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
enabled | bool | ระบุว่าจะรอการโต้ตอบและแยกสาขาตามนั้นหรือไม่ |
interval | uint64 | จำนวนวินาทีที่จะรอการโต้ตอบ |
MultiEntry
Anchor link toควบคุมจำนวน session ที่ใช้งานอยู่ที่ผู้ใช้สามารถมีได้ใน journey ในเวลาเดียวกัน สะท้อน Control how many sessions a user can have at the same time ใน Customer Journey builder ใช้โดย พอยต์การเข้าด้วย event และ wait_event
| ฟิลด์ | ประเภท | คำอธิบาย |
|---|---|---|
enabled | bool | ระบุว่าผู้ใช้สามารถมี session ที่ใช้งานอยู่หลาย session ในเวลาเดียวกันได้หรือไม่ false: หนึ่ง session ที่ใช้งานอยู่ต่อผู้ใช้ true: หลาย session ที่ใช้งานอยู่ต่อผู้ใช้ |
attribute_name | string | ทางเลือก attribute ของ event ที่กำหนดขอบเขตของแต่ละ session เมื่อตั้งค่า ผู้ใช้สามารถมีหนึ่ง session ที่ใช้งานอยู่ต่อค่าที่แตกต่างกันของ attribute นี้ (ตัวอย่างเช่น หนึ่ง session ต่อ order_id) event ที่มีค่าเดียวกันจะใช้ session ร่วมกัน ปล่อยว่างไว้เพื่อกำหนดขอบเขตการเข้าทั้งหมดของผู้ใช้ร่วมกัน |