Cal.com events, straight into Custom Webhook

Every new booking, cancellation, or reschedule — posted to Custom Webhook the moment it happens. No automation-platform subscription just to relay one webhook.

Why not call Cal.com's API directly from your own endpoint? You can — but then you own Cal.com's signature verification, retry handling, and payload quirks yourself. ZestyGlue verifies the signature, normalizes the event into a clean JSON body, and POSTs it to your URL — you only write the part that's actually yours.

What it looks like

ZestyGlue
Cal.com — Booking Created
Consultation with Jane Jane Doe [email protected] starts 2026-07-10T15:00:00Z

A real Cal.com event, shown as ZestyGlue formats it for Custom Webhook.

Setup — about two minutes

  1. Create the connector. In ZestyGlue, start a new Cal.com → Custom Webhook connector. You'll get a unique webhook URL right away.
  2. Point Cal.com at it. Go to Settings → Developer → Webhooks → add a webhook, paste in your ZestyGlue webhook URL, and select the trigger events you want.
  3. (Optional) set a secret. Cal.com can sign its payloads if you set a secret on the webhook — enter the same value into ZestyGlue for extra verification, though it isn't required to get started.
  4. Point it at your endpoint. Paste the URL of your own server, script, or automation tool's webhook receiver — no signup, no app to install.
Tip: Cal.com lets you scope webhooks per event type — enable just BOOKING_CREATED if you only want new bookings, or add the others to track changes too.

Events you can forward

BOOKING_CREATED BOOKING_CANCELLED BOOKING_RESCHEDULED

Questions

Is my Cal.com Webhook Secret safe with ZestyGlue?

It's encrypted at rest with Fernet symmetric encryption before it ever touches disk, it's never logged, and it's never displayed again in the dashboard after you enter it — only a masked placeholder is shown.

Is this the same as Cal.com's built-in notifications?

No — Cal.com's own notifications are typically personal booking confirmations. This is a webhook-level feed you can route to a shared team channel in any of ZestyGlue's 8 destinations.

Does self-hosted Cal.com work the same way?

Yes, as long as your self-hosted instance can reach zestyglue.com over the internet to deliver the webhook.

Do I need to write my own server to receive this?

Yes — this destination expects your own endpoint (or a tool like a serverless function, a script, or another automation platform's webhook trigger) to receive the POST. If you don't have one yet, pick one of ZestyGlue's built-in destinations instead.

What happens if my ZestyGlue subscription lapses?

Events are silently dropped rather than causing errors on Cal.com's side — Cal.com never sees a failure response, so it won't retry aggressively or flag your webhook as broken. Your dashboard will simply stop showing new events until you resubscribe.

Connect Cal.com to Custom Webhook — start free trial
14-day trial, no credit card required. See all 26 sources and 9 destinations →