🔧Configure each bot node
This page explains how to configure every node type in the Workflow Builder. Click a node on the canvas to open the right sidebar; the fields you see there are described below. The labels and options match the configuration panels you see when you click a node in the Workflow Builder. For an overview of the builder and how to connect nodes, see Workflow Builder (deep dive).
Triggers
Start Trigger
What it does: Entry point when a new conversation begins. Every flow has one.
Configuration: None. Connect the Start node to the first message or step (e.g. a Send Message or Options Menu).
Tips: Don’t add a second Start unless you’re building a separate flow. The flow runs from Start → next node → … until it hits a Break, Transfer to Agent, or Switch Bots.
Webhook Trigger
What it does: Starts the flow when an external system calls a webhook URL (e.g. CRM, order system, calendar).
Configuration:
Webhook path
URL path for the webhook endpoint (e.g. /webhook/order-created). The full URL is shown in the builder or in your channel settings; use it in your external system to send POST/GET requests.
Tips: After you add the node, copy the webhook URL and register it in your CRM, Zapier, or other tool. Connect the Webhook Trigger to the next node (e.g. Send Message or HTTP Request) that should run when the webhook is called.
Trigger Word (Keyword Trigger)
What it does: When the user sends a message that matches certain keywords, the flow can jump to a node, send a message, set a custom field, switch to another bot, or end the conversation. Useful for "stop", "agent", or menu shortcuts. Keyword triggers are always global and checked before any message processing.
Configuration (from the right sidebar):
Trigger Name
Short name for this trigger (e.g. "Keyword Trigger").
Trigger Keywords
Type each keyword and press Enter to add it. Quick-add buttons: help, cancel, stop, menu. Keywords are stored in lowercase.
Match Type
Contains (anywhere in message); Exact Match (full message); Starts With; Ends With; Regular Expression.
When Triggered, Do:
Go to Node — choose Target Node from the dropdown (connect an edge to that node); Send Message — Message to Send; Set Field — Field Key (e.g. customFields.myField) and Field Value; Switch Bot — Target Bot ID; Close Chat — Close Reason: User Requested, Completed, Cancelled.
Options
Case sensitive matching; Interrupt current flow when triggered; Global trigger (always active) — always on for keyword triggers; Continue flow after action — after the action, continue processing the message normally; Priority — High (checked first), Normal, Low (checked last).
Tips: Use priority to control which trigger runs when several could match. For "Go to Node", connect an edge from the Trigger Word node to the target node; the sidebar shows "Connected to: [node name]".
Logic & flow
Condition (If/Else)
What it does: Splits the flow based on a condition (e.g. "if variable X equals Y"). Conditions are created automatically when you connect edges from this node to target nodes; each connection gets one condition row. One condition can be Set as default fallback (if no other condition matches).
Configuration:
Condition Name
A short name for this node (e.g. "Check budget").
Compare Input Against
User Input (Last Message) — compare against the user's last message; Custom Field — compare a stored variable; Conversation State — compare conversation state.
Custom Field Key
Shown only when Compare Input is Custom Field. The key to read (e.g. user_choice, selected_option).
Conditions
One row per connected target: Operator (Equals, Not Equals, Contains, Does Not Contain, Starts With, Ends With, Greater Than, Less Than, Greater Than or Equal, Less Than or Equal, Matches Regex, Is Empty, Is Not Empty, Is Number, Is Email), Value to compare (not shown for Is Empty, Is Not Empty, Is Number, Is Email), Then go to (target node). Toggle Set as default fallback on one condition for "If no match, go to".
Execution Options
Case sensitive comparison; Trim whitespace before comparing (default on).
Tips: Connect edges from this node to the nodes you want to branch to; conditions are created for each connection. Use Set Variable or JavaScript before the Condition if you need to store a user answer or computed value first.
Time Delay
What it does: Pauses the flow for a set time (seconds, minutes, or hours), then continues to the next node. Useful for simulating human-like response times, scheduling follow-ups, or timed sequences.
Configuration (from the right sidebar):
Node Name
Label for this node (e.g. "Time Delay").
Quick Select
One-click presets: 5 sec, 30 sec, 1 min, 5 min, 15 min, 1 hour, 24 hours.
Custom Delay
Number (1–999) + unit: Seconds, Minutes, Hours, Days.
Delay Type
Fixed Delay; Random (between min/max); Scheduled Time.
Random Range
Shown when Delay Type is Random: Min and Max (e.g. 1 to 60).
Execute At
Shown when Delay Type is Scheduled: time picker (e.g. 09:00).
Options
Show typing indicator during delay; Cancel delay if user sends message; Auto-execute next node after delay (default on).
Tips: Use short delays (e.g. 2–5 seconds) between messages to simulate typing. Use longer delays for follow-ups (e.g. “We’ll message you in 2 hours”).
Loop
What it does: Jumps to another node in the flow (back to a previous step or forward to any node). Used for “back to main menu” or “try again”.
Configuration:
Node Name
Label for this node (e.g. "Loop").
Loop Type
Go to Node (Jump); Repeat Current Node; Restart from Beginning; Iterate Over Array.
Target Node ID
Shown when Loop Type is Go to Node. The node ID to jump to.
Array Source
Shown for Iterate Over Array. Path to the array (e.g. customFields.items).
Current Item Variable / Index Variable
Shown for Iterate. Variable names for current element and index (defaults currentItem, currentIndex).
Loop Limit
Max iterations (1–100). Prevents infinite loops.
Exit Condition (Optional)
No Exit Condition; When Field Equals Value (Field to Check, Exit When Equals); When Field Exists (Field to Check); When User Says Keyword (Exit Keywords, comma-separated e.g. "exit, stop, done").
Options
Track iteration count in customFields; Reset counter on re-entry.
Tips: Set a reasonable Loop Limit and consider an Exit Condition to avoid infinite execution. Use a Condition or Break somewhere in the loop to allow an exit.
Break
What it does: Ends the conversation flow. Optionally sends a final message before ending.
Configuration:
Node Name
Label (e.g. "End Conversation").
Close Reason
Completed Successfully; User Requested; Session Timeout; Error Occurred; Transferred to Agent; Custom Reason.
Custom Close Reason
Shown when Close Reason is Custom Reason. Free text.
Farewell Message (Optional)
Message to send before closing.
Options
Send farewell message; Save conversation transcript; Allow user to reopen conversation; Trigger webhook on close.
Webhook URL
Shown when Trigger webhook is On. URL to call when the conversation closes.
Tips: Connect the last meaningful step (e.g. a Send Message or “We’re done” path) to the Break so the flow has a clear end.
Switch Bots
What it does: Transfers the conversation to a different bot (e.g. Sales bot, Support bot). The current flow stops and the other bot’s flow takes over.
Configuration:
Node Name
Label (e.g. "Switch Bot").
Select Target Bot
Dropdown of your bots (loaded from the app).
Handoff Message (Optional)
Message to send before switching.
Start At Node (Optional)
Node ID in the target bot to start from; leave empty to start from the beginning.
Options
Preserve conversation context; Preserve custom fields; Send handoff message; Log bot switch in analytics.
Tips: Use for department handoff (e.g. “Support” vs “Sales”) or language-specific bots. The target bot must exist and be Active.
Actions (sending content)
Send Message
What it does: Sends a text message to the user. You can use variables (e.g. {{contact.firstName}}) in the text. Optionally wait for a reply or auto-execute the next node.
Configuration (from the right sidebar):
Action Name
Short name for this step (e.g. "Welcome message").
Template
(Optional) Select a template: Order_VIP_Welcome, Order_Confirmation, Shipping_Update, or "Select a template" (empty).
Message
The text to send. Character count shown. Type {{ to open the variable picker (contact fields, custom fields, etc.). Placeholder: "Type your message... (type {{ for variables)".
Execution Options
Wait for user response (Prompt) — flow waits for reply before continuing; Auto-execute next node — continue immediately.
Execution Delay
(Optional) Number + unit (Minutes, Hours, Days) to delay sending (default 0).
Tips: Keep messages short and clear. Use variables for personalization (e.g. “Hi {{contact.firstName}}!”). For buttons or choices, use an Options Menu node after the message.
Send Voice Message
What it does: Sends an audio/voice message to the user (e.g. pre-recorded greeting or explanation).
Configuration:
Audio URL
A public URL to the audio file (e.g. MP3, OGG). The channel must support voice messages.
Transcription
(Optional) Text transcription of the audio for accessibility or fallback display.
Tips: Use a stable, public URL. Some channels have limits on duration or file size.
Send Email
What it does: Sends an email to the user outside the chat (e.g. confirmation, receipt, PDF). The “To” address usually comes from contact data or a variable.
Configuration:
Subject
Email subject line. You can use variables (e.g. Order {{order_id}} confirmed).
Body
Email body (plain text or HTML, depending on what the builder supports). Variables are supported.
To
Recipient email. Usually a variable (e.g. {{contact.email}}) or a field from the conversation.
Tips: Ensure your account has Email channel or email-sending set up. Use a clear subject so the email isn’t missed or marked spam.
Send SMS
What it does: Sends an SMS to the user’s phone (e.g. reminder, verification code). Often used when the main conversation is on another channel.
Configuration:
Message
SMS text. Variables allowed. Longer messages are sent as multiple segments.
To
Phone number. Usually a variable (e.g. {{contact.phone}}) in E.164 format (e.g. +1234567890).
Tips: SMS has character limits and cost per message. Use for short, important notifications. Ensure the SMS channel (or equivalent) is connected for your account.
Options Menu
What it does: Shows the user a set of clickable options (buttons or list). Each option can be connected to a different next node (e.g. “Sales” → one message, “Support” → another).
Configuration (from the right sidebar):
Menu Title
The title for this menu (e.g. "Main menu").
Question / Message
The question or prompt above the options (e.g. "What can I help you with?").
Display Type
How options appear (platform limits in UI): Reply Buttons (max 3; WhatsApp, Messenger, Instagram); Quick Replies (max 13; Messenger, Instagram); List Menu (max 10; WhatsApp); Text List (numbered; all platforms); Generic Template (cards with image & buttons; Messenger, Instagram); Button Template (max 3; Messenger, Instagram); Catalog (WhatsApp); Single Product (WhatsApp); Product List (max 30; WhatsApp).
Options
For each option: Label, Operator (Equals, Contains, Starts With, Number Equals), Match value, Then go to (target node). One can be Set as default fallback. Options are created when you connect edges to target nodes.
Execution Options
(If shown) Wait for user response; Case sensitive matching.
Tips: Keep option labels short. Connect each option’s output handle to the correct next node (Message, Condition, or another flow). Use 3–5 options for a main menu so it’s not overwhelming.
Code & integrations
Calendly
What it does: Integrates Calendly so users can check availability, list your event types, or create, reschedule, or cancel bookings from the conversation. Connect your Calendly account once per workspace; all Calendly nodes in the same bot use that connection.
Configuration (from the right sidebar):
Connect
If not connected: click Authenticate with Calendly to sign in (OAuth). Done once per workspace.
Node name
Label (e.g. "Book a meeting").
Action
Check availability; List event types; Create booking (schedule event); Reschedule event; Cancel event.
Event type
(When needed) Select the Calendly event type from the dropdown (loaded from your account).
Variable mapping
Map Name, Email, Start time, Timezone, Notes to variables (e.g. {{client.name}}, {{client.email}}, {{customFields.selected_time}}). For reschedule/cancel, set Event or invitee URI (e.g. {{customFields.calendlyResult.inviteeUri}}).
Output field
Where to store the result (default: calendlyResult). Use in the next node (e.g. a Send Message with {{customFields.calendlyResult}}).
Continue on error
If on, the flow continues and the error is stored in the output field; you can branch with a Condition.
Connecting Calendly: When you click Authenticate with Calendly, you sign in with Calendly (OAuth). After you authorize, you are redirected back to the Workflow Builder (or the page you started from). If something goes wrong (e.g. invalid or expired authorization), you are still redirected back to the app with an error message so you can try again.
Tips: Use Create booking after collecting name, email, and a chosen time (e.g. from Options or a previous step). The result includes inviteeUri, eventUri, and status so you can send a confirmation message. For Reschedule or Cancel, pass the invitee or event URI from a previous Calendly result.
Zapier
What it does: Sends data outbound to a Zapier webhook (e.g. when a user completes a step) or waits for inbound data from Zapier (e.g. when a Zap runs and POSTs back to OnRaven). Use it to connect your bot to 5,000+ apps (CRM, sheets, email, etc.) without writing code.
Configuration (from the right sidebar):
Node name
Label (e.g. "Send to Zapier").
Mode
Outbound — send a payload to a Zapier webhook when the flow reaches this node. Inbound — pause and wait for Zapier (or another system) to POST to your webhook URL; then continue with the received data.
Webhook
(Outbound) Select the Zapier webhook you created in Integrations → Zapier. The payload will be sent to that webhook URL.
Payload fields
(Outbound) Key/value pairs to send. For each: Key (e.g. contact_name, order_id), Value source — use variables like {{client.name}}, {{customFields.selected_option}}.
Output field
Where to store the webhook response (default zapierResult). Use in the next node (e.g. {{customFields.zapierResult}}).
Continue on error
If on, the flow continues even if the webhook call fails; the error is stored in the output field.
Wait for inbound
(Inbound) When on, the flow pauses until data is received at the webhook URL.
Tips: Create your webhook in Integrations → Zapier first, then select it in the node. For outbound, map conversation/contact data into payload fields so your Zap has context. For inbound, use the webhook URL shown in the node or in Zapier settings; when Zapier POSTs, the flow resumes with that data in custom fields. See Zapier & Make for setup and recipe examples.
Make (Integromat)
What it does: Same idea as Zapier — outbound sends data to a Make webhook when the flow reaches the node; inbound waits for Make (or any HTTP client) to POST to your OnRaven webhook so the flow can continue with the received data. Use it to connect your bot to Make scenarios and hundreds of apps.
Configuration (from the right sidebar):
Node name
Label (e.g. "Send to Make").
Mode
Outbound — send a payload to a Make webhook. Inbound — wait for a webhook call before continuing.
Webhook
(Outbound) Select the Make webhook you created in Integrations → Make.
Payload fields
(Outbound) Key/value pairs; use variables (e.g. {{client.email}}, {{customFields.answer}}).
Output field
Where to store the response (default makeResult).
Continue on error
If on, the flow continues on webhook failure.
Wait for inbound
(Inbound) Pause until the webhook receives data.
Tips: Create the webhook in Integrations → Make first. You can run Automation rules when data arrives (e.g. create contact, create lead, add to audience, send message). See Zapier & Make for recipes.
OpenTable
What it does: Integrates OpenTable so users can check availability and make, modify, or cancel restaurant reservations from the conversation. Connect OpenTable once per workspace (OAuth); all OpenTable nodes use that connection.
Configuration (from the right sidebar):
Node name
Label (e.g. "Check availability").
Action
Check availability; Make reservation; Modify reservation; Cancel reservation.
Date / Time / Party size
Use variables (e.g. {{customFields.selected_date}}, {{customFields.party_size}}). Format: date YYYY-MM-DD, time HH:mm.
Guest name / email / phone
(Make reservation) Variables like {{client.name}}, {{client.email}}.
Special requests
(Optional) Free text or variable.
Reservation ID
(Modify/Cancel) Variable from a previous OpenTable result (e.g. {{customFields.opentable_result.reservationId}}).
Output field
Where to store the result (default opentable_result).
Continue on error
If on, the flow continues and the error is stored in the output field.
Tips: Collect date, time, party size, and guest details in earlier nodes (e.g. Options or Send Message + user reply), then pass them into the OpenTable node. Use Check availability first, then Make reservation with the chosen slot. Store the result and use it in a confirmation message or for Modify/Cancel later.
HTTP Request
What it does: Calls an external API (GET, POST, PUT, DELETE) to fetch or send data. You can use variables in the URL, headers, and body. Response data can be saved into variables.
Configuration (from the right sidebar):
Node Name
Label (e.g. "HTTP Request").
Request URL
The API endpoint. Use {{variable}} for dynamic parts (e.g. https://api.example.com/{{customFields.endpoint}}).
Method
GET, POST, PUT, DELETE.
Headers
Key/value pairs (e.g. Header name, Header value). Add as many as needed.
Content Type
application/json (default) or other.
Request Body
For POST/PUT, the body (JSON or other). Variables allowed.
Save Response Data
Output fields: JSON path (e.g. data.results[0].value) and Variable name to store the result.
Request Options
Timeout (ms), etc. Use Test tab to try the request with test variable values.
Tips: Store API keys in environment or secrets if the builder supports it; don’t hardcode them in the flow. Use the response in a Condition or Set Variable if you need to branch or save data.
JavaScript
What it does: Runs custom JavaScript in the flow (e.g. calculations, formatting, validation). The result can be stored in a variable.
Configuration:
Node Name
Label for this node (e.g. "JavaScript").
JavaScript Code
The code to run. Context (e.g. contact, customFields) per builder docs.
Output Fields (Save to customFields)
Variable names (e.g. totalPrice, formattedDate). Code returns an object; properties saved to these custom fields. Add/remove as needed.
Execution Options
Toggles. Timeout (ms) (default 5000).
Tips: Keep code short and safe. Avoid side effects (e.g. network calls) unless the builder allows it. Use for logic that’s easier in code than with many Condition nodes.
Set Variable
What it does: In the app, the Set Variable node uses the default configuration panel: Node Name and Description. Use it to label the step; actual variable assignment is often done via JavaScript (return an object) or by saving HTTP Request or Options outputs. Use Description to note what variable(s) this step sets.
Tips: Set variables after user input (e.g. after Options or a message that waits for response) so you can branch with Condition or personalize with Send Message. Variables are usually available as customFields.variableName or in the variable picker.
Human handoff
Transfer to Agent
What it does: Hands the conversation to a human agent in the Inbox. The flow stops and the conversation appears for an agent to reply.
Configuration:
Node Name
Label (e.g. "Transfer to Agent").
Handoff Message
Message shown to the user when the transfer happens.
Priority
Low, Medium, High, or Urgent.
Department (Optional)
Route to a department (e.g. Sales, Support, Billing).
Options
Send handoff message to customer; Block bot until agent responds; Send notification to available agents; Include conversation transcript.
Handoff Reason (for agents)
Internal note explaining why this was transferred.
Tips: Always set a friendly handoff message. Use priority and department so the right team picks up the conversation.
AI & knowledge
Knowledge Base
What it does: Searches your uploaded documents and FAQ for an answer and can reply with the best match (if your account has this feature).
Configuration:
Knowledge Base
Dropdown: AI Agent Knowledge Bases (per-agent, with doc count) or Standalone Knowledge Bases (e.g. Customer Support KB, Product Information KB, FAQ KB).
Search Query
Query to run. Can use variables.
Max Results
Number 1–10 (default 5).
Confidence Threshold
Slider 0–100% (default 70%). Minimum score for an answer to be used.
Execution Options
Wait for user response (Prompt); Auto-execute next node.
Tips: Use for product docs, FAQs, and policies. Connect the "answer found" output to a Send Message or AI Response, and the "not found" output to a fallback or Transfer to Agent.
AI Response
What it does: Uses an AI agent to generate a reply (open-ended answers, personalized text). Optionally can run in “autopilot” for longer conversations.
Configuration:
Node Name
Label for this node (e.g. "AI Response").
Select AI Agent *
The AI agent to use (dropdown). Required.
Conversation Settings
Max History Messages (default 10).
Fallback Message
Message to show if the AI fails or errors.
Max Conversation Turns (Optional)
When using autopilot, max turns before continuing.
Keyword Actions
(Optional) Keywords that trigger actions.
System Prompt Override
(Optional) Override the agent default system prompt for this node.
Store Response In Field
Custom field name to store the AI reply.
Execution Options
Toggles for wait/auto-execute, etc.
Tips: Write a clear system prompt so the AI stays on brand and on task. Use autopilot for open-ended support; use it Off when you want to control the next step (e.g. then show an Options Menu).
MCP Tool
What it does: Calls an external tool via the Model Context Protocol (e.g. Google Calendar, HubSpot, Salesforce) to create events, fetch data, or update systems.
Configuration:
Node Name
Label for this node (e.g. "MCP Tool").
Select MCP Server *
The MCP server (dropdown of active servers; shows tool count). Required.
Select Tool *
The specific tool (dropdown; name and description). Required.
Input Mapping
For each tool parameter: value using {{customFields.fieldName}} or static. View/Hide Schema shows input JSON schema.
Store Result In Field
Custom field for the tool output (e.g. mcpResult, calendarEventId).
Error Handling
Continue on error. Error Fallback Message when on: message to send if the tool fails.
Tips: Ensure the MCP server and tool are set up and connected in your account. Use Set Variable or Condition after the MCP node to branch or message based on the result.
Quick reference table
Start Trigger
None
Webhook Trigger
Webhook path
Trigger Word
Trigger Name, Trigger Keywords, Match Type, When Triggered Do (goto/send/set field/switch bot/end), Options, Priority
Condition
Condition Name, Compare Input Against, Custom Field Key, Conditions (operator, value, Then go to, default fallback), Execution Options
Time Delay
Node Name, Quick Select, Custom Delay, Delay Type, Random Range / Execute At, Options (typing, cancel on message, auto-execute)
Loop
Node Name, Loop Type, Target Node ID, Array Source, Item/Index variables, Loop Limit, Exit Condition, Options
Break
Node Name, Close Reason, Custom Close Reason, Farewell Message, Options, Webhook URL
Switch Bots
Node Name, Select Target Bot, Handoff Message, Start At Node, Options
Send Message
Action Name, Template, Message, Execution Options, Execution Delay
Options Menu
Menu Title, Question/Message, Display Type, Options (label, operator, value, Then go to, default fallback), Execution Options
HTTP Request
Node Name, Request URL, Method, Headers, Content Type, Body, Save Response Data, Timeout
JavaScript
Node Name, JavaScript Code, Output Fields
Set Variable
Node Name, Description (default panel)
Transfer to Agent
Node Name, Handoff Message, Priority, Department, Options, Handoff Reason
Knowledge Base
Knowledge Base, Search Query, Max Results, Confidence Threshold, Execution Options
AI Response
Node Name, Select AI Agent, Conversation Settings, Fallback, Autopilot, Keyword Actions, System Prompt Override, Store Response, Execution Options
MCP Tool
Node Name, Select MCP Server, Select Tool, Input mapping, Store Result In Field, Error Handling
Calendly
Connect (Authenticate with Calendly), Node name, Action, Event type, Variable mapping, Output field, Continue on error
Zapier
Node name, Mode (outbound/inbound), Webhook, Payload fields, Output field, Continue on error, Wait for inbound
Make
Node name, Mode (outbound/inbound), Webhook, Payload fields, Output field, Continue on error, Wait for inbound
OpenTable
Node name, Action (availability/reservation/modify/cancel), Date/Time/Party size, Guest fields, Reservation ID, Output field, Continue on error
Node types and data format (backend / AI reference)
The following matches the flow schema used by the backend and AI flow generation (e.g. when generating or validating flows programmatically). Use this as a reference for node type names and the shape of each node’s data in the flow JSON.
Node types (backend):
bot_start
Entry point (required, exactly one per flow).
message
Send text message to user.
options
Present choices to user with buttons.
condition
Branch based on conditions (true/false outputs).
time_delay
Wait before next action (delayMinutes in config).
http_request
Make external API call.
javascript
Execute custom code.
ai_agent
Use AI to generate response.
agent
Escalate to human agent.
break
End flow path.
Flow structure: A flow is represented as { nodes: [...], edges: [...] }. Each node has tempId, type, name, position, and data. Edges have source and target (node tempIds).
Data formats by node type (for flow JSON):
Node type
data shape (reference)
message
{ "type": "message", "title": "name", "message": { "value": "text content", "type": "text" } }
options
{ "type": "options", "title": "name", "options": [{ "label": "Option 1", "value": "opt1" }] }
condition
{ "type": "condition", "title": "name", "condition": "expression", "trueLabel": "Yes", "falseLabel": "No" }
time_delay
{ "type": "time_delay", "title": "name", "delayMinutes": 60 }
agent
{ "type": "agent", "title": "Transfer to Agent" }
break
{ "type": "break", "title": "End" }
ai_agent
{ "type": "ai_agent", "title": "name", "agentId": null } (or specific agent ID)
Rules used by flow generation and validation:
Every flow must start with a
bot_startnode.Every path must end with
break, agent handoff, or a loop back.Marketing flows should include an opt-out option.
Complex scenarios should offer human handoff.
time_delayshould be used sparingly (e.g. max 24 hours).Nodes are laid out with readable positions (e.g. x: 100–1000, y: 100–800; vertical spacing ~150px, horizontal ~250px).
Source: flow generation and validation logic in the identity module (e.g. flow-ai.service). The UI may show slightly different labels (e.g. “Start Trigger” for bot_start, “AI Response” for ai_agent, “Transfer to Agent” for agent).
For connecting nodes and testing your flow, see Workflow Builder (deep dive). For variables you can use in messages and conditions, see Workflow Builder (deep dive) – Variables in messages.
Last updated
Was this helpful?
