Send one
POST /events takes one event or an array and answers 202.
See what arrived
GET /events lists the events the project received, newest first, and
GET /events/{id} reads one. Each is { id, name, app?, source, data?, receivedAt, woke, triggered }: source is how it arrived (api for a send,
emit for a step’s emit, webhook for an inbound webhook), woke how many
waiting runs it woke, and triggered one entry per workflow it matched, with
the runId it started, or skipped, dropped, debounced, batched or
deduped when it started none. Filter by name, app, source, since
(included) and until (excluded), both RFC 3339.
Trigger a workflow
if is an optional condition on the event, written as in a wait below; a
workflow may list several triggers.
Wait for one inside a run
null once the timeout passes.
Reserved names
An event name under a reserved prefix is refused with422 event_name_reserved: the name of any module followed by / (for example
database/, workflows/), project/ and duraton/. Those events come from
the platform itself, and a workflow can be triggered by them:
Each platform event starts at most one run of each workflow it triggers,
however often it is delivered.
While Workflows is off
A project whose workflows are switched off still accepts events and answers{ "woke": 0, "suspended": true }; nothing starts.