AUTOMATIONS

guide

Using dynamic values

Reference event data, earlier step outputs, and variables inside any field with ${...} template expressions.

Why dynamic values

An automation is only useful if its steps can react to the actual thing that happened. Almost any field in a step config accepts a template expression — written as ${...} — that's replaced with live data when the run executes.

The event

The data that started the run lives under event:

  • ${event.title} — the event's title.
  • ${event.entity_id} — the ID of the thing the event is about.
  • ${event.metadata.fieldName} — any custom field carried on the event, such as ${event.metadata.priority}.

When you pick an event type on the trigger, its available metadata fields are listed in the config panel — click one to insert it.

Earlier step output

Each step's result is available to the steps after it under steps, keyed by the step's ID — for example ${steps.draft.output.output_text} pulls the text out of a step named draft. This is how you chain steps: classify with AI, then act on the category it returned.

Variables

The Set variables step writes into a vars namespace. Anything you store there is readable later as ${vars.yourKey}. Use it to compute a value once and reuse it across several steps.

Loop values

Inside a For each loop, the current item is ${item} and its zero-based position is ${index}.

Conditions use the same data

Trigger conditions and branching conditions read the same context, just without the ${} wrapper — you write the bare expression, for example:

event.metadata.severity == "critical"

For logic beyond simple substitution, the Compute step evaluates a full expression and stores the result for later steps.

Next

Continue with Starting from a template.

Was this article helpful?

Talk to sales

Tell us what you're running today and we'll map it onto AppGram.

A real human replies within one business day.