Event
Trigger · Stable
Run automatically when an internal platform event fires.
Fires when the platform dispatches a named internal event (e.g. invoice_created, contact_updated). The event’s payload keys are injected into the run context. Use to react to platform-native state changes without polling. The flow runs shortly after the event, not inside it: the event is queued once whatever caused it is saved, and the flow starts on its own a moment later, so a slow flow never holds up the step or page that fired the event.
When to use
Section titled “When to use”Use when you want to react within seconds to something that happened inside the platform — a new invoice, a stage change, an entity update. The event payload keys (e.g. contact_id, amount) are ready to use by the next step without any extra lookup. Safe for slow work such as an agent: the flow that fired the event does not wait for this one.
When not to use
Section titled “When not to use”If the signal comes from outside (an HTTP call from a third-party service), use Webhook instead. For time-based triggers use Schedule (Cron); for email-initiated runs use Incoming email. To react to a document, email or note landing in memory, use Something lands in memory, not the memory.item.annotated event: it filters by where the document came from and its file type before a run exists, where the raw event runs the flow on every item. Heads-up: a run from this trigger has no signed-in user, so {{ user.* }} and {{ actor.* }} are empty. Bind any recipient or owner — a send_email to, a deal owner_actor_id, a task assigned_to — to a concrete email or actor_id, never {{ user.* }}; or collect it at run time with an Ask-a-person step.
Inputs
Section titled “Inputs”event_type
Section titled “event_type”string · required
The exact internal event name to react to — must match a name the platform actually dispatches (see core/events/registry.py), not a free-form label. Case-sensitive, no wildcards.
Example: invoice_created
- ✓
invoice_created— fires when a new invoice is recorded - ✓
contact_updated— fires on any contact field change - ✗
Invoice Created— not the registered event name — spacing/casing must match the registry exactly or the trigger never fires
Auto-generated from the skill registry (load_skills()). Do not edit by hand.