This page shows the exact payload your endpoint receives for each of the 12 webhook events. Every field is described once in the field reference at the bottom.
For what each event means and how to subscribe, see Webhooks and Register Webhook.
Bill events
bill.created
Sent when a new bill is created.
bill.completed
Sent when every report on the bill is finished and the bill moves to completed (or delivered).
bill.deleted
Sent when a bill is deleted. The payload carries identifiers only — no billData, no reportURL, no test list.
Report events
report.completed
Sent each time an individual test on the bill is marked complete, while the bill as a whole is still unfinished.
CRM events
All eight CRM events share the same shape.
lead.created
Sent when a lead is created in the CRM. This is the only CRM event where phase is lead.
booking.created
Sent when a booking is created directly, or when an existing lead is converted into a booking. In the conversion case leadID is unchanged and phase flips to booking.
Booking lifecycle events
The six events below track a home-collection booking from assignment through completion or cancellation. The body is identical in every case — only eventType differs.
booking.phlebotomist_sample_submitted also auto-creates the bill for that booking, so a bill.created delivery follows it, then report.completed and bill.completed for the same patient.
Field reference
Envelope
Present on every event.
Bill and report events
CRM events