Webhook
A webhook is an HTTP callback that one service invokes on another when a defined event occurs — typically a POST request with the event payload to a URL the consumer registered. Webhooks are the simplest way to implement event-driven integration between independently owned services without requiring a shared message bus.
Webhooks dominate B2B SaaS integration because they require no shared infrastructure: the producer makes an HTTP call, the consumer hosts an endpoint. The downsides are operational: webhook delivery is best-effort (the producer retries with backoff but eventually gives up), idempotency must be handled by the consumer (the same webhook may arrive twice), and verification of the sender's identity requires signature schemes (HMAC over the payload with a shared secret). Healthy webhook design: HMAC signatures verified, idempotency keys honoured, 200 returned within a few seconds (queue the heavy work asynchronously), and a UI for the consumer to inspect recent delivery attempts.
Related terms
- Event-driven architecture
Event-driven architecture is the design pattern where services communicate by emitting and consuming events rather than by direct synchronous calls.
- Rate limiting
Rate limiting caps the number of requests a client can make to a service within a defined window — typically expressed as 'N requests per second' or 'N requests per minute per API key'.
- Idempotency
An operation is idempotent if calling it multiple times has the same effect as calling it once.