Trigger reference
Every event an automation rule can trigger on, and its payload shape.
An automation rule triggers on exactly one of these 9 events. Condition field paths
(see the condition reference) resolve against
payload.* for these fields, and separately against contact.* for the contact's own
record (email, tags, custom fields) when one is available.
contact.created
Fires when a new contact is created — by a form submission, a newsletter signup, or manually.
{ "contactId": "…", "email": "…" }contact.updated
Fires when an existing contact's fields change.
{ "contactId": "…", "changes": { "company": "Acme Inc" } }changes contains only the fields that actually changed, keyed by field name.
contact.deleted
Fires when a contact is deleted.
{ "contactId": "…" }form.submitted
Fires on every form submission, published forms only.
{ "formId": "…", "submissionId": "…", "contactId": "…" }Use a condition on payload.formId to scope a rule to one specific form.
subscriber.pending
Fires when someone signs up to a list publicly and is awaiting confirmation (see double opt-in).
{ "subscriberId": "…", "contactId": "…", "listId": "…" }subscriber.confirmed
Fires when a pending subscriber confirms, or when you add a subscriber directly from the dashboard (which skips the pending step entirely).
{ "subscriberId": "…", "contactId": "…", "listId": "…" }subscriber.unsubscribed
Fires when a subscriber unsubscribes, whether via the email unsubscribe link or removed from the dashboard.
{ "subscriberId": "…", "contactId": "…", "listId": "…" }deal.created
Fires when a new deal is created in any pipeline.
{ "dealId": "…", "contactId": "…", "pipelineId": "…" }deal.stage_changed
Fires when a deal moves to a different stage — including a fresh deal's very first stage.
{
"dealId": "…",
"contactId": "…",
"fromStageId": "…",
"toStageId": "…",
"status": "OPEN"
}status is the new stage's type (OPEN, WON, or LOST) — this is the field to
condition on for "when a deal is won" style rules. See
example recipes.
campaign.sent also exists as an internal event (used by
webhooks) but isn't available as an automation trigger — it
describes a whole campaign finishing, not something scoped to one contact, which is
what every automation trigger needs to resolve the contact.* half of a condition.
Last updated on