
Name
Each node name must be unique within the scenario. The node name is used as the identifier for:initial_node(the scenario start node)- any function
transition_totargets
initial_nodeif that node is currently the start node- any function transitions that point to that node

Role message
Role messages define the assistant’s identity and behavior rules, such as tone, boundaries, and style. Role messages are optional. When present, they are appended to context first when entering a node. JSON
Task message
Task messages define what the assistant should do in the current node right now. Task messages are required. Each node must include at least one non-empty task message. When entering a node, task messages are appended after role messages (if role messages exist). Recommended pattern:- Put long-lived persona and behavior rules in the start node role message.
- Use task messages in each node for stage-specific goals and instructions.
- Add role messages in later nodes only when you intentionally want to shift persona or policy for that stage.
Pre actions
Pre actions run when the node is entered, before the assistant response for that node. Allowed pre action types:httpend_conversation
http, the action must include endpoint_id.
JSON
http) and configure it.
Post actions
Post actions are deferred until after the bot finishes its first spoken response in that node. Allowed post action types:httpend_conversation
http, the action must include endpoint_id.
JSON
Functions
Functions are tool calls available to the assistant while the node is active. Allowed function types:transitionhttpragvision
- function name is required and must be unique within the node
- function name can only use letters, numbers, underscores, and hyphens
- function description is required
transitionrequirestransition_tohttprequiresendpoint_idragrequirescorpus_idvisionhas no additional required ID field




Respond immediately
respond_immediately controls whether the assistant speaks immediately after entering the node.
true(default): the assistant responds right awayfalse: the assistant waits for user input before responding


