Event catalog
The public webhook catalog covers the commitment boundary — the moment Kordless stops and your downstream systems take over:Webhooks deliver commitment events only. Quote creation, quote review, and Book lifecycle events are not part of the public webhook catalog.
Endpoint lifecycle
Webhook endpoints are managed from the Developers page. Only an organization admin can create, update, or delete endpoints.Creating an endpoint
- Go to Developers and open the Webhooks tab.
- Choose Create endpoint.
- Provide an HTTPS URL (12–2048 characters).
- Select the environment (Test or Live).
- Optionally subscribe to a subset of event types. If you omit event types, the endpoint receives all events in the catalog.
- Copy the signing secret — it is shown once.
Updating an endpoint
You can update the URL, event subscriptions, active status, and description without creating a new endpoint. Changes take effect immediately.Rolling the secret
Rolling the signing secret generates a new one immediately — there is no grace period. Update your verification code to use the new secret before or immediately after rolling. Deliveries signed with the old secret will fail verification.Deleting an endpoint
Deleting an endpoint immediately stops deliveries. Pending deliveries are cascaded — an in-flight delivery finds no endpoint row and terminates cleanly.Delivery
How deliveries work
- An event fires (for example, a commitment is created).
- Kordless records a delivery row and POSTs the event payload to your endpoint.
- Your endpoint responds with a
2xxstatus to acknowledge receipt. - If your endpoint returns a non-
2xxor is unreachable, Kordless retries with exponential backoff.
Delivery headers
Every delivery includes these headers:Delivery timeout
Kordless waits up to 10 seconds for your endpoint to respond. If your endpoint does not respond within 10 seconds, the delivery is marked as failed and retried.Idempotency
Deliveries are unique on (endpoint, event). Two effects can never double-fire the same event to the same endpoint. A redelivered effect for an already-delivered delivery returns200 without re-POSTing.
Response excerpt
Kordless records the first 1,024 bytes of your endpoint’s response body. This helps with debugging — you can see what your endpoint returned — but no secrets or payloads are leaked.Signature verification
Verify every delivery by computing the HMAC-SHA256 of the raw request body with your signing secret and comparing it to thex-kordless-signature header:
Payload shape
The payload is a JSON object with the event type, the commitment details, and a timestamp:Environment isolation
Webhook endpoints are scoped to one environment. A Test endpoint receives only Test events; a Live endpoint receives only Live events. When you create an endpoint, you choose the environment it subscribes to.Retry behavior
After the maximum retry attempts, the delivery is dead-lettered and no longer retried.