Hi there!
Thanks for reaching out — this is a great use case.
Calendly’s API v2 currently does not support creating new events directly (i.e. scheduling on behalf of users). Instead, events are created when an invitee books a time using an event scheduling link. What you can do via API is:
Authenticate using a Personal Access Token (for user-level access) or OAuth (for apps accessing on behalf of others).
Retrieve event types to display options
Generate scheduling links with pre-filled information using Prefill & UTM Parameters
Track booked events using webhooks or Scheduled Events endpoints
To allow users to schedule meetings via WhatsApp, your flow might look like this:
-
🟢 Use WhatsApp to collect user input (e.g., name, email, preferred meeting type).
-
🟢 Generate a Calendly scheduling link dynamically with prefilled fields using query parameters (e.g., first_name
, email
, utm_source
, etc.).
-
🟢 Send that personalized link back to the user via WhatsApp so they can pick a time and finalize the booking.
While Calendly doesn’t support direct scheduling via API, this approach keeps the experience smooth and personalized.
For more details on authentication and available endpoints, check the full Calendly API v2 docs.
If you need help along the way, feel free to contact Calendly Support via live chat (found in the blue chat bubble in the lower-right when logged into a paid account) or email us at support@calendly.com — we’re here to support you!