Structure
Each field can have oneconditionalLogic rule:
Properties
| Property | Type | Description |
|---|---|---|
action | "show" | "hide" | Whether to show or hide the field when conditions are met |
match | "all" | "any" | all = AND logic (every condition must pass), any = OR logic |
conditions | Condition[] | One or more conditions to evaluate |
Condition Structure
| Property | Type | Description |
|---|---|---|
fieldId | string | The ID of the field whose value is checked |
operator | ConditionOperator | The comparison to perform |
value | string | number | The value to compare against (not required for is_empty / is_not_empty) |
Operators
| Operator | Description | Works With |
|---|---|---|
equals | Exact match | All types |
not_equals | Does not match | All types |
contains | Value includes the string | text, textarea, email |
not_contains | Value does not include the string | text, textarea, email |
greater_than | Numeric greater than | number, rating, scale |
less_than | Numeric less than | number, rating, scale |
is_empty | No value entered | All types |
is_not_empty | Any value entered | All types |
Examples
Show a follow-up field
Show a text field only when the user selects “Other” from a radio:Hide a field based on NPS score
Hide a question unless the NPS score is low:Multiple conditions (AND)
Show a field only if the user is a Pro customer AND has submitted before:Multiple conditions (OR)
Show a field if the user selected either “email” or “phone”:How It Works
- Conditions reference fields by ID — the
idproperty on aFormField - Fields referenced in conditions must appear before the conditional field in the
fieldsarray - Hidden fields are excluded from submission — their values are not sent
- In conversational mode, hidden fields are skipped automatically in the navigation sequence
- The
statementanddividertypes are always excluded from submissions regardless of visibility