How to build an AI scheduling assistant that books meetings via email
Combine Cal.com booking links with an AI email agent so requests like can we meet next week get answered with a real time slot.
Back-and-forth scheduling emails are a productivity tax. This guide wires an AI agent to your calendar availability through Cal.com so that when someone emails asking to meet, the agent reads your free slots and replies with concrete options or a booking link, instead of leaving you to negotiate by hand.
- A Cal.com account (free tier is fine) connected to your calendar
- A Cal.com API key
- An automation tool such as Make, n8n, or a small script
- An AI API key
Step 1: Connect your calendar to Cal.com
In Cal.com, add your Google or Outlook calendar under Settings, Calendars. This lets Cal.com see your real busy times so it never offers a slot you are already booked for. Create an event type, for example a 30 minute meeting, and note its link.
Step 2: Get available slots from the API
Cal.com exposes a slots endpoint. Your automation calls it with a date range and gets back open times. This is the data your AI agent will turn into a friendly reply.
Step 3: Let the AI compose the reply
Pass the incoming email plus the slots JSON to the model and ask it to propose two or three options in natural language and include the booking link. Keep the agent honest by telling it to only offer times present in the data.
You are my scheduling assistant. Someone emailed asking to meet.
Offer 2 to 3 times ONLY from the available slots below, in the sender's
likely timezone. Be brief and friendly. Always include this booking link
so they can confirm: https://cal.com/alex/30min
Their email:
{{email_body}}
Available slots (my local time):
{{slots_json}}Step 4: Send and let bookings flow back
Send the AI reply as a Gmail or Outlook draft (or auto-send if you trust it). When the recipient picks a time, Cal.com writes the event to your calendar and emails both of you. The loop is closed without you typing a single date.
Result: a meeting request that used to take four emails now ends in one reply, with the booked event already on both calendars.
Watch related tutorials
13:10
1:42:18
28:14
41:09
9:47
8:23