Cal.com Scheduling AI Action

The Cal.com Scheduling AI Action allows your chatbot to display a scheduling link or embed a calendar using an iframe directly in the chat. This is ideal when you want users to book meetings or demos seamlessly from within the conversation. For this custom action, you choose a type of Show Button or iFrame Only, and your AI agent will embed the Cal.com booking form using the visitor’s name and email.

Use Case: Schedule a Demo or Book a Metting

Suppose your team offers product demos, sales calls, or support consultations. With this Custom Action, the AI agent can detect when a visitor asks to meet and show a booking form that passes along their name, email, and meeting date directly to Cal.com.

Cal.com Custom Action Setup

Step-by-Step Setup

To set this up, go to your App Settings, then the AI Chatbot tab, and click Custom Actions. Click "New Custom Action" and complete the fields below:

Cal.com Custom Action Setup

AI Action Field Definitions

  • Action Type: Select Show Button or iFrame Only
  • Action Name: A descriptive name like show_cal_scheduler
  • When to use: Example: “Use when the visitor asks to schedule a meeting, book a call, or set up a demo.”
  • Triggered response: Example: “Sure, you can book a time that works for you below.”
  • Collect data inputs for action: Use name and email
  • iFrame URL: Your Cal.com booking link with dynamic parameters:
    https://cal.com/youraccount/30min?overlayCalendar=true&date={{meetingDate}}&email={{email}}&name={{name}}
  • iFrame Height: Set to a value like 600

How the Cal.com Chatbot Flow Works

1. The chatbot detects the request

  • The visitor says something like “I want to book a call” or “Can I schedule a demo?”

2. The chatbot replies with the embedded Cal.com scheduler

It generates the iframe with the visitor’s name and email prefilled:

<iframe src="https://cal.com/youraccount/30min?overlayCalendar=true&date={{meetingDate}}&email={{email}}&name={{name}}"
        width="100%" height="600" frameborder="0"></iframe>
          

The visitor can then book a time slot without leaving the chat, creating a seamless and personalized scheduling experience.