5-Minute Quickstart

Learn how to set up a source, forward an event to a destination, and inspect delivery attempts in Bunnylynk.

Overview

In this 5-minute quickstart guide, you will:

  1. Create a Source to obtain a unique ingestion endpoint URL.
  2. Create a Destination representing your local dev server or webhook consumer.
  3. Link them with a Connection.
  4. Dispatch a test webhook using curl and inspect the live delivery attempt.
1

Create a Source

A Source represents where incoming webhooks originate (e.g. Stripe, GitHub, or custom services).

Navigate to the Bunnylynk Dashboard or use the Management API:

curl -X POST https://api.bunnylynk.com/v1/sources \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Stripe Inbound",
    "slug": "stripe-prod",
    "provider": "stripe"
  }'

Bunnylynk generates a unique ingestion webhook URL:

https://gateway.bunnylynk.com/h/stripe-prod

Note:

Any HTTP POST request sent to https://gateway.bunnylynk.com/h/stripe-prod is automatically ingested, validated, and stored.

2

Create a Destination

A Destination points to the HTTP endpoint where Bunnylynk delivers incoming webhooks. For testing, you can use a webhook tester service or your internal application endpoint.

curl -X POST https://api.bunnylynk.com/v1/destinations \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Billing Service",
    "url": "https://api.yourcompany.com/webhooks/stripe",
    "rate_limit_per_second": 25,
    "timeout_ms": 5000
  }'
3

Create a Connection

A Connection connects your Source to your Destination, allowing you to configure retry rules, transformations, and filters.

curl -X POST https://api.bunnylynk.com/v1/connections \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "source_id": "src_stripe_prod",
    "destination_id": "dst_billing_svc",
    "rules": {
      "retry_policy": "exponential",
      "max_retries": 5
    }
  }'
4

Send a Test Webhook

Now, send a sample webhook payload to your unique Bunnylynk ingestion URL:

curl -X POST https://gateway.bunnylynk.com/h/stripe-prod \
  -H "Content-Type: application/json" \
  -H "Stripe-Signature: t=1614552000,v1=5257a869e7ecebeda32affa62cd49539d09c04" \
  -d '{
    "id": "evt_test_123456",
    "type": "checkout.session.completed",
    "data": {
      "object": {
        "id": "cs_test_9876",
        "customer_email": "customer@example.com",
        "amount_total": 5000,
        "currency": "usd",
        "status": "complete"
      }
    }
  }'

You will immediately receive an acknowledgment within 15 milliseconds:

{
  "status": "accepted",
  "event_id": "evt_bl_01JMWP3KV9QZ",
  "received_at": "2026-11-01T18:00:00.000Z"
}

Inspecting Delivery in the Dashboard

Open your Bunnylynk Dashboard to view the event:

  • Raw Payload & Headers: Inspect the exact byte-for-byte payload and incoming HTTP headers.
  • Delivery Attempts: View the timestamp, target latency, HTTP response status code, and target response headers.
  • Manual Replay: Click Replay Event at any time to re-dispatch the payload to your destination.

Next, read about our Architecture & Store-Before-Ack Guarantee.