Welcome to Bunnylynk
Bunnylynk is an enterprise-grade inbound webhook gateway that solves the hardest challenges in receiving third-party webhooks: transient network drops, downstream API rate limits, out-of-order deliveries, and unhandled server downtime.
By standing between webhook producers (such as Stripe, Shopify, GitHub, or Twilio) and your internal consumer microservices, Bunnylynk guarantees that no webhook event is ever dropped.
Quickstart
Receive and inspect your very first webhook through Bunnylynk using cURL.
Design
Understand how Store-Before-Ack durability and isolation protect your system.
Integration
Configure sources, destinations, and connections for production.
The Problem with Direct Webhooks
When third-party providers send webhooks directly to your primary web servers or serverless functions:
- Traffic Spikes Overwhelm Your Database: A surge of events (e.g., Black Friday checkout events) triggers hundreds of concurrent executions, exhausting database connection pools.
- Deployments Drop Webhooks: If your application restarts or deploys while a webhook arrives, the connection drops. Most senders retry with aggressive or unpredictable schedules.
- Silent Delivery Failures: When your server responds with an error, the event is frequently lost forever without alerting or replaying ability.
- Sender Rate Limits & Concurrency: Senders like Stripe or Shopify often expect responses in under 2–5 seconds, failing the event if your internal queue or processing takes longer.
How Bunnylynk Solves This
Bunnylynk decouples ingestion from processing:
sequenceDiagram
autonumber
actor Sender as Webhook Producer (e.g. Stripe)
participant BL as Bunnylynk Gateway
participant DB as Durable Ledger
participant Worker as Dispatch Engine
participant App as Your Internal API
Sender->>BL: POST /h/:source_slug (Webhook payload)
BL->>DB: Persist event & headers (Atomic)
BL-->>Sender: 200 OK (Under 15ms)
Worker->>DB: Pull queued events
Worker->>App: POST destination endpoint
alt Target Healthy
App-->>Worker: 200 OK
Worker->>DB: Mark Attempt Succeeded
else Target 500 or 429
App-->>Worker: 500 Internal Error / 429 Rate Limit
Worker->>DB: Schedule Exponential Backoff Retry
end
Key Capabilities
- Store-Before-Ack Durability: Ingested payloads are committed to persistent storage before returning an HTTP
200 OKor202 Acceptedto the caller. - Intelligent Retry Engine: Linear, exponential, and jittered backoffs with automatic circuit breaking for failing destination servers.
- Live Event Inspection & Replay: Inspect raw payloads, decrypted headers, and exact delivery attempts. Replay any webhook with a single click or API call.
- Rule Engine & Payload Transformation: Filter events using JSONPath, strip or inject headers, and schedule delays without changing your application code.
- Multi-Tenant Security & Scoped API Keys: Fine-grained role-based access control (RBAC), team permissions, and project-isolated cryptographic keys.
Ready to begin? Head over to the Quickstart Guide.