Overview
Enable your agents to manage calendar events, schedules, and availability through Google Calendar. Create and update events, manage attendees, check availability, and streamline your scheduling workflows with AI-powered automation.Prerequisites
Before using the Google Calendar integration, ensure you have:- A CrewAI Enterprise account with an active subscription
- A Google account with Google Calendar access
- Connected your Google account through the Integrations page
Setting Up Google Calendar Integration
1. Connect Your Google Account
- Navigate to CrewAI Enterprise Integrations
- Find Google Calendar in the Authentication Integrations section
- Click Connect and complete the OAuth flow
- Grant the necessary permissions for calendar and contact access
- Copy your Enterprise Token from Account Settings
2. Install Required Package
Available Actions
GOOGLE_CALENDAR_CREATE_EVENT
GOOGLE_CALENDAR_CREATE_EVENT
Description: Create an event in Google Calendar.Parameters:
eventName
(string, required): Event name.startTime
(string, required): Start time - Accepts Unix timestamp or ISO8601 date formats.endTime
(string, optional): End time - Defaults to one hour after the start time if left blank.calendar
(string, optional): Calendar - Use Connect Portal Workflow Settings to allow users to select which calendar the event will be added to. Defaults to the user’s primary calendar if left blank.attendees
(string, optional): Attendees - Accepts an array of email addresses or email addresses separated by commas.eventLocation
(string, optional): Event location.eventDescription
(string, optional): Event description.eventId
(string, optional): Event ID - An ID from your application to associate this event with. You can use this ID to sync updates to this event later.includeMeetLink
(boolean, optional): Include Google Meet link? - Automatically creates Google Meet conference link for this event.
GOOGLE_CALENDAR_UPDATE_EVENT
GOOGLE_CALENDAR_UPDATE_EVENT
Description: Update an existing event in Google Calendar.Parameters:
eventId
(string, required): Event ID - The ID of the event to update.eventName
(string, optional): Event name.startTime
(string, optional): Start time - Accepts Unix timestamp or ISO8601 date formats.endTime
(string, optional): End time - Defaults to one hour after the start time if left blank.calendar
(string, optional): Calendar - Use Connect Portal Workflow Settings to allow users to select which calendar the event will be added to. Defaults to the user’s primary calendar if left blank.attendees
(string, optional): Attendees - Accepts an array of email addresses or email addresses separated by commas.eventLocation
(string, optional): Event location.eventDescription
(string, optional): Event description.
GOOGLE_CALENDAR_LIST_EVENTS
GOOGLE_CALENDAR_LIST_EVENTS
Description: List events from Google Calendar.Parameters:
calendar
(string, optional): Calendar - Use Connect Portal Workflow Settings to allow users to select which calendar the event will be added to. Defaults to the user’s primary calendar if left blank.after
(string, optional): After - Filters events that start after the provided date (Unix in milliseconds or ISO timestamp). (example: “2025-04-12T10:00:00Z or 1712908800000”).before
(string, optional): Before - Filters events that end before the provided date (Unix in milliseconds or ISO timestamp). (example: “2025-04-12T10:00:00Z or 1712908800000”).
GOOGLE_CALENDAR_GET_EVENT_BY_ID
GOOGLE_CALENDAR_GET_EVENT_BY_ID
Description: Get a specific event by ID from Google Calendar.Parameters:
eventId
(string, required): Event ID.calendar
(string, optional): Calendar - Use Connect Portal Workflow Settings to allow users to select which calendar the event will be added to. Defaults to the user’s primary calendar if left blank.
GOOGLE_CALENDAR_DELETE_EVENT
GOOGLE_CALENDAR_DELETE_EVENT
Description: Delete an event from Google Calendar.Parameters:
eventId
(string, required): Event ID - The ID of the calendar event to be deleted.calendar
(string, optional): Calendar - Use Connect Portal Workflow Settings to allow users to select which calendar the event will be added to. Defaults to the user’s primary calendar if left blank.
GOOGLE_CALENDAR_GET_CONTACTS
GOOGLE_CALENDAR_GET_CONTACTS
Description: Get contacts from Google Calendar.Parameters:
paginationParameters
(object, optional): Pagination Parameters.
GOOGLE_CALENDAR_SEARCH_CONTACTS
GOOGLE_CALENDAR_SEARCH_CONTACTS
Description: Search for contacts in Google Calendar.Parameters:
query
(string, optional): Search query to search contacts.
GOOGLE_CALENDAR_LIST_DIRECTORY_PEOPLE
GOOGLE_CALENDAR_LIST_DIRECTORY_PEOPLE
Description: List directory people.Parameters:
paginationParameters
(object, optional): Pagination Parameters.
GOOGLE_CALENDAR_SEARCH_DIRECTORY_PEOPLE
GOOGLE_CALENDAR_SEARCH_DIRECTORY_PEOPLE
Description: Search directory people.Parameters:
query
(string, required): Search query to search contacts.paginationParameters
(object, optional): Pagination Parameters.
GOOGLE_CALENDAR_LIST_OTHER_CONTACTS
GOOGLE_CALENDAR_LIST_OTHER_CONTACTS
Description: List other contacts.Parameters:
paginationParameters
(object, optional): Pagination Parameters.
GOOGLE_CALENDAR_SEARCH_OTHER_CONTACTS
GOOGLE_CALENDAR_SEARCH_OTHER_CONTACTS
Description: Search other contacts.Parameters:
query
(string, optional): Search query to search contacts.
GOOGLE_CALENDAR_GET_AVAILABILITY
GOOGLE_CALENDAR_GET_AVAILABILITY
Description: Get availability information for calendars.Parameters:
timeMin
(string, required): The start of the interval. In ISO format.timeMax
(string, required): The end of the interval. In ISO format.timeZone
(string, optional): Time zone used in the response. Optional. The default is UTC.items
(array, optional): List of calendars and/or groups to query. Defaults to the user default calendar.
Usage Examples
Basic Calendar Agent Setup
Filtering Specific Calendar Tools
Event Management and Updates
Contact and Availability Management
Automated Scheduling Workflows
Troubleshooting
Common Issues
Authentication Errors- Ensure your Google account has the necessary permissions for calendar access
- Verify that the OAuth connection includes all required scopes for Google Calendar API
- Check if calendar sharing settings allow the required access level
- Verify that time formats are correct (ISO8601 or Unix timestamps)
- Ensure attendee email addresses are properly formatted
- Check that the target calendar exists and is accessible
- Verify time zones are correctly specified
- Use proper ISO format for time ranges when checking availability
- Ensure time zones are consistent across all operations
- Verify that calendar IDs are correct when checking multiple calendars
- Ensure search queries are properly formatted
- Check that directory access permissions are granted
- Verify that contact information is up to date and accessible
- Verify that event IDs are correct and events exist
- Ensure you have edit permissions for the events
- Check that calendar ownership allows modifications
Getting Help
Need Help?
Contact our support team for assistance with Google Calendar integration setup or troubleshooting.