Webhook event catalog
Every event Awell can send to a subscribed endpoint, grouped by what it is about, with what each one reports and what it does not.
The events available to subscribe to when configuring an outbound webhook. Each fires once, when the thing it describes happens.
Payloads carry identifiers, not clinical detail: the care flow, the patient, and the object the event concerns. Fetch the detail through the API using those identifiers. See Webhooks and events for why.
Activities
An activity is a single thing to be done or shown: a form to complete, a message to read.
| Event | Fires when |
|---|---|
activity.created | A new activity is created in a care flow |
activity.completed | An activity is finished |
activity.updated | An existing activity changes |
activity.expired | An activity passes its expiry without completion |
activity.failed | An activity could not be carried out |
activity.deleted | An activity is removed |
activity.completed is the event to start from.
Care flows
| Event | Fires when |
|---|---|
pathway.started | A care flow starts for a patient |
pathway.completed | A care flow reaches its end |
pathway.stopped | A care flow is stopped before completing |
pathway.deleted | A care flow is removed |
Note the event names. These use pathway, not care_flow. The product renamed pathway
to care flow; the wire format did not follow. Subscribe to the names in the table — they are
what the platform sends and what the event picker in Studio lists.
Subscribe to both pathway.completed and pathway.stopped to tell a care flow that finished from
one that was stopped early.
Tracks
A track groups related steps inside a care flow.
| Event | Fires when |
|---|---|
track.started | A track begins |
track.completed | A track finishes |
track.stopped | A track is stopped early |
Data and forms
| Event | Fires when |
|---|---|
form.submitted | A form response is submitted |
data_point.collected | A data point receives a value |
clinical_note.created | A clinical note is created |
form.submitted fires once per submission; data_point.collected fires per value, so one submission
can produce several.
Sessions and reminders
| Event | Fires when |
|---|---|
session.started | A hosted-pages session begins |
session.completed | A session finishes |
session.expired | A session expires unused |
reminder.created | A reminder is generated |
Patients
| Event | Fires when |
|---|---|
patient.created | A patient record is created |
patient.updated | A patient record changes |
patient.deleted | A patient record is deleted |
Subscribe to what gets acted on, nothing more
Every extra event is traffic to authenticate, log, and then ignore, and it makes a real problem harder to see.
A reasonable default is activity.completed plus pathway.completed, then more once the integration
proves what it needs.
Next steps
Next: Receive webhook events, build the endpoint that handles the events chosen here.
Configure webhooks for all care flows
Set up an outgoing webhook once in CareOps and it applies to every published care flow, with its own events, custom headers and a test endpoint.
Configure API call retries
Change how Awell retries a failed API call from a care flow, at organization level or per care flow, and which setting wins.