Calendly integration
Connect Calendly and your AI agent books meetings in the chat
Create a Calendly personal access token, paste it into intoCHAT and pick an event type. When a visitor wants a call, the agent shows your open Calendly times under its reply, and the visitor books one without leaving the chat.
How intoCHAT and Calendly work together
intoCHAT connects to Calendly's API with a personal access token you create in Calendly. It uses the token for three things only: listing your event types, reading open times for the event type you pick, and creating a booking (an invitee, in Calendly's terms) when a visitor confirms a time. The times always come from your Calendly availability, never from the AI model. The agent shows the time picker when the conversation fits, guided by your "When to offer booking" text. The visitor picks a day and a time, enters a name and an email address and clicks Book. Right before booking, intoCHAT asks Calendly again whether the time is still open, so a slot someone else just took is never double-booked. Calendly then sends its usual confirmation email and calendar invite. One requirement comes from Calendly, not from intoCHAT: Calendly only allows booking through its API on its paid plans, Standard and above. On Calendly's free plan, every booking is refused, so visitors would see open times they can't book. intoCHAT can't check your Calendly plan when you connect, so make sure you're on a paid plan first. Because the chat asks only for a name and an email address, some Calendly event types can't be booked from it. The section below explains which ones, and how to make an event type bookable. For what booking looks like for visitors and how to use it in sales and support, see the appointment booking feature page.
Connect Calendly to your intoCHAT agent
Create a personal access token
In Calendly, open Integrations, API & Webhooks, Personal access tokens and create a token with the four scopes shown below. Calendly shows the token only once, so copy it right away.
Open the Booking card
In intoCHAT, open your agent and go to the Actions tab. The Booking card is below your actions and forms. Under Calendar, choose Calendly.
Paste the token and click Connect
Paste it into Personal access token. intoCHAT checks it by loading your event types. If a scope is missing, the card names the scopes it needs. The token is stored encrypted and shown only as … and its last four characters.
Pick the event type visitors book
Each event type shows its title and length. One marked "(secret in Calendly)" is hidden on your booking page but can still be booked from the chat. One marked "(can't be booked from the chat)" can't be picked, and the reason is shown below the list.
Say when to offer booking, then save
Optionally write when the agent should offer booking, up to 1,000 characters. It is read by the agent, never shown to visitors. Click Save and booking is on.
Book a test meeting
Ask for a meeting in the Playground and book a time. Playground bookings are real: they create the meeting in your Calendly calendar and Calendly sends its emails, so cancel the test booking in Calendly.
Scopes for the personal access token
users:read
event_types:read
availability:read
scheduled_events:writeWithout one of these, the Booking card tells you which scopes are missing when you click Connect.
What syncs between intoCHAT and Calendly
Open times from your availability
Up to 5 days with open times and up to 8 times a day, spread over the day. The agent looks 7 days ahead by default, or at the days the visitor asks for, up to a year ahead.
Invitees created in Calendly
A confirmed time is booked in Calendly with the visitor's name, email and time zone, and the confirmation appears in the chat as a message from the agent.
Video calls, phone and in person
Event types with Zoom, Google Meet, Microsoft Teams, Webex or GoTo Meeting, a number the invitee calls, a place you set, or no location can be booked.
A Bookings list in intoCHAT
The Bookings card on the Leads tab lists each meeting booked from the chat, with the visitor's name, email, time zone and a link to the conversation.
Webhook and Slack alert
A Meeting booked webhook sends booking.created with provider calendly and the invitee's URI. Tick Booked meeting in Slack alerts to post each booking to a channel.
A picker in five languages
The picker's labels follow the widget language: English, German, French, Italian or Spanish. Your event type's title is shown as you wrote it in Calendly.
Frequently asked questions
Do I need a paid Calendly plan?
Yes. Calendly only allows booking through its API on its paid plans, Standard and above. On the free plan Calendly refuses every booking. intoCHAT can't check your plan when you connect, so test a booking in the Playground after connecting.
Why can't an event type be booked from the chat?
The chat asks only for a name and an email address. A Calendly event type can't be booked from it when a booking question is switched on and required, when every location asks the invitee for something (such as their phone number for you to call, or a place they choose), or when it is a meeting poll. Make the question optional or add a video call location, and it becomes bookable.
What happens with several locations or optional questions?
When an event type offers several locations, intoCHAT books the first one that needs nothing from the invitee. Optional booking questions stay empty.
How many bookings can go through Calendly's API?
Calendly limits it, not intoCHAT: on paid plans other than Enterprise, 10 bookings a minute, 50 an hour and 100 a day per Calendly user, and 5 a day during a Calendly trial. Past that, visitors see "Too many attempts. Please wait a moment and try again."
Which intoCHAT plan do I need?
Any plan, including Free. Booking a time doesn't use a message; the reply that shows the times counts like any other reply. On Starter and up, a procedure can tell the agent to offer booking after a few qualifying questions.
Does a cancellation in Calendly reach intoCHAT?
No. Nothing syncs back from Calendly. If a meeting is rescheduled or cancelled there, the Bookings list and the conversation keep showing the original booking, and no webhook is sent. Visitors cancel or reschedule through Calendly's own emails.
Calendly refuses my token. What should I check?
The card says "Calendly didn't accept this personal access token." Check that you copied all of it and that it hasn't been revoked or deleted. If the token is missing a scope, the card names the ones it needs. You can check tokens up to 10 times in 10 minutes.
Is a Calendly booking also a lead?
No. Bookings have their own list on the Leads tab, their own booking.created webhook and their own Slack alert. The name and email from the picker don't create a lead or send a lead alert.
See it answer from your own website
Paste your website address and chat with an agent built from your pages. It takes about a minute.
Create your agent freeFree plan, no credit card needed.