Calendly
Calendly fires webhooks when an invitee books or cancels — perfect for instant WhatsApp booking confirmations and reminders.
| Event | Typical template |
|---|---|
invitee.created | Your call is confirmed for {{date}} |
invitee.canceled | ”Your call has been cancelled” |
Setup
1. Copy the Splashify webhook URL
https://apis.splashifypro.com/api/v1/webhooks/integrations/<your-user-id>/calendly2. Create the webhook in Calendly
Calendly has no UI for webhooks — use the Calendly API :
curl -X POST https://api.calendly.com/webhook_subscriptions \
-H "Authorization: Bearer YOUR_PERSONAL_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"url": "YOUR_SPLASHIFY_URL_HERE",
"events": ["invitee.created", "invitee.canceled"],
"organization": "YOUR_ORG_URI",
"user": "YOUR_USER_URI",
"scope": "user"
}'Get the org + user URIs from api.calendly.com/users/me (authenticated).
3. Configure in Splashify
Calendly payload shape: payload.invitee.{name, email, text_reminder_number} etc.
-
Phone Field →
payload.text_reminder_number(Calendly uses this key for the phone the invitee provides at booking; only present when your event type collects it) -
Variables:
Var Field path Sample {{1}}payload.nameRamesh{{2}}payload.scheduled_event.start_time2026-05-01T10:00:00Z{{3}}payload.scheduled_event.nameDiscovery Call -
Map one template per event via Event Automations.
-
Enabled → Save.
Gotchas
- Phone collection is opt-in per event type. In Calendly event-type settings, enable SMS reminders (which collects phone) or add a custom “Phone number” question.
- Time format is ISO 8601 UTC. Your template should display the time in the invitee’s timezone — Calendly sends
payload.invitee.timezonewhich you can pass through but formatting is up to the recipient’s phone. - Signature verification not yet wired. If you need it, Calendly does publish an
X-Calendly-Signatureheader for future support.