Architecture
WebhookCore separates endpoint governance, delivery truth, and retry orchestration so outbound integrations behave like a real subsystem.
Core shape
Section titled “Core shape”consumer app -> @saazip/webhook-core sdk -> webhook-core api -> contracts + core + crypto + db + observability -> endpoint registry -> delivery and attempt history -> webhook-core dispatcher -> adapters-queueflow for retries and replay workThe central design choice
Section titled “The central design choice”Deliveries and attempts are first-class state.
That means the system is built around:
- explicit endpoint registration
- versioned secrets
- observable attempt outcomes
- replay without inventing product-specific workflows
API runtime
Section titled “API runtime”The API runtime owns:
- endpoint registration and updates
- secret rotation
- delivery creation and fanout
- attempt completion
- replay scheduling
Dispatcher runtime
Section titled “Dispatcher runtime”The dispatcher is the seam where retry orchestration fits. It keeps delivery execution concerns separated from the control plane.
Product boundary
Section titled “Product boundary”WebhookCore owns delivery mechanics.
Your product owns:
- which events become webhooks
- which payloads are sent
- how tenants subscribe and what they are allowed to receive