← Back to Blog
Tutorial clerk webhooks tutorial auth svix integration

How to Receive Clerk Webhooks Reliably

Receive Clerk user and session webhooks — verify the Svix signature scheme correctly, reshape the payload, sync your database, and replay failures. No backend required.

JW

Jason Warner

August 5, 2026

How to Receive Clerk Webhooks Reliably

Clerk sends webhooks for user and session lifecycle events (user.created, session.created, and more) so you can sync your own database and trigger onboarding. Clerk delivers these through Svix, which means a specific signature scheme you have to implement correctly — plus the usual retries and payload reshaping. Bluejay Relay handles all of it, no backend required.

What You'll Build

Clerk → Bluejay Relay (verify + transform + route) → your database, your API, or Slack.

1. Create the Webhook Endpoint

In Bluejay Relay, create a webhook and pick Clerk as the source — its Svix verification is pre-selected. Copy your capture URL:

https://in.bluejayrelay.com/api/webhooks/{your-token}

2. Add the Endpoint in Clerk

In the Clerk Dashboard, go to Webhooks, add an endpoint, paste your Bluejay capture URL, and select the events you want. Clerk shows a signing secret (it starts with whsec_) — copy it.

3. Verify the Signature

Clerk (via Svix) signs {svix-id}.{svix-timestamp}.{body} with HMAC-SHA256 using your whsec_ secret, and sends the signature in the svix-signature header alongside svix-id and svix-timestamp. It also guards against replays with a timestamp window. Bluejay Relay implements this scheme exactly — paste your signing secret, enable verification, and forged or replayed requests are rejected.

4. Transform and Route

A user.created event carries the new user's id, email and profile. Map those into a clean payload and deliver it to your API to create the matching record, and to Slack to announce the signup — the same event, two shapes, no code.

5. Retries and Replay

If your API is mid-deploy when a user signs up, Relay retries with backoff, dead-letters what fails, and lets you replay — so you never miss creating a user record.


Connect Clerk in a minute on Bluejay Relay — the free tier is 10,000 events/month, no card required.

#clerk #webhooks #tutorial #auth #svix #integration

Build more reliable webhook workflows.

Capture, transform, and retry webhooks with full observability. Free to start, no credit card.