All expressions begin with an "@" symbol and an open parenthesis, e.g. "@(now()" or "@(time_from_parts()" Once entered, "@(" will trigger a completion dialogue that lists and explains each function:

Simple Syntax

This is used to embed single values, e.g.

Hi @contact, you entered @results.age for age. Is this correct? 


An expression can also be a function call, e.g.

Hello @(upper(contact.first_name)) 

Function names are not case-sensitive so UPPER is equivalent to upper. We support a subset of the functions available in Excel and these are listed below.

Advanced Syntax 

This is used to build more complex expressions using similar syntax to Excel formulae, e.g.

Hi, you are @(format_date(now() "YYYY") - results.year_born)years old

Expressions can also include arithmetic with the add (+), subtract (-), multiply (*), divide (/) and exponent (^) operators:

Result is @(1 + (2 - 3) * 4 / 5 ^ 6) units 

Note that the expression is enclosed in parentheses to tell us where it ends.

You can also join strings with the concatenate (join) operator (&):

Hello @("contact.first_name" & " " & "contact.last_name") 


Take a look at our full expression reference here.

Did this answer your question?