XeniaXenia Docs

Node Reference

PreviousNext

Every node in the journey palette, what it takes, what it produces, and when it is the wrong choice.

A journey is made of nodes. Each one is a step a customer passes through: something starts them, something happens, something decides where they go next.

This section documents every node in the palette, grouped the way the palette groups them. If you are looking for how the canvas itself works, that is the Journey Orchestrator.

The categories

CategoryWhat its nodes do
TriggersPut a customer into the journey. Every journey starts with one.
ChannelsReach the customer: email, SMS, push, WhatsApp, in-app.
Data DriversFetch facts about the customer mid-journey, so later steps can decide on them.
LogicSplit the flow, test a condition, or let time pass.
ResponsesEnd the journey by answering the thing that started it.
Flow ControlShape the flow itself: fan out, loop, or bring paths back together.
IntegrationsWrite to an outside system: a CRM, an ad audience, a Xenia audience.
CompositionRun another journey inside this one.

How to read a node page

Every node is documented the same way.

SectionWhat it tells you
Opening linesWhat the node does, and when reaching for it is right or wrong
ConfigureEvery setting the node takes, and which of them are required to publish
OutputsThe paths leaving the node, when it has more than one
ProducesThe variables it makes available to everything downstream, as {{token}} placeholders
Watch outBehaviour that quietly produces a wrong journey if you do not know it

A node with no Outputs section has one output and continues to the next step. A node with no Produces section adds no new variables, which also means it makes no new decision possible downstream.

Variables

Variables are how one node's result reaches the next. A trigger publishes what it received, a data driver publishes what it fetched, and channel nodes consume them as {{token}} in copy, recipients, and URLs.

The properties panel lists what is available at the node you have selected. If a variable is not listed there, nothing upstream of that node on that path produces it, and no rule at that point can test it. The usual fix is to add the node that produces the fact above the node that needs it.

Why a node might not be available

A node can be in the product and still be unavailable to you right now. There are five reasons, and the palette shows which applies.

It needs a connected service. Most channel, integration, and Shopify nodes are withheld until the matching connector exists in this workspace and environment. See Connectors.

It needs another node on the canvas. Webhook Response only exists in a journey started by a Webhook trigger.

Only you can add it. Router takes its shape from connections you draw, so the Build with AI panel cannot create one.

Your workspace is billed through Shopify. Stores that installed the Shopify app see a palette narrowed to what a store needs. Nodes hidden that way are marked Not shown in Shopify-billed workspaces on their entry below.

It is not released yet. Voice Call is built and documented but is not in the palette. Existing journeys that hold one keep working.

Reusing a node's configuration

Any node's settings can be saved to the Node Library and applied to another node of the same type, which is worth doing for sender identities, API endpoints, and provider settings you would otherwise retype.