Skip to main content

Unable to Complete Booking via Calendly API After Showing Availability

  • August 13, 2025
  • 1 reply
  • 56 views

I have a Calendly Premium account and am using my personal access token to build a customized booking flow.

So far, I’ve successfully integrated the external API to:

 

Retrieve and display availability

 

Create a customized calendar UI on my website

 

 

The issue is that although availability shows correctly, I cannot complete the booking process through the API.

I’ve reviewed the API documentation, but I’m not sure if I’m missing an endpoint, permission, or specific payload structure required for confirming the booking.

 

Could someone guide me on:

 

1. The correct API flow for completing a booking after retrieving availability.

 

 

2. Any special parameters or authentication steps needed for booking confirmation.

 

 

3. Whether this is possible with only a personal access token or if I need an OAuth setup.

1 reply

Hi there, 
 

My name is Taylor, and I'm a Developer Support Specialist with Calendly.

 

Yes, this is possible, and the key piece is that the actual booking step is done through Calendly’s Scheduling API, specifically POST /invitees, rather than through the Embed API itself. 
 

If you’re building a custom booking flow, the general process is:

  1. Identify the correct event type for the host or booking flow.

  2. Retrieve availability using GET /event_type_available_times.

  3. Confirm the booking with POST /invitees by sending the event_type, the selected start_time in UTC, and the invitee details.


At a minimum, your booking request should include:

  • event_type

  • start_time

  • invitee.name

  • invitee.email

  • invitee.timezone


Depending on how the event type is configured, you may also need to include a location object. If the host’s location requires invitee input, that location information needs to be passed in the request as well.
 

On authentication:

  • A personal access token is fine if this is an internal or private app for your own Calendly account or organization.

  • You would typically need OAuth if you’re building a public app or need to act on behalf of other Calendly users outside your own account or organization.


A couple of additional notes:

  • The Scheduling API is available for paid Calendly plans, so your Premium account should meet that requirement.

  • If you want to track successful bookings afterward, you can also subscribe to invitee.created webhooks.
     

So in short: this is not just an Embed API limitation, since booking is now supported through the Create Event Invitee endpoint in the Scheduling API.
 

If you’d like, you’re also welcome to send your website link to support@calendly.com so our team can take a closer look and provide additional guidance on your specific implementation.
 

Hope that helps!