2 min read
When it fires
enquiry.updated is emitted when an enquiry’s status changes (e.g. new → in_progress). It is an *.updated event, so data.previous carries the fields’ prior values.
If your endpoint does not return a 2xx within the timeout, delivery is retried on an exponential backoff schedule — see Webhook delivery and retries. Design your handler to be idempotent so a redelivered event is safe to process twice.
Example delivery
{
"id": "evt_ENQU7X",
"type": "enquiry.updated",
"created": "2026-07-04T10:00:00Z",
"livemode": true,
"api_version": "2026-07-01",
"data": {
"object": {
"id": "enq_9F3K2P",
"status": "in_progress",
"assignee": "support-team"
}
}
}
Handling it
A common handler will update the mirrored record in your system. Verify the signature first, acknowledge with 200 within 10 seconds, then do the work asynchronously. The underlying resource is the same shape the post enquiries endpoint returns, so you can re-fetch current state if you need it.
Frequently asked questions
Can enquiry.updated arrive more than once?
Yes. At-least-once delivery means a redelivery is possible after a slow acknowledgement or a retry. Deduplicate on the event id — see idempotency.
Is data.object the live enquiry?
It is a snapshot taken when the event fired. If the enquiry may have changed since, re-fetch it from the API for the authoritative current state.
What is in data.previous?
Only the changed fields, with their values before this update. Use it to compute a diff without keeping your own prior copy.
Funding for UK limited companies
Credicorp lends to your company, not to you personally — short-term working capital with no personal guarantee. See what your business could access.