Zum Inhalt springen

Journey-Objekt

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

Struktur
{
"info": { ... }, // schreibgeschützte Metadaten (nur in 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 Request-Bodys.

FeldTypBeschreibung
uuidstringJourney-ID.
titlestringName der Journey.
statusJourneyStatusAktueller Status.
created_atstringErstellungszeitstempel (ISO 8601).
updated_atstringZeitstempel der letzten Aktualisierung (ISO 8601).
is_first_activatedboolOb 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_entryboolOb 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_codestringAnwendungscode, zu dem die Journey gehört. Erforderlich beim Erstellen.
silent_hoursSilentHoursStunden, in denen Nachrichten pro Kanal unterdrückt werden.
cappingEntryCappingBegrenzungen, wie oft ein Benutzer erneut in die Journey eintreten kann.
conversion_windowConversionWindowFenster zur Zuordnung von Ziel-Conversions.
user_id_track_change_policyUserIDTrackChangePolicyWie mit der Änderung der ID eines Benutzers mitten in der Journey umgegangen wird.

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
enabledboolOb Ruhezeiten für diesen Kanal gelten.
from_timeTimeBeginn des Ruhezeitfensters: { "hour": 0–23, "minute": 0–59 }.
to_timeTimeEnde des Ruhezeitfensters.
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 Ruhezeit fällt: WaitAndSend (anhalten, dann senden, wenn das Fenster endet), DropAndGo (Nachricht überspringen, 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_enabledboolOb die Eintrittsbegrenzung aktiviert ist.
perioduint64Minimale Anzahl von Sekunden zwischen den Eintritten eines Benutzers.

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 Tabelle der Point-Typen).

PointOutput

Anchor link to

Die Outputs 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 Outputs oder einen nicht erkannten Schlüssel hat.

FeldTypBeschreibung
identity.keystringSchlüssel des Zweiges. Muss den nachstehenden Regeln für Output-Schlüssel folgen.
identity.orderintAnzeigereihenfolge des Zweiges.
info.titlestringOptionale Bezeichnung des Zweiges.
info.next_point_uuidstringUUID des nächsten Points, mit dem dieser Zweig verbunden ist.

Output-Schlü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 Output-Schlü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 Outputs)
FILTERdefault, output1
BOOLEAN_SPLITTERdefault, dann output1outputN (ein zusätzlicher Zweig pro Bedingung. Ein einfacher Ja/Nein-Split 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östes Ereignis. 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 eingefügt 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 “Set Tags”-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).
deletedboolOb 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 der Point-Typen oben für die vollständige Liste und den point_data-Schlüssel, dem jeder Typ zugeordnet ist.

UserIDTrackChangePolicy enum

Anchor link to

Steuert, was mit einem Benutzer passiert, der sich mitten in einer Journey befindet, wenn sich seine Benutzer-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