Skip to main content

Responding to Webhooks

Your endpoint should return a 2xx status code to acknowledge receipt. If Tidyhire does not receive a successful response, the delivery is considered failed.
Express example

Retries

If a delivery fails (non-2xx response, timeout, or connection error), Tidyhire retries the event until it is acknowledged. Retries use backoff — the delay between attempts grows with each failure.
Make sure your handler is idempotent. A retried event is identical to the original — do not double-process it. Use the event’s candidate/job identifiers to upsert rather than insert when writing results back to your system.

Ordering

Webhook deliveries are not guaranteed to arrive in order. If your workflow needs ordering (e.g. call started → call ended), use the timestamps and status transitions in the payload to sort events on your side.