IGNITRAOpen the app

Variables

Text in actions is a template: plain text with variables in double braces. Templates are pure: no code runs, only lookups and a fixed set of filters.

🔥 New buy: {{trigger.amount_formatted}} {{trigger.token.symbol | default: "?"}}
From {{trigger.from | short}} · balance now {{steps.read.result}}
{{trigger.explorer_url}} · {{now_wib}}

What you can use

trigger.*The trigger's data: every path listed under each trigger in Triggers, including nested ones like token.symbol or body.order.id.
steps.<step_id>.*The output of an earlier step, e.g. a contract read's result or a webhook's response body. Only earlier steps: no forward references.
flow.idthe flow's id
flow.namethe flow's name
flow.versionthe flow version that ran
run.idthe run's id
run.idempotency_keythe run's unique key: use it to deduplicate downstream
run.testtrue for TEST runs
now_utcwhen the step runs, ISO-8601 UTC
now_wibwhen the step runs, in WIB

Unknown variables are rejected when you save the flow, checked against the trigger's data and the earlier steps' outputs. At run time, a variable that exists but is null renders as empty text; one that does not exist fails the step (unless it has a default), so a typo never sends a half-empty message.

Filters

default: "…"a fallback when the value is missing, null or empty{{trigger.token.symbol | default: "?"}}
shortshortens hex: 0x5fc5…d168{{trigger.from | short}}
upper / lowerchanges case{{trigger.token.symbol | lower}}
truncate: Ncuts to N characters with …{{trigger.body.message | truncate: 80}}
jsonthe value as JSON{{trigger.args | json}}
urlURL-encodes the valuehttps://x.example/?q={{trigger.to | url}}

Filters chain left to right: {{trigger.body.title | default: "Untitled" | upper}}. Write a literal {{ as \{{.

Escaping

Substituted values are escaped for where they land; the text you write yourself is never touched.

  • Telegram (HTML): values are HTML-escaped, so a token named <b>EVIL</b> prints as text.
  • HTTP JSON bodies: values are JSON-escaped (quotes, newlines). Write strings in quotes: "to": "{{trigger.to}}"; numbers without: "amount": {{trigger.amount_decimal}}.
  • Google Sheets: a value that would start a formula (=, +, -, @) is written as text; plain numbers stay numbers.

Limits

A template has at most 10,000 characters and 200 variables; a rendered result at most 20,000 characters.