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

สร้างและอัปเดต

endpoints เหล่านี้ใช้สร้างและแก้ไขคำจำกัดความของ journey: ชื่อ, การตั้งค่า, และจุดต่างๆ บน canvas แต่ไม่ได้ใช้เริ่ม journey หากต้องการเริ่ม journey ให้ใช้ Lifecycle

ทั้งสอง endpoint รับและส่งคืน อ็อบเจกต์ Journey

สร้าง

Anchor link to

POST https://journey.pushwoosh.com/api/v3/journeygateway

สร้าง journey ใหม่ในสถานะ STATUS_DRAFT

คำขอ

Anchor link to
ฟิลด์จำเป็นประเภทคำอธิบาย
titleใช่stringชื่อ Journey
paramsใช่JourneyParamsการกำหนดค่าทั่วทั้ง Journey จำเป็นต้องมี params.application_code
pointsไม่อาร์เรย์ของ Pointองค์ประกอบ Journey บน canvas และการเชื่อมต่อ
commentsไม่อาร์เรย์ของ JourneyCommentความคิดเห็นบน Canvas
ตัวอย่างคำขอ
Anchor link to
สร้าง journey
curl -X POST https://journey.pushwoosh.com/api/v3/journeygateway \
-H "Authorization: Api YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Welcome series",
"params": { "application_code": "XXXXX-XXXXX" },
"points": [],
"comments": []
}'

การตอบกลับ

Anchor link to

ส่งคืน อ็อบเจกต์ Journey ใหม่ อ่าน UUID ของ journey จาก info.uuid และใช้สำหรับเรียกการอัปเดตและ lifecycle ในครั้งต่อไป

ตัวอย่างการตอบกลับ
Anchor link to
{
"info": {
"uuid": "11111111-2222-3333-4444-555555555555",
"title": "Welcome series",
"status": "STATUS_DRAFT",
"params": { "application_code": "XXXXX-XXXXX" }
},
"points": [],
"comments": []
}

ตัวอย่าง journey แบบเต็ม

Anchor link to

body ของ Create ที่สมบูรณ์สำหรับ welcome flow ขนาดเล็ก กราฟคือ:

เริ่มตาม segment ──default──▶ ส่ง push ──default──▶ รอ 1 วัน ──default──▶ ตัวแยก Boolean ──output1──▶ ส่งอีเมล ──default──▶ ออก
└──default───────────────────────────▶ ออก

Points จะถูกเชื่อมต่อกันผ่าน info.next_point_uuid ของแต่ละ output สังเกต คีย์ของ output: ทุก point ใช้ default ยกเว้นตัวแยก boolean ซึ่งจะเพิ่ม output1 สำหรับสาขาที่เงื่อนไขตรงกัน (default เป็นทางเลือกสำรอง) ส่วน point ทางออกจะไม่มี output

{
"title": "Welcome series",
"params": {
"application_code": "XXXXX-XXXXX",
"user_id_track_change_policy": "TRACK"
},
"points": [
{
"uuid": "11111111-1111-1111-1111-111111111111",
"title": "New signups",
"point_type": "POINT_TYPE_START_BY_SEGMENT",
"position": { "x": 80, "y": 200 },
"outputs": [
{ "identity": { "key": "default", "order": 0 },
"info": { "title": "", "next_point_uuid": "22222222-2222-2222-2222-222222222222" } }
],
"point_data": {
"start_by_segment": {
"application_code": "XXXXX-XXXXX",
"filter_code": "AAAAA-BBBBB"
}
}
},
{
"uuid": "22222222-2222-2222-2222-222222222222",
"title": "Welcome push",
"point_type": "POINT_TYPE_SEND_PUSH",
"position": { "x": 340, "y": 200 },
"outputs": [
{ "identity": { "key": "default", "order": 0 },
"info": { "title": "", "next_point_uuid": "33333333-3333-3333-3333-333333333333" } }
],
"point_data": {
"send_push": {
"application_code": "XXXXX-XXXXX",
"title": "Welcome!",
"content": "Thanks for joining — here's how to get started."
}
}
},
{
"uuid": "33333333-3333-3333-3333-333333333333",
"title": "Wait 1 day",
"point_type": "POINT_TYPE_WAIT",
"position": { "x": 600, "y": 200 },
"outputs": [
{ "identity": { "key": "default", "order": 0 },
"info": { "title": "", "next_point_uuid": "44444444-4444-4444-4444-444444444444" } }
],
"point_data": {
"delay": { "sec": 86400 }
}
},
{
"uuid": "44444444-4444-4444-4444-444444444444",
"title": "Opened the push?",
"point_type": "POINT_TYPE_BOOLEAN_SPLITTER",
"position": { "x": 860, "y": 200 },
"outputs": [
{ "identity": { "key": "output1", "order": 1 },
"info": { "title": "Matched", "next_point_uuid": "55555555-5555-5555-5555-555555555555" } },
{ "identity": { "key": "default", "order": 0 },
"info": { "title": "Everyone else", "next_point_uuid": "66666666-6666-6666-6666-666666666666" } }
],
"point_data": {
"boolean_splitter": {
"application_code": "XXXXX-XXXXX",
"split_strategy": "SPLIT_FILTER",
"load_policy": "ALL",
"filter_code": "CCCCC-DDDDD"
}
}
},
{
"uuid": "55555555-5555-5555-5555-555555555555",
"title": "Follow-up email",
"point_type": "POINT_TYPE_SEND_EMAIL",
"position": { "x": 1120, "y": 120 },
"outputs": [
{ "identity": { "key": "default", "order": 0 },
"info": { "title": "", "next_point_uuid": "66666666-6666-6666-6666-666666666666" } }
],
"point_data": {
"send_email": {
"application_code": "XXXXX-XXXXX",
"preset_code": "12345-67890"
}
}
},
{
"uuid": "66666666-6666-6666-6666-666666666666",
"title": "Exit",
"point_type": "POINT_TYPE_EXIT",
"position": { "x": 1380, "y": 200 },
"outputs": [],
"point_data": {
"terminator": {}
}
}
],
"comments": []
}

อัปเดต

Anchor link to

PUT https://journey.pushwoosh.com/api/v3/journeygateway/{uuid}

แทนที่คำจำกัดความของ journey ที่มีอยู่ ส่งคำจำกัดความที่ สมบูรณ์ points และ comments ที่คุณส่งจะแทนที่ของเดิม

พารามิเตอร์ของ Path

Anchor link to
ชื่อประเภทคำอธิบาย
uuidstringJourney ID ที่จะอัปเดต

คำขอ

Anchor link to
ฟิลด์ประเภทคำอธิบาย
titlestringชื่อ journey ใหม่
paramsJourneyParamsการกำหนดค่าทั่วทั้ง journey ใหม่
pointsอาร์เรย์ของ Pointชุด points ใหม่ทั้งหมด
commentsอาร์เรย์ของ JourneyCommentชุด comments ใหม่ทั้งหมด
autosaveboolเมื่อเป็น true, การเปลี่ยนแปลงจะถือเป็นการบันทึกอัตโนมัติของ editor ค่าเริ่มต้นคือ false
ตัวอย่างคำขอ
Anchor link to
เปลี่ยนชื่อและกำหนดค่า journey ใหม่
curl -X PUT https://journey.pushwoosh.com/api/v3/journeygateway/11111111-2222-3333-4444-555555555555 \
-H "Authorization: Api YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Welcome series v2",
"params": { "application_code": "XXXXX-XXXXX" },
"points": [],
"comments": []
}'

การตอบกลับ

Anchor link to

ส่งคืน อ็อบเจกต์ Journey ที่อัปเดตแล้ว

อัปเดตและดำเนินการต่อ

Anchor link to

POST https://journey.pushwoosh.com/api/v3/journeygateway/{uuid}/resume

ใช้การแก้ไขกับ journey และดำเนินการต่อในการเรียกครั้งเดียว ซึ่งเทียบเท่ากับการ อัปเดต ตามด้วย lifecycle Start body ของคำขอจะเหมือนกับ อัปเดต ใช้คำสั่งนี้เมื่อแก้ไข journey ที่หยุดชั่วคราวและต้องการให้กลับสู่สถานะ STATUS_RUNNING

เปลี่ยนชื่อ

Anchor link to

POST https://journey.pushwoosh.com/api/v3/journeygateway/{uuid}/rename

เปลี่ยนเฉพาะชื่อ journey โดยไม่แตะต้อง points หรือการตั้งค่า

ฟิลด์จำเป็นประเภทคำอธิบาย
titleใช่stringชื่อ journey ใหม่
ตัวอย่างคำขอ
Anchor link to
เปลี่ยนชื่อ journey
curl -X POST https://journey.pushwoosh.com/api/v3/journeygateway/11111111-2222-3333-4444-555555555555/rename \
-H "Authorization: Api YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "title": "Welcome series (Q3)" }'

เกี่ยวข้อง

Anchor link to