Bluejay Relay — webhook infrastructure

Webhook
infrastructure,
without the plumbing.

Point any service at Bluejay Relay. We verify signatures, transform the payload, retry failures, and let you replay anything — so you stop rebuilding the same middleware for every vendor at 2am.

No credit card required · Free plan forever · Cancel anytime

// the problem

Receiving the request is the easy part.

What follows is weeks of work that has nothing to do with your product. Signature verification. Idempotency. Retries with backoff. Dead letter queues. Monitoring. And a test suite that nobody writes but everyone wishes existed.

This is the same code you wrote for Stripe. And for GitHub. And for Shopify. With small differences each time.

what a webhook handler costs

~2h

Receive and parse the request

Body parsing, content-type negotiation, basic validation.

~4h

Signature verification

HMAC-SHA256 checks, timing-safe comparisons, secret rotation.

~8h

Idempotency handling

Deduplication logic, replay protection, event ID tracking.

~1d

Retry logic with backoff

Exponential backoff, max attempts, failure state tracking.

~1d

Monitoring and alerting

Failure detection, alerting when deliveries stop, dashboards.

Maintenance as vendors change

Schema updates, new event types, deprecations, migrations.

// and it compounds

Every new vendor
starts the process over

Stripe has one authentication pattern. GitHub uses a different one. Shopify has its own payload format. Each webhook integration means rebuilding this infrastructure from scratch, adapted to that vendor's quirks.

And when a vendor updates their schema — which they will — you find out when something breaks, not before.

New vendor webhook

Without Relay

Days to weeks of custom middleware development, testing, and deployment.

With Relay

Create a webhook, get a URL, map fields. Live in under an hour.

Vendor changes their schema

Without Relay

Silent failures until someone notices. Then an incident. Then a fix.

With Relay

Schema validation catches mismatches. Update the field mapping. Done.

Debugging a failed delivery

Without Relay

SSH into logs, grep for request IDs, reconstruct what happened.

With Relay

Open the delivery log. Every payload and response is there, searchable.

// a different way to think about this

Infrastructure should be
a service, not a project.

The hours your team spends building and maintaining webhook middleware are hours not spent on what you actually sell.

// the shape of it

Any HTTP source. Any destination.

POST /stripe-webhook
POST /github-events
POST /shopify-orders
bluejay
Relay
route · transform · deliver
Your API endpoint
Slack webhook
Database via HTTP

// in action

A vendor schema in. Your schema out.

Map fields visually. Relay handles format conversion between JSON, XML, SOAP, and form data — no transformation code.

incoming — Stripepayment_intent.succeeded
{
  "type": "payment_intent.succeeded",
  "data": {
    "object": {
      "id": "pi_3QKh9ZLkw...",
      "amount": 4999,
      "currency": "usd",
      "customer": "cus_QKh9abc..."
    }
  }
}
delivered — Your APImapped + transformed
{
  "event": "payment_succeeded",
  "payment_id": "pi_3QKh9ZLkw...",
  "amount_cents": 4999,
  "customer_id": "cus_QKh9abc..."
}
200 OK · delivered

No code required. Fields are mapped in a visual editor — drag, connect, and save.

// what you get

Four things that replace weeks of work

01 / capture

A capture URL that just works

Every webhook gets a unique, permanent HTTPS endpoint. Point any service at it and it starts receiving webhooks immediately. No servers, no SSL, no middleware code.

POST https://relay.bluejayrelay.com/r/{token}

02 / transform

Transform without writing code

A visual editor maps source fields to destination fields. Rename them, restructure them, convert formats — in a drag-and-connect interface that supports JSON, XML, SOAP, and form data.

data.object.amount → amount_cents

03 / route

Routing that doesn't break

A single incoming webhook can fan out to multiple destinations in parallel, each with its own transformation rules. Automatic retries with exponential backoff. Failed deliveries never disappear silently.

1 in → N destinations · retry: exponential

04 / observe

Complete delivery logs

Every request. Every delivery. Every retry. Every HTTP response. Logged and searchable. You'll know exactly what arrived, what was sent, and what came back — without SSHing into anything.

GET /logs · full payload + response

Stop building infrastructure.
Start shipping product.

Get a capture URL in under 5 minutes. Free plan, no credit card required.