Destinations

Configure target HTTP endpoints, concurrency limits, rate limiting, and timeouts for downstream webhook processing.

What is a Destination?

A Destination defines the target system that will receive the webhook dispatched by Bunnylynk. Destinations can be:

  • REST API endpoints on your backend application.
  • Serverless functions (AWS Lambda, Cloudflare Workers, Vercel).
  • Internal microservices protected behind mutual TLS (mTLS) or private proxies.

Protecting Downstream Systems

Unlike standard HTTP forwards that dump incoming traffic directly onto your backend, Bunnylynk Destinations act as a protective buffer equipped with:

  1. Rate Limiting: Cap the maximum requests delivered per second (e.g. 10 req/s) to prevent database connection exhaustion.
  2. Concurrency Bounds: Limit the number of in-flight requests simultaneously active against your endpoint.
  3. Configurable Timeouts: Define maximum socket wait times (e.g. 3000ms). Slow or hanging requests are aborted and scheduled for retries rather than holding connections open.

Destination Schema

FieldTypeDescription
idstringUnique identifier (e.g. dst_01JMVWXYZ).
namestringDescriptive label (e.g. "Inventory Service").
urlstringAbsolute target URL (http:// or https://).
rate_limit_per_secondnumberMaximum requests delivered per second. Default: unlimited.
max_concurrencynumberMaximum simultaneous open HTTP connections. Default: 50.
timeout_msnumberRequest timeout before triggering a retry. Default: 5000ms.

Creating a Destination via API

curl -X POST https://api.bunnylynk.com/v1/destinations \
  -H "Authorization: Bearer $BUNNYLYNK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Order Fulfillment Service",
    "url": "https://api.myapp.com/webhooks/fulfill",
    "rate_limit_per_second": 15,
    "max_concurrency": 10,
    "timeout_ms": 3500
  }'

Next: Link Sources and Destinations using Connections.