Zum Inhalt springen

Journey-Objekt

Die Methoden lifecycle, create und update geben alle ein Journey-Objekt mit der gleichen Top-Level-Struktur zurück:

Struktur
{
"info": { ... }, // schreibgeschützte Metadaten (nur Antworten)
"params": { ... }, // Journey-weite Konfiguration (erstellen / aktualisieren)
"points": [ ... ], // Canvas-Knoten und ihre Verbindungen
"comments": [ ... ] // Canvas-Kommentare
}

Wenn Sie eine Journey erstellen oder aktualisieren, senden Sie title, params, points und comments. Antworten geben info (welches params enthält) sowie points und comments zurück.

Schreibgeschützte Journey-Metadaten. Wird von jeder v3-Methode zurückgegeben. Nicht Teil des Anfragekörpers.

FeldTypBeschreibung
uuidstringJourney-ID.
titlestringJourney-Name.
statusJourneyStatusAktueller Zustand.
created_atstringErstellungszeitstempel (ISO 8601).
updated_atstringLetzter Aktualisierungszeitstempel (ISO 8601).
is_first_activatedboolGibt an, ob die Journey mindestens einmal gestartet wurde.
paramsJourneyParamsJourney-weite Konfiguration.
category_uuidstringUUID der Kategorie oder leer, wenn nicht kategorisiert.
pointCountsmap<string, uint32>Anzahl der Points nach Typ.
campaign_typeCampaignTypeWie Benutzer in die Journey eintreten.
stop_reasonstringGrund für den Stopp der Journey, falls zutreffend.
last_edited_byUserBenutzer, der die Journey zuletzt bearbeitet hat.
dynamic_entryboolGibt an, ob der dynamische Eintritt aktiviert ist.

JourneyParams

Anchor link to

Journey-weite Konfiguration. Wird beim Erstellen/Aktualisieren gesendet und innerhalb von info.params zurückgegeben.

FeldTypBeschreibung
application_codestringApplication Code, zu dem die Journey gehört. Erforderlich bei der Erstellung.
silent_hoursSilentHoursStunden, in denen Nachrichten unterdrückt werden, pro Kanal.
cappingEntryCappingBegrenzungen, wie oft ein Benutzer erneut in die Journey eintreten kann.
conversion_windowConversionWindowZeitfenster für die Zuordnung von Ziel-Conversions.
user_id_track_change_policyUserIDTrackChangePolicyWie mit der ID eines Benutzers umgegangen wird, die sich mitten in der Journey ändert.

SilentHours

Anchor link to

Unterdrückt das Senden während der Ruhezeiten. Konfiguriert pro Kanal: Jeder Kanal verwendet seine eigenen SilentHoursParams:

FeldTypBeschreibung
push_paramsSilentHoursParamsRuhezeiten für Push-Benachrichtigungen.
inapp_paramsSilentHoursParamsRuhezeiten für In-App-Nachrichten.
email_paramsSilentHoursParamsRuhezeiten für E-Mails.
sms_paramsSilentHoursParamsRuhezeiten für SMS.
whatsapp_paramsSilentHoursParamsRuhezeiten für WhatsApp.
line_paramsSilentHoursParamsRuhezeiten für LINE.

Jeder SilentHoursParams ist:

FeldTypBeschreibung
enabledboolGibt an, ob Ruhezeiten für diesen Kanal gelten.
from_timeTimeBeginn des Ruhefensters: { "hour": 0–23, "minute": 0–59 }.
to_timeTimeEnde des Ruhefensters.
week_daysbool[]Sieben boolesche Werte für die Tage, an denen das Fenster gilt (Montag = Index 0).
behaviorenumWas zu tun ist, wenn eine Nachricht in die Ruhezeiten fällt: WaitAndSend (zurückhalten, dann senden, wenn das Fenster endet), DropAndGo (die Nachricht überspringen, die Journey sofort fortsetzen) oder WaitAndDrop (das Fenster abwarten, dann fortfahren, ohne zu senden).

EntryCapping

Anchor link to

Begrenzt, wie oft derselbe Benutzer in die Journey eintreten kann.

FeldTypBeschreibung
is_enabledboolGibt an, ob das Entry Capping aktiviert ist.
perioduint64Mindestanzahl an Minuten zwischen den Eintritten eines Benutzers. 0 bedeutet, dass der Benutzer nur einmal im Leben eintreten kann.

Das Limit wird ab dem Moment gezählt, in dem der Benutzer die Journey betreten hat, und es wird pro User ID verfolgt, sodass alle Geräte eines Benutzers einen einzigen Eintritt teilen. Während der Periode andauert, lehnt der Eintrittspunkt weitere Eintrittsversuche ab und zählt sie als Fehler, anstatt einen Traveler zu erstellen.

Drei Verhaltensweisen, die Sie bei der Änderung dieser Einstellungen berücksichtigen sollten:

  • Das vorzeitige Verlassen der Journey hebt das Limit nicht auf. Der Benutzer wartet die volle Periode ab, auch nachdem er einen Austrittspunkt erreicht hat.
  • Eine geänderte period gilt für Eintritte, die nach der Aktualisierung erfolgen. Benutzer, die früher eingetreten sind, behalten die Periode, die bei ihrem Eintritt in Kraft war.
  • Das Setzen von is_enabled auf false hebt das Limit für jeden Benutzer sofort auf.

ConversionWindow

Anchor link to
FeldTypBeschreibung
secondsuint64Wie lange nach dem Eintritt in eine Journey der Abschluss eines Ziels durch einen Benutzer noch als Conversion zählt.

Ein Point ist ein Knoten auf dem Journey-Canvas: ein Eintrittspunkt, eine Nachricht, eine Verzögerung, ein Splitter und so weiter.

FeldTypBeschreibung
uuidstringEindeutige ID des Points innerhalb der Journey. Muss eine kanonische RFC 4122 UUID sein: 32 Hex-Ziffern in 8-4-4-4-12 Gruppen.
titlestringAnzeigename des Points.
point_typePointTypeDie Art des Knotens.
outputsarray of PointOutputVerbindungen zu nachgelagerten Points.
positionPositionCanvas-Koordinaten.
point_dataobjectGenau ein verschachtelter Schlüssel, der mit point_type übereinstimmt (siehe die Tabelle Point-Typen und point_data).

PointOutput

Anchor link to

Die Ausgaben eines Points sind seine ausgehenden Zweige. Ihre Schlüssel sind nicht frei wählbar. Der Validator erwartet für jeden Point-Typ einen exakten Satz von Schlüsseln und lehnt eine Journey ab, deren Point die falsche Anzahl von Ausgaben oder einen nicht erkannten Schlüssel hat.

FeldTypBeschreibung
identity.keystringZweig-Schlüssel. Muss den unten stehenden Regeln für Ausgabeschlüssel folgen.
identity.orderintAnzeigereihenfolge des Zweigs.
info.titlestringOptionales Zweig-Label.
info.next_point_uuidstringUUID des nächsten Points, mit dem dieser Zweig verbunden ist. Optional — das Weglassen beendet die Journey für den Benutzer, genauso wie ein expliziter Terminator-Point.

Ausgabeschlüssel

Anchor link to

Der Standardzweig (der erste) heißt immer "default". Zusätzliche Zweige heißen "output1", "output2", … (das Präfix output gefolgt von einem 1-basierten Index). Zwei Point-Typen brechen diese Regel, wie unten vermerkt.

Point-TypErwartete Ausgabeschlüssel
Eintrittspunkte (START_BY_SEGMENT, START_BY_API, EVENT), INAPP, SET_TAGS, WEBHOOK, AUDIENCE_SYNC und Nachrichtenpunkte ohne Splitter (SEND_PUSH, SEND_EMAIL, SEND_SMS, SEND_WHATSAPP, SEND_LINE, SEND_KAKAO, SEND_TELEGRAM, SEND_DATA)default
GOAL_EVENT, EXITkeine (keine Ausgaben)
FILTERdefault, output1
BOOLEAN_SPLITTERdefault, dann output1 … outputN (ein zusätzlicher Zweig pro Bedingung. Eine einfache Ja/Nein-Aufteilung ist default + output1)
WAIT (Verzögerung)default. Eine dynamische Verzögerung mit Zweigaufteilung fügt output1 hinzu
WAIT_EVENTdefault ist der Zweig für nicht ausgelöste Ereignisse. output1 (oder, mit einem Bedingungsskript, ein Zweig pro Bedingung) ist der ausgelöste Pfad
SEND_PUSH mit einem Splitterdefault, output1 (und output2, wenn sowohl der Nachrichten- als auch der Zustellungs-Splitter aktiviert sind)
SEND_EMAIL / SEND_SMS / SEND_LINE / SEND_WHATSAPP mit einem Splitterdefault, output1
SEND_WHATSAPP mit einer Schnellantwort-Voreinstellungdefault, plus ein Zweig pro Schnellantwort. Der Schlüssel ist der Wert der Schnellantwort selbst
AB_SPLITTERoutput0, output1, output2, … (einer pro Variante. Es gibt keinen default-Zweig)
FeldTypBeschreibung
xfloatHorizontale Koordinate auf dem Canvas.
yfloatVertikale Koordinate auf dem Canvas.

Point-Typen und point_data

Anchor link to

point_data ist ein One-of: Es enthält genau ein verschachteltes Objekt, dessen Schlüssel durch den point_type des Points bestimmt wird.

point_typepoint_data-SchlüsselZweck
POINT_TYPE_START_BY_SEGMENTstart_by_segmentEintritt: Benutzer, die einem Segment entsprechen.
POINT_TYPE_EVENTmessage_busEintritt: Benutzer, die ein Ereignis auslösen.
POINT_TYPE_START_BY_APIstart_by_apiEintritt: Benutzer, die über den Start by API-Aufruf injiziert werden.
POINT_TYPE_WAITdelayWarten für ein festes oder dynamisches Intervall.
POINT_TYPE_WAIT_EVENTwait_eventWarten, bis ein Ereignis eintritt.
POINT_TYPE_SEND_PUSHsend_pushEine Push-Benachrichtigung senden.
POINT_TYPE_SEND_EMAILsend_emailEine E-Mail senden.
POINT_TYPE_SEND_SMSsend_smsEine SMS senden.
POINT_TYPE_SEND_WHATSAPPsend_whatsappEine WhatsApp-Nachricht senden.
POINT_TYPE_SEND_TELEGRAMsend_telegramEine Telegram-Nachricht senden.
POINT_TYPE_SEND_KAKAOsend_kakaoEine Kakao-Nachricht senden.
POINT_TYPE_SEND_LINEsend_lineEine LINE-Nachricht senden.
POINT_TYPE_SEND_DATAsend_dataEine stille Datennachricht senden.
POINT_TYPE_INAPPinappEine In-App-Nachricht anzeigen.
POINT_TYPE_BOOLEAN_SPLITTERboolean_splitterBenutzer nach einer Bedingung aufteilen (Segment, Tags oder Ereignis).
POINT_TYPE_AB_SPLITTERab_splitterBenutzer in A/B-Gruppen aufteilen.
POINT_TYPE_FILTERfilterNur Benutzern, die einem Filter entsprechen, das Fortfahren erlauben.
POINT_TYPE_SET_TAGSset_tagsBenutzer-Tags aktualisieren.
POINT_TYPE_WEBHOOKweb_hookEine ausgehende HTTP-Anfrage senden.
POINT_TYPE_GOAL_EVENTgoal_eventEin Conversion-Ziel verfolgen.
POINT_TYPE_AUDIENCE_SYNCaudience_syncBenutzer mit einer externen Audience synchronisieren.
POINT_TYPE_EXITterminatorDie Journey verlassen.

Beispiel-Point

Anchor link to

Ein “Tags setzen”-Point mit einer einzigen nachgelagerten Verbindung:

{
"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
FeldTypBeschreibung
idstringKommentar-UUID.
messagestringKommentartext.
positionPositionCanvas-Koordinaten.
indexintAnzeigereihenfolge.
created_atstringErstellungszeitstempel (ISO 8601).
deletedboolGibt an, ob der Kommentar gelöscht ist.

JourneyStatus-Enum

Anchor link to

STATUS_DRAFT, STATUS_RUNNING, STATUS_FINISHED, STATUS_ARCHIVED, STATUS_PAUSED, STATUS_UNKNOWN.

CampaignType-Enum

Anchor link to
  • TriggerBased: Benutzer treten bei einem Ereignis ein.
  • AudienceBased: Benutzer treten aus einem Segment ein.
  • APIBased: Benutzer treten über den Start by API-Aufruf ein.
  • Mixed: mehr als ein Eintrittstyp.
  • Unknown: Eintrittstyp nicht bestimmt.

PointType-Enum

Anchor link to

Siehe die Tabelle Point-Typen oben für die vollständige Liste und den point_data-Schlüssel, dem jeder zugeordnet ist.

UserIDTrackChangePolicy-Enum

Anchor link to

Steuert, was mit einem Benutzer geschieht, der sich mitten in einer Journey befindet, wenn sich seine User ID ändert:

  • DEFAULT: Standardverhalten.
  • TRACK: den Benutzer unter der neuen ID weiterverfolgen.
  • DROP: den Benutzer aus der Journey entfernen, wenn sich seine ID ändert.

Verwandte Themen

Anchor link to