Available tools
These tools appear in your agent’s function menu once Calendly is connected. Check Availability and Book Appointment are configured with an event type’s scheduling link, so each tool is pinned to one event type. See use integration tools in an agent for how to add and configure them.Book Appointment needs a paid Calendly plan: it books through Calendly’s Scheduling API, which Calendly restricts to paid subscriptions (as of August 2026). On a free account that one tool fails; availability checks, lookups, and cancellations keep working.
The availability tool checks a window of up to 7 days at a time. When a caller asks about “sometime next month,” the agent makes a follow-up check with a later start date — the tool’s description already tells it so.
Find the scheduling link
The scheduling link is the public booking URL for one event type — the same link you’d send an invitee, in the formhttps://calendly.com/<user>/<event>, for example https://calendly.com/acme/30min.
1
Open the event type in Calendly
Go to your event types and open the one the agent should book.
2
Copy its link
Copy the event type’s link, or open its booking page and copy the URL from the address bar.
3
Paste it into the tool
Paste it into the tool’s event type URL input. Retell ignores case, the scheme,
www., trailing slashes, and anything after a ? or #, so a copied link works as-is. Point a separate tool at each event type you want the agent to handle.Only event types owned by the connected Calendly user resolve; anything else fails with
Calendly event type not found on the connected account. For a teammate’s event type, connect a token for that teammate. Team round-robin and collective event types can’t be booked through the integration at all.Permissions
The personal access token acts as the Calendly user it belongs to; there are no per-tool scopes to grant. Every tool reads that user’s event types and reads and writes their scheduled events.Troubleshooting
Availability comes back empty
Availability comes back empty
Check the scheduling link on the tool: it must be an event type belonging to the token’s own Calendly user, spelled exactly as Calendly shows it. Then check the event type itself has open hours in the window the agent asked about.
Availability works but booking fails
Availability works but booking fails
Booking goes through Calendly’s Scheduling API, which needs a paid Calendly plan. It also needs the invitee’s name and email — make sure the agent collects both before calling the tool. If the event type asks the invitee to choose a location, the booking needs that answer too.
List Bookings can't find the caller's event
List Bookings can't find the caller's event
The lookup matches on the invitee email within the time window the agent supplies. Have the agent confirm the email used to book, and if the event might sit outside the window, widen it.
FAQ
Does the invitee get a confirmation email?
Does the invitee get a confirmation email?
Yes. Bookings go through Calendly, so invitees get exactly the notifications, reminders, and calendar invites your event type is configured to send.
How do timezones work?
How do timezones work?
The tools take the caller’s IANA timezone (for example
America/New_York) alongside local times, so the agent can quote and book slots in the caller’s own time. Prompt the agent to confirm the caller’s timezone when it isn’t obvious from context.Can the agent reschedule an event?
Can the agent reschedule an event?
Not directly — there’s no Calendly reschedule tool. Have the agent cancel the existing event and book a new time. If rescheduling in place matters, Cal.com and GoHighLevel calendars both have a reschedule tool.
Next steps
Integration tools for prompt agents
Add Calendly tools to a single- or multi-prompt agent and test them with live requests.
Integration tools in conversation flow
Call Calendly tools from a function node and branch on the result.
Dynamic variables
Reuse booking details later in the call, like reading back the confirmed time.
Simulation testing
Mock the booking tools to test your scheduling flow without creating real events.

