Journey ऑब्जेक्ट
जीवनचक्र, बनाएं, और अपडेट करें विधियाँ सभी एक ही शीर्ष-स्तरीय आकार के साथ एक Journey ऑब्जेक्ट लौटाती हैं:
{ "info": { ... }, // केवल-पढ़ने के लिए मेटाडेटा (केवल प्रतिक्रियाओं में) "params": { ... }, // यात्रा-व्यापी कॉन्फ़िगरेशन (बनाएं / अपडेट करें) "points": [ ... ], // कैनवास नोड्स और उनके कनेक्शन "comments": [ ... ] // कैनवास टिप्पणियाँ}जब आप एक Journey बनाते या अपडेट करते हैं तो आप title, params, points, और comments भेजते हैं। प्रतिक्रियाएं info (जिसमें params होता है) के साथ points और comments लौटाती हैं।
जानकारी
Anchor link toकेवल-पढ़ने के लिए Journey मेटाडेटा। हर v3 विधि द्वारा लौटाया जाता है। अनुरोध बॉडी का हिस्सा नहीं है।
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
uuid | string | Journey ID। |
title | string | Journey का नाम। |
status | JourneyStatus | वर्तमान स्थिति। |
created_at | string | निर्माण टाइमस्टैम्प (ISO 8601)। |
updated_at | string | अंतिम अपडेट टाइमस्टैम्प (ISO 8601)। |
is_first_activated | bool | क्या Journey कम से कम एक बार शुरू की गई है। |
params | JourneyParams | Journey-व्यापी कॉन्फ़िगरेशन। |
category_uuid | string | श्रेणी का UUID, या यदि अवर्गीकृत है तो खाली। |
pointCounts | map<string, uint32> | प्रकार के अनुसार पॉइंट्स की गिनती। |
campaign_type | CampaignType | उपयोगकर्ता Journey में कैसे प्रवेश करते हैं। |
stop_reason | string | यदि लागू हो, तो Journey क्यों रुकी। |
last_edited_by | User | जिस उपयोगकर्ता ने अंतिम बार Journey को संपादित किया। |
dynamic_entry | bool | क्या डायनामिक एंट्री सक्षम है। |
JourneyParams
Anchor link toJourney-व्यापी कॉन्फ़िगरेशन। बनाने/अपडेट करने पर भेजा जाता है और info.params के अंदर लौटाया जाता है।
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
application_code | string | एप्लिकेशन कोड जिससे Journey संबंधित है। बनाते समय आवश्यक है। |
silent_hours | SilentHours | वे घंटे जिनके दौरान संदेशों को दबा दिया जाता है, प्रति चैनल। |
capping | EntryCapping | एक उपयोगकर्ता कितनी बार Journey में फिर से प्रवेश कर सकता है, इस पर सीमाएं। |
conversion_window | ConversionWindow | लक्ष्य रूपांतरणों को एट्रिब्यूट करने के लिए विंडो। |
user_id_track_change_policy | UserIDTrackChangePolicy | Journey के बीच में उपयोगकर्ता की ID बदलने पर कैसे संभालें। |
SilentHours
Anchor link toशांत घंटों के दौरान भेजने को रोकता है। प्रति चैनल कॉन्फ़िगर किया गया: प्रत्येक चैनल अपना SilentHoursParams लेता है:
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
push_params | SilentHoursParams | पुश नोटिफिकेशन के लिए शांत घंटे। |
inapp_params | SilentHoursParams | इन-ऐप संदेशों के लिए शांत घंटे। |
email_params | SilentHoursParams | ईमेल के लिए शांत घंटे। |
sms_params | SilentHoursParams | SMS के लिए शांत घंटे। |
whatsapp_params | SilentHoursParams | WhatsApp के लिए शांत घंटे। |
line_params | SilentHoursParams | LINE के लिए शांत घंटे। |
प्रत्येक SilentHoursParams है:
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
enabled | bool | क्या इस चैनल पर शांत घंटे लागू होते हैं। |
from_time | Time | शांत विंडो की शुरुआत: { "hour": 0–23, "minute": 0–59 }। |
to_time | Time | शांत विंडो का अंत। |
week_days | bool[] | उन दिनों के लिए सात बूलियन जिन पर विंडो लागू होती है (सोमवार = इंडेक्स 0)। |
behavior | enum | जब कोई संदेश शांत घंटों के भीतर आता है तो क्या करें: WaitAndSend (रोकें, फिर विंडो समाप्त होने पर भेजें), DropAndGo (संदेश छोड़ें, तुरंत Journey जारी रखें), या WaitAndDrop (विंडो के समाप्त होने तक प्रतीक्षा करें, फिर बिना भेजे जारी रखें)। |
EntryCapping
Anchor link toयह सीमित करता है कि एक ही उपयोगकर्ता कितनी बार Journey में प्रवेश कर सकता है।
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
is_enabled | bool | क्या एंट्री कैपिंग चालू है। |
period | uint64 | एक उपयोगकर्ता के प्रवेश के बीच सेकंड की न्यूनतम संख्या। |
ConversionWindow
Anchor link to| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
seconds | uint64 | एक Journey में प्रवेश करने के कितने समय बाद तक उपयोगकर्ता का लक्ष्य पूरा करना एक रूपांतरण के रूप में गिना जाता है। |
पॉइंट
Anchor link toएक पॉइंट Journey कैनवास पर एक नोड है: एक प्रवेश बिंदु, एक संदेश, एक देरी, एक स्प्लिटर, और इसी तरह।
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
uuid | string | Journey के भीतर पॉइंट की अद्वितीय ID। एक कैनोनिकल RFC 4122 UUID होना चाहिए: 8-4-4-4-12 समूहों में 32 हेक्स अंक। |
title | string | पॉइंट का प्रदर्शन नाम। |
point_type | PointType | नोड का प्रकार। |
outputs | array of PointOutput | डाउनस्ट्रीम पॉइंट्स से कनेक्शन। |
position | Position | कैनवास निर्देशांक। |
point_data | object | ठीक एक नेस्टेड कुंजी, point_type से मेल खाती है (पॉइंट प्रकार तालिका देखें)। |
PointOutput
Anchor link toएक पॉइंट के आउटपुट उसकी बाहर जाने वाली शाखाएं होती हैं। उनकी कुंजियाँ फ्री-फॉर्म नहीं होती हैं। वैलिडेटर प्रत्येक पॉइंट प्रकार के लिए कुंजियों का एक सटीक सेट की उम्मीद करता है, और एक ऐसी Journey को अस्वीकार कर देता है जिसके पॉइंट में गलत संख्या में आउटपुट या एक ऐसी कुंजी होती है जिसे वह नहीं पहचानता है।
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
identity.key | string | शाखा कुंजी। नीचे दिए गए आउटपुट कुंजी नियमों का पालन करना चाहिए। |
identity.order | int | शाखा का प्रदर्शन क्रम। |
info.title | string | वैकल्पिक शाखा लेबल। |
info.next_point_uuid | string | अगले पॉइंट का UUID जिससे यह शाखा जुड़ती है। |
आउटपुट कीज़
Anchor link toडिफ़ॉल्ट (पहली) शाखा का नाम हमेशा "default" होता है। अतिरिक्त शाखाओं का नाम "output1", "output2", … (उपसर्ग output के बाद 1-आधारित इंडेक्स) होता है। दो पॉइंट प्रकार इस नियम को तोड़ते हैं, जैसा कि नीचे बताया गया है।
| पॉइंट प्रकार | अपेक्षित आउटपुट कीज़ |
|---|---|
एंट्री पॉइंट्स (START_BY_SEGMENT, START_BY_API, EVENT), INAPP, SET_TAGS, WEBHOOK, AUDIENCE_SYNC, और बिना स्प्लिटर वाले संदेश पॉइंट्स (SEND_PUSH, SEND_EMAIL, SEND_SMS, SEND_WHATSAPP, SEND_LINE, SEND_KAKAO, SEND_TELEGRAM, SEND_DATA) | default |
GOAL_EVENT, EXIT | कोई नहीं (कोई आउटपुट नहीं) |
FILTER | default, output1 |
BOOLEAN_SPLITTER | default, फिर output1 … outputN (प्रति शर्त एक अतिरिक्त शाखा। एक साधारण हाँ/नहीं विभाजन default + output1 है) |
WAIT (देरी) | default। शाखा विभाजन के साथ एक गतिशील देरी output1 जोड़ती है |
WAIT_EVENT | default इवेंट-नॉट-ट्रिगर्ड शाखा है। output1 (या, एक कंडीशंस स्क्रिप्ट के साथ, प्रति शर्त एक शाखा) ट्रिगर किया गया पथ है |
एक स्प्लिटर के साथ SEND_PUSH | default, output1 (और output2 जब संदेश और डिलीवरी दोनों स्प्लिटर चालू हों) |
एक स्प्लिटर के साथ SEND_EMAIL / SEND_SMS / SEND_LINE / SEND_WHATSAPP | default, output1 |
एक क्विक-रिप्लाई प्रीसेट के साथ SEND_WHATSAPP | default, साथ ही प्रति क्विक-रिप्लाई एक शाखा। कुंजी क्विक-रिप्लाई मान ही है |
AB_SPLITTER | output0, output1, output2, … (प्रति संस्करण एक। कोई default शाखा नहीं है) |
पोजीशन
Anchor link to| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
x | float | कैनवास पर क्षैतिज निर्देशांक। |
y | float | कैनवास पर ऊर्ध्वाधर निर्देशांक। |
पॉइंट प्रकार और point_data
Anchor link topoint_data एक-में-से-एक है: इसमें ठीक एक नेस्टेड ऑब्जेक्ट होता है जिसकी कुंजी पॉइंट के point_type द्वारा निर्धारित होती है।
point_type | point_data कुंजी | उद्देश्य |
|---|---|---|
POINT_TYPE_START_BY_SEGMENT | start_by_segment | प्रवेश: एक सेगमेंट से मेल खाने वाले उपयोगकर्ता। |
POINT_TYPE_EVENT | message_bus | प्रवेश: एक इवेंट को ट्रिगर करने वाले उपयोगकर्ता। |
POINT_TYPE_START_BY_API | start_by_api | प्रवेश: Start by API कॉल के माध्यम से इंजेक्ट किए गए उपयोगकर्ता। |
POINT_TYPE_WAIT | delay | एक निश्चित या गतिशील अंतराल के लिए प्रतीक्षा करें। |
POINT_TYPE_WAIT_EVENT | wait_event | एक इवेंट होने तक प्रतीक्षा करें। |
POINT_TYPE_SEND_PUSH | send_push | एक पुश नोटिफिकेशन भेजें। |
POINT_TYPE_SEND_EMAIL | send_email | एक ईमेल भेजें। |
POINT_TYPE_SEND_SMS | send_sms | एक SMS भेजें। |
POINT_TYPE_SEND_WHATSAPP | send_whatsapp | एक WhatsApp संदेश भेजें। |
POINT_TYPE_SEND_TELEGRAM | send_telegram | एक Telegram संदेश भेजें। |
POINT_TYPE_SEND_KAKAO | send_kakao | एक Kakao संदेश भेजें। |
POINT_TYPE_SEND_LINE | send_line | एक LINE संदेश भेजें। |
POINT_TYPE_SEND_DATA | send_data | एक साइलेंट डेटा संदेश भेजें। |
POINT_TYPE_INAPP | inapp | एक इन-ऐप संदेश दिखाएं। |
POINT_TYPE_BOOLEAN_SPLITTER | boolean_splitter | उपयोगकर्ताओं को एक शर्त (सेगमेंट, टैग, या इवेंट) के अनुसार विभाजित करें। |
POINT_TYPE_AB_SPLITTER | ab_splitter | उपयोगकर्ताओं को A/B समूहों में विभाजित करें। |
POINT_TYPE_FILTER | filter | केवल एक फ़िल्टर से मेल खाने वाले उपयोगकर्ताओं को जारी रखने की अनुमति दें। |
POINT_TYPE_SET_TAGS | set_tags | उपयोगकर्ता टैग अपडेट करें। |
POINT_TYPE_WEBHOOK | web_hook | एक आउटबाउंड HTTP अनुरोध भेजें। |
POINT_TYPE_GOAL_EVENT | goal_event | एक रूपांतरण लक्ष्य को ट्रैक करें। |
POINT_TYPE_AUDIENCE_SYNC | audience_sync | उपयोगकर्ताओं को एक बाहरी ऑडियंस के साथ सिंक करें। |
POINT_TYPE_EXIT | terminator | Journey से बाहर निकलें। |
उदाहरण पॉइंट
Anchor link toएकल डाउनस्ट्रीम कनेक्शन के साथ एक “सेट टैग” पॉइंट:
{ "uuid": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", "title": "Tag as engaged", "point_type": "POINT_TYPE_SET_TAGS", "position": { "x": 480, "y": 120 }, "outputs": [ { "identity": { "key": "default", "order": 0 }, "info": { "title": "", "next_point_uuid": "ffffffff-1111-2222-3333-444444444444" } } ], "point_data": { "set_tags": { "application_code": "XXXXX-XXXXX", "tags": [ { "name": "engaged", "value": "true" } ] } }}JourneyComment
Anchor link to| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
id | string | टिप्पणी UUID। |
message | string | टिप्पणी पाठ। |
position | Position | कैनवास निर्देशांक। |
index | int | प्रदर्शन क्रम। |
created_at | string | निर्माण टाइमस्टैम्प (ISO 8601)। |
deleted | bool | क्या टिप्पणी हटा दी गई है। |
JourneyStatus एनम
Anchor link toSTATUS_DRAFT, STATUS_RUNNING, STATUS_FINISHED, STATUS_ARCHIVED, STATUS_PAUSED, STATUS_UNKNOWN।
CampaignType एनम
Anchor link toTriggerBased: उपयोगकर्ता एक इवेंट पर प्रवेश करते हैं।AudienceBased: उपयोगकर्ता एक सेगमेंट से प्रवेश करते हैं।APIBased: उपयोगकर्ता Start by API कॉल के माध्यम से प्रवेश करते हैं।Mixed: एक से अधिक प्रवेश प्रकार।Unknown: प्रवेश प्रकार निर्धारित नहीं है।
PointType एनम
Anchor link toपूरी सूची और प्रत्येक point_data कुंजी के लिए ऊपर पॉइंट प्रकार तालिका देखें।
UserIDTrackChangePolicy एनम
Anchor link toयह नियंत्रित करता है कि एक उपयोगकर्ता के साथ क्या होता है जो Journey के बीच में है जब उसकी User ID बदल जाती है:
DEFAULT: डिफ़ॉल्ट व्यवहार।TRACK: नई ID के तहत उपयोगकर्ता को ट्रैक करते रहें।DROP: जब उपयोगकर्ता की ID बदलती है तो उसे Journey से हटा दें।