Expressions
Expressions reference data from triggers, steps, secrets, and run metadata.
Interpolation
Use {{ expression }} in strings:
"Bearer {{ secrets.STRIPE_KEY }}"
"https://api.example.com/orders/{{ steps.create.response.body.id }}"
A single {{ }} expression returns the raw value (map, list). Mixed strings return a string.
Path (default)
Dot-path access with comparisons:
steps.validate.response.body.total
steps.validate.response.status == 200
status == 200 and total > 100
status in [200, 201, 202]
Operators: ==, !=, >, <, >=, <=, in, and, or, not
JSONPath
Set lang: "jsonpath" for complex queries:
$.steps.validate.response.body.items[0].sku
$.items[?(@.price > 100)]
Lua
Set lang: "lua" for transforms. Sandboxed, 5s timeout:
acc.total = acc.total + result.amount
return acc
Context
| Path | Description |
|---|---|
trigger.body.* |
Request body |
trigger.headers.* |
Request headers |
steps.<id>.response.status |
HTTP status |
steps.<id>.response.body.* |
Response body |
secrets.<NAME> |
Tenant secret |
run.id |
Run ID |
run.workflow |
Workflow name |