Skip to main content

Workflow Events

Three places in a workflow take an event: the trigger, a Wait for event step, and the Exit event setting. All three accept the same events, picked from a searchable list or typed by name.

Where events come from​

SourceExamplesListed under
Tracked eventspurchase, begin_checkout, sign_up, login, or a custom event your site sendsTracked events
Platform eventsaudience_member.created, purchase.created, entitlement.createdPlatform events
Package eventsfundraiseup.donation.received from the Fundraise Up packageThe package's name

Tracked events​

Tracked events are the events your site records with the Allegro SDK, or that Allegro records on your behalf when a member signs in, checks out, or signs up. The list includes Allegro's standard event names plus any custom event name your organization has recorded recently. A developer can send a custom event for a workflow to use. See Event Tracking.

Platform events​

Platform events describe changes inside Allegro, such as a member being created, a purchase being recorded, or an entitlement being granted. They are the same events webhooks deliver, under the same names, and carry the same data. They let you automate "when X happens, do Y" without writing code, for example adding every new member to a welcome segment.

EventHappens when
audience_member.created / .updated / .deletedA member is created, changed, or deleted.
audience_member.property.joinedA member joins a property.
audience_member.external_profile.*An external profile is created, updated, or deleted.
audience_member.foreign_key.*A foreign key is created, updated, or deleted.
audience_member.user_attribute.*A user attribute value is created, updated, or deleted.
entitlement.created / .updated / .deletedAn entitlement is granted, changed, or removed.
purchase.created / .updatedA purchase is recorded or changes.

interaction.* and template.* events aren't about a member, so they never start or move a run. The trigger's event list leaves them out.

Package events​

Enabled packages can add their own events. For example, the Fundraise Up package adds fundraiseup.donation.received, fundraiseup.donation.refunded, and fundraiseup.recurring_plan.canceled.

Event names you type​

You can use an event that isn't in the list yet, for example one your site will start sending next week. Names can contain letters, numbers, _, and -, in one or more parts separated by dots: purchase, newsletter-signup, audience_member.created.

Events that can't be used​

page_view, page_ping, and journey_activity fire on every page load, so they can't be used as a trigger, a wait, or an exit event. They're left out of the list, and the editor rejects them if typed.

An event also has to belong to a known member. An event from an anonymous visitor is ignored. An event without a member counts for whoever is signed in on the device that sent it.

System events​

Some events don't come from a member doing something on your site. Allegro records them in bulk when it imports members, syncs with a CRM or integration, or backfills history, for example when a Fundraise Up backfill loads years of past donations. These are system events.

A workflow doesn't enroll members from system events unless you switch on Include imports and syncs in its settings. This keeps an import of 50,000 donors from sending 50,000 welcome emails.

System events still count everywhere else:

  • They move a waiting run forward when they match a Wait for event step.
  • They end a run when they match the workflow's Exit event.

So a purchase that arrives through a sync still stops an abandoned-checkout reminder.

Data on the event​

Events carry data, such as a purchase amount or a donation's campaign. You can use it in two places:

  • Conditions: test a field with the Event data attribute, plus the event's property, page path, and UTM parameters. See Conditions.
  • Emails: insert a field with {% event.<field> %}. See Event data in emails.

For tracked events, the data is what your site sent, plus the page path, host name, UTM parameters, and property slug when they're known.