Cal.com
This guide explains how to connect Cal.com with NewAge Ai, link your calendars and meeting providers, and use Cal.com actions inside your chatbot automations.
SECTION 1: Connect Cal.Com to NewAge Ai
Step 1: Generate an API Key in Cal.com
Log in to your Cal.com account. Go to Settings. In the Developer section, click API Keys. There, you can create an API Key. Create the key and copy it immediately.
You can directly go to api key section with this URL:
You will use this API key inside NewAge Ai to connect your account.
Step 2: Connect Cal.com inside NewAge Ai
Log in to your NewAge Ai dashboard. Go to Integrations. Find Cal.com in the integrations list. Paste your API key. Click Connect
Once connected, a verified icon will successfully appear. Your Cal.com email and username will be displayed. This confirms the connection is active.
SECTION 2: Using Cal.Com Actions in NewAge Ai
After integration, you can use the following actions inside automation flows.
Action: Get user profile
Retrieves the profile details of the connected Cal.com user.
Returned data: Name, Email, Timezone, Week start day, etc.
When to use: Use this action to fetch host information for personalization, timezone handling, or scheduling logic.
Action: Generate booking url
Generates a booking link for a specific event type and attendee.
Required fields: Event Type ID, Attendee Name, Attendee Email
Returned data: Booking URL
When to use: Use this when you want users to select a time slot manually via a shared link.
Action: Find bookings
Required fields: Event Type ID
Optional fields: Start Time (ISO 8601 format), End Time (ISO 8601 format), Attendee Email, Attendee Name, etc.
Returned data: Booking ID, UID, Title, Description, Status, etc.
When to use: Use this to check existing bookings or filter bookings within a date range.
Action: Create a booking Creates a booking directly without sending a link.
Required fields: Event Type ID, Start Time (ISO 8601 format), Attendee Email, Attendee Name
Optional fields: Attendee Phone, Attendee Timezone, Attendee Language, etc.
Returned data: Booking ID, UID, Title, Meeting URL, Event details, Start time, etc.
When to use: this is when the chatbot handles full scheduling automatically.
Action: Get a booking Retrieves details of a specific booking.
Required field: Booking UID
Returned data: Full booking details, including event, attendee, and meeting info.
When to use: Use this when you need complete information for a specific booking.
Action: Reschedule a booking Updates the scheduled time of an existing booking.
Required fields: Booking UID, New Start Time (ISO 8601 format), Rescheduled By (email)
Optional field: Rescheduling Reason
When to use: Use this when a user wants to change their appointment time.
Action: Cancel a booking
Cancels an existing booking.
Required field: Booking UID
Optional fields: Cancellation Reason, Cancel subsequent bookings
When to use: Use this when a booking needs to be cancelled.
Action: Mark a booking absence
Mark an attendee as absent (a "no-show") for a specific scheduled meeting. Can also mark host absence.
Required field: Booking UID
When to use: Track no-shows. It enables automated systems to record when an invitee fails to attend a scheduled event.
Action: Confirm a booking
Confirms a booking that requires approval.
Required field: Booking UID
When to use: Use when bookings require manual confirmation.
Action: Decline a booking
Declines a booking request.
Required field: Booking UID
Optional field: Decline Reason
When to use: Use when a booking request cannot be accepted.
Action: Get calendar links
Retrieves calendar and meeting links for a booking.
Required field: Booking UID
Returned data: Google Meet link, Microsoft Office link, Outlook link, ICS file
When to use: Use this to send meeting or calendar links to users.
Action: Get booking references
Retrieves reference data associated with a booking.
Required field: Booking UID
Returned data: Reference identifiers, Metadata
When to use: Use for integrations, tracking, or external systems.
Action: List event types
Retrieves all available event types.
When to use: Use to display or select available booking types.
Action: Get event type
Retrieves details of a specific event type.
Required field: Event Type ID
When to use: Use to get configuration details of a specific event.
Action: Delete event type
Deletes an event type.
Required field: Event Type ID
When to use: Use when removing unused or outdated event types.
Action: List Schedules
Retrieves all schedules.
When to use: Use to view all configured availability schedules.
Action: Get default schedule
Retrieves the default schedule.
When to use: Use when applying default availability rules.
Action: Get schedule
Retrieves details of a specific schedule.
Required field: Schedule ID
When to use: Use to inspect a particular schedule.
Action: Delete schedule
Deletes a schedule.
Required field: Schedule ID
When to use: Use when removing schedules no longer needed.
Action: Find available slots
Finds available time slots for booking.
Required field: Event type ID or Event Slug is required, Start Time (ISO 8601 format), End Time (ISO 8601 format)
When to use: Use to show available times to users before booking.
Action: Reserve a slot
Temporarily reserves a time slot.
Required field: Slot details
When to use: Use to hold a slot before confirming booking.
Action: Get a reserved slot
Retrieves details of a reserved slot.
Required field: Slot UID
When to use: Use to verify reservation details.
Action: Delete reserved slot
Releases a reserved slot.
Required field: Slot UID
When to use: Use to free up a slot if not booked.
Action: Update reserved slot
Updates details of a reserved slot.
Required field: Slot UID, Event ID, Start Time (ISO 8601 format)
When to use: Use when modifying reservation details.