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.
Every node is documented the same way.
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 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.
Webhook, Event Trigger, API Request, and Klaviyo Data all read arbitrary payloads, and each asks you to declare the fields you intend to use. Undeclared fields arrive and are ignored: they are not testable, and they are not available as tokens.
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.
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.