जर्नी ऑब्जेक्ट
लाइफसाइकिल, बनाने और अपडेट करने के तरीके सभी एक ही टॉप-लेवल आकार के साथ एक जर्नी ऑब्जेक्ट लौटाते हैं:
{ "info": { ... }, // केवल-पढ़ने-योग्य मेटाडेटा (केवल प्रतिक्रियाएं) "params": { ... }, // जर्नी-व्यापी कॉन्फ़िगरेशन (बनाएं / अपडेट करें) "points": [ ... ], // कैनवास नोड्स और उनके कनेक्शन "comments": [ ... ] // कैनवास टिप्पणियां}जब आप एक जर्नी बनाते या अपडेट करते हैं तो आप title, params, points, और comments भेजते हैं। प्रतिक्रियाएं info (जिसमें params होता है) के साथ points और comments लौटाती हैं।
जानकारी
Anchor link toकेवल-पढ़ने-योग्य जर्नी मेटाडेटा। हर v3 विधि द्वारा लौटाया जाता है। अनुरोध बॉडी का हिस्सा नहीं है।
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
uuid | string | जर्नी आईडी। |
title | string | जर्नी का नाम। |
status | JourneyStatus | वर्तमान स्थिति। |
created_at | string | निर्माण टाइमस्टैम्प (ISO 8601)। |
updated_at | string | अंतिम अपडेट टाइमस्टैम्प (ISO 8601)। |
is_first_activated | bool | क्या जर्नी कम से कम एक बार शुरू की गई है। |
params | JourneyParams | जर्नी-व्यापी कॉन्फ़िगरेशन। |
category_uuid | string | श्रेणी का UUID, या यदि अवर्गीकृत है तो खाली। |
pointCounts | map<string, uint32> | प्रकार के अनुसार पॉइंट्स की गिनती। |
campaign_type | CampaignType | उपयोगकर्ता जर्नी में कैसे प्रवेश करते हैं। |
stop_reason | string | जर्नी क्यों रुकी, यदि लागू हो। |
last_edited_by | User | वह उपयोगकर्ता जिसने अंतिम बार जर्नी को संपादित किया। |
dynamic_entry | bool | क्या डायनामिक एंट्री सक्षम है। |
JourneyParams
Anchor link toजर्नी-व्यापी कॉन्फ़िगरेशन। बनाने/अपडेट करने पर भेजा जाता है और info.params के अंदर लौटाया जाता है।
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
application_code | string | एप्लिकेशन कोड जिससे जर्नी संबंधित है। बनाने पर आवश्यक है। |
silent_hours | SilentHours | वे घंटे जिनके दौरान संदेशों को दबा दिया जाता है, प्रति चैनल। |
capping | EntryCapping | एक उपयोगकर्ता कितनी बार जर्नी में फिर से प्रवेश कर सकता है, इस पर सीमाएं। |
conversion_window | ConversionWindow | लक्ष्य रूपांतरणों को एट्रिब्यूट करने के लिए विंडो। |
user_id_track_change_policy | UserIDTrackChangePolicy | जब किसी उपयोगकर्ता की आईडी जर्नी के बीच में बदल जाती है तो उसे कैसे संभालना है। |
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 (संदेश छोड़ें, तुरंत जर्नी जारी रखें), या WaitAndDrop (विंडो का इंतजार करें, फिर बिना भेजे जारी रखें)। |
EntryCapping
Anchor link toएक ही उपयोगकर्ता कितनी बार जर्नी में प्रवेश कर सकता है, इसे सीमित करता है।
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
is_enabled | bool | क्या एंट्री कैपिंग चालू है। |
period | uint64 | एक उपयोगकर्ता के प्रवेशों के बीच सेकंड की न्यूनतम संख्या। |
ConversionWindow
Anchor link to| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
seconds | uint64 | एक जर्नी में प्रवेश करने के बाद एक उपयोगकर्ता का लक्ष्य पूरा होना कब तक एक रूपांतरण के रूप में गिना जाता है। |
पॉइंट
Anchor link toएक पॉइंट जर्नी कैनवास पर एक नोड है: एक एंट्री पॉइंट, एक संदेश, एक देरी, एक स्प्लिटर, और इसी तरह।
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
uuid | string | जर्नी के भीतर पॉइंट की अद्वितीय आईडी। एक कैनोनिकल 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एक पॉइंट के आउटपुट उसकी बाहर जाने वाली शाखाएं होती हैं। उनकी कुंजियाँ फ्री-फॉर्म नहीं होती हैं। वैलिडेटर प्रत्येक पॉइंट प्रकार के लिए कुंजियों का एक सटीक सेट की उम्मीद करता है, और एक ऐसी जर्नी को अस्वीकार कर देता है जिसके पॉइंट में गलत संख्या में आउटपुट या एक ऐसी कुंजी होती है जिसे वह नहीं पहचानता है।
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
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 | एंट्री: स्टार्ट बाय एपीआई कॉल के माध्यम से इंजेक्ट किए गए उपयोगकर्ता। |
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 | जर्नी से बाहर निकलें। |
उदाहरण पॉइंट
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: उपयोगकर्ता स्टार्ट बाय एपीआई कॉल के माध्यम से प्रवेश करते हैं।Mixed: एक से अधिक एंट्री प्रकार।Unknown: एंट्री प्रकार निर्धारित नहीं है।
PointType एनम
Anchor link toपूरी सूची और प्रत्येक point_data कुंजी के लिए ऊपर दी गई पॉइंट प्रकार तालिका देखें।
UserIDTrackChangePolicy एनम
Anchor link toयह नियंत्रित करता है कि जब किसी उपयोगकर्ता की यूज़र आईडी बदलती है तो उसके साथ क्या होता है जो जर्नी के बीच में है:
DEFAULT: डिफ़ॉल्ट व्यवहार।TRACK: नई आईडी के तहत उपयोगकर्ता को ट्रैक करना जारी रखें।DROP: जब उपयोगकर्ता की आईडी बदलती है तो उसे जर्नी से हटा दें।