Conditions
Ask only what matters to each person. A condition shows a question when an earlier answer calls for it, so simple requests stay short.
Add a condition
Add one on a field in the Builder, or save reusable ones under Conditions. Combine rules with all, any, and not.
For example, show Budget only when Service is Full project. See the quote request recipe.
What a condition can do
- Show or hide a field. A section can depend on an answer too, under Flow. See Steps and sections.
- Apply a check, so Company name is required only when Project type is Commercial. See Validation.
- Choose who gets the email, on the Delivery tab. See Routing rules.
The server applies the same conditions, so answers to hidden fields are dropped, are never required, and aren’t stored or delivered.
Going further
Conditions as JSON
Form definitions hold these as visibilityRules, which are public, so your own UI can use them too. For every operator, see Conditions in the form definition.
{
"fields": {
"contact": {
"type": "object",
"fields": {
"preferredMethod": { "type": "select", "allowedValues": ["email", "phone"] },
"phone": { "type": "phone" }
}
}
},
"visibilityRules": [
{
"id": "show-phone-when-preferred",
"path": "contact.phone",
"default": "hidden",
"when": {
"path": "contact.preferredMethod",
"operator": "equals",
"value": "phone"
},
"state": "visible"
}
]
}Your own UI uses these rules to show or hide fields. The server also evaluates them, whatever your UI does.