Field Variables
Field variables insert form data into the message content and the footer action target. Variables make one template reusable across many records.
How Variables Work
After selecting a related form, choose a field from Add Field. The editor inserts a variable token that carries the runtime path of that value, for example:
{{record.data.contractCode}}
{{record.system.createdAt}}
{{record.relations.customer.data.customerName}}
When the message is rendered, the token is replaced with the value from the matching record. Templates that use declared variables instead of a related form use input paths:
{{input.taskName}}
Where Variables Can Be Used
| Area | Description |
|---|---|
| Message Body | Inserts values into the main content, usually as the value part of an attribute row |
| Trigger Action | Builds dynamic route or URL targets when the destination depends on record data |
| Context Values | Inserts form and runtime values such as {{form.name}}, {{runtime.locale}}, or {{runtime.timezone}} |
The footer name is limited to 16 characters, so keep it a fixed phrase such as View details and place dynamic values in the target instead.
Field Selection
The field picker shows fields from the selected form. Some related fields can be expanded so fields from the related data can also be inserted. System fields such as the record ID, creation time, or approval status appear with the same picker and map to {{record.system.*}} paths.
API Name
The variable uses the field API name inside the runtime path. Keep field API names stable after templates begin using them. If a field is renamed or removed, review templates that reference it.
Examples
| Example | Result |
|---|---|
{{record.data.customerName}} | Inserts the customer name |
{{record.data.contractCode}} | Inserts the contract code |
{{record.data.ownerName}} | Inserts the responsible member name |
Use variables only where the value should change per record. Keep fixed text written directly in the template.