{{placeholder}} syntax in your content, and supply values at send time.
How do variables work?
- Declare — Add a
variableSchemawhen creating or updating a template - Reference — Use
{{variableName}}in your template-channel content - Supply — Pass variable values in the
template.variablesobject when sending
What variable types are supported?
| Type | Description | Example value |
|---|---|---|
string | Plain text substitution | "Jane Doe" |
image | Image URL for rich notifications | "https://cdn.example.com/pic.jpg" |
action | Actionable URL (button link, deep link) | "https://example.com/orders/123" |
All three types accept string values at send time. The type distinction helps channels render content appropriately — for example, an
action variable may render as a tappable button in push notifications.How is personalization applied per user?
When sending to multiple targets in batch mode, you supply a single set of variable values that applies to all recipients. For per-user personalization with different values per recipient, use the campaign CSV upload which supports variable columns mapped to each user row.What happens with missing variables?
How do I update the variable schema?
Update thevariableSchema field via the update template endpoint. Changing the schema does not retroactively affect previously sent notifications.