Cal.com
Scheduling platform integration for AI voice agents
Overview
With the Cal.com integration, your AI voice agent can seamlessly schedule meetings by checking calendar availability and booking appointments. This integration streamlines the scheduling process by automatically verifying available time slots, collecting attendee information, and creating calendar events.
Benefits include:
- Eliminating scheduling back-and-forth
- Reducing manual effort with automated booking
- Enhanced meeting booking experience for callers
- Real-time availability checking
How it works
- Initial inquiry & meeting details: Configure your agent to ask for the meeting purpose, preferred date/time, and duration to gather all necessary scheduling information.
- Check calendar availability: Use the Get Available Slots tool to fetch open time slots, verify if the requested time is available, and suggest alternatives if needed.
- Collect contact information: Once a time is agreed upon, collect and validate the attendee's full name, email address, and time zone information.
- Create the meeting: Use the Create Booking tool to create the booking, confirm with the attendee, and inform them they'll receive a calendar invitation.
Authentication Setup
Cal.com uses API key authentication. You'll need to generate an API key from your Cal.com account.
Step 1: Generate Cal.com API Key
- Log in to your Cal.com account
- Go to Settings → Developer → API Keys
- Click Create new API key
- Give it a name (e.g., "urvo Integration")
- Copy the generated API key
Step 2: Connect to urvo
- Go to Integrations in your urvo dashboard
- Find Cal.com and click Connect
- Paste your API key
- Click Validate to test the connection
- Click Save to complete setup
Important: Keep your API key secure. If you suspect it's been compromised, revoke it in Cal.com and generate a new one.
Available tools
Cal.com's tools can be enabled once you connect it. Open the integration and turn on any of these for your agents:
| Tool | Description |
|---|---|
| Get Available Slots | Check whether a specific date/time is open for booking. |
| Create Booking | Book an appointment once the time is confirmed available. |
| Get Booking | Retrieve the details of a specific booking. |
| Reschedule Booking | Move an existing booking to a new time. |
| Cancel Booking | Cancel a booking and notify attendees. |
Configuration Tips
Event Type ID
Each Cal.com event type has a unique ID. You'll need this to check availability and book meetings. Find it in your Cal.com dashboard under the event type settings.
Time Zones
By default, your agent doesn't know the current date or time. Consider adding the current date/time to your agent's system prompt using dynamic variables, or create a tool that fetches the current time.
Security Considerations
- API Key security: Store your API key securely — it's encrypted in urvo
- HTTPS only: All API calls use HTTPS encryption
- Minimal data: Only collect necessary attendee information
- Event type protection: Never expose event type IDs or API details to callers
Troubleshooting
Invalid API key
- Verify the API key was copied correctly (no extra spaces)
- Check if the API key is still active in Cal.com
- Generate a new key if the current one expired
No available slots
- Verify the event type ID is correct
- Check your availability settings in Cal.com
- Ensure the date range requested is within your availability window
Booking failed
- Verify attendee email is valid
- Check the time slot is still available (not double-booked)
- Ensure all required fields are provided
Next Steps
- How to Add Integrations — General setup guide
- Configure Agent Tools — Enable tools for your agents
- HubSpot Integration — CRM for contacts and deals