Skip to main content

Overview

The Logic node routes conversations based on variable values. It evaluates conditions against your flow’s variables and sends the conversation down different paths — no LLM call required. Think of it as an if/else-if/else block for your flow.

How Branches Work

Each Logic node has one or more branches. A branch contains one or more conditions, and each condition checks a variable against a value using an operator. Branches are evaluated in order, top to bottom. The first branch whose conditions are all satisfied wins. If no branch matches, the default path is taken.

Branch Logic: AND vs OR

ModeBehaviorExample
ANDAll conditions must be trueLanguage is English AND state is Texas
ORAny condition can be trueStatus is “VIP” OR spend > 10000

Operators

OperatorDescriptionExample
equalsExact match (case-sensitive){{language}} equals English
not_equalsDoes not match{{status}} not_equals blocked
containsVariable contains substring{{interests}} contains dental
not_containsDoes not contain substring{{email}} not_contains spam
not_emptyHas a value{{phone_number}} not_empty
is_emptyEmpty, null, or unset{{email}} is_empty
greater_thanNumeric: variable > value{{age}} greater_than 18
less_thanNumeric: variable < value{{budget}} less_than 500
starts_withBegins with string{{phone}} starts_with +1512
ends_withEnds with string{{email}} ends_with @gmail.com

Default Path

If you don’t connect a default path and no branches match, the engine has nowhere to go and the flow stalls. Always wire up the default output.

Real-World Examples

Lead Qualification

  • Branch 1 (AND): budget > 5000 AND company_size > 10 → “Qualified Lead” conversation
  • Branch 2: budget > 1000 → “Warm Lead” conversation
  • Default: “Nurture” conversation

Language Routing

  • Branch 1: preferred_language equals Spanish → Spanish flow
  • Branch 2: preferred_language equals French → French flow
  • Default: English flow

Data Completeness Check

  • Branch 1 (AND): name not_empty AND email not_empty AND phone not_empty → Proceed to API call
  • Default: Loop back to conversation node for missing info

Conversation Node

The core dialogue node

Variables

Dynamic data in your flows

Extraction Nodes

Extract data from conversations

Flow Builder Guide

Comprehensive usage guide