Calendar
Description: Enable agents to interact with Google Calendar events.
Author: Arcade AI
Code: GitHub
Auth: OAuth2
The Arcade AI Calendar toolkit provides a pre-built set of tools for interacting with Google Calendar. These tools make it easy to build agents and AI apps that can:
- Create, update, list, and delete events
Install
pip install arcade_google
Available Tools
Tool Name | Description |
---|---|
CreateEvent | Create a new event in Google Calendar. |
ListEvents | List events from Google Calendar. |
UpdateEvent | Update an existing event in Google Calendar. |
DeleteEvent | Delete an event from Google Calendar. |
If you need to perform an action that's not listed here, you can get in touch with us to request a new tool, or create your own tools with the Google auth provider.
CreateEvent
Create a new event in the specified calendar.
Parameters
summary
(string, required) The title of the eventstart_datetime
(string, required) The datetime when the event starts in ISO 8601 format, e.g., '2024-12-31T15:30:00'.end_datetime
(string, required) The datetime when the event ends in ISO 8601 format, e.g., '2024-12-31T17:30:00'.calendar_id
(string, optional) The ID of the calendar to create the event in, usually 'primary'.description
(string, optional) The description of the eventlocation
(string, optional) The location of the eventvisibility
(string, optional) The visibility of the eventattendee_emails
(array, optional) The list of attendee emails. Must be valid email addresses e.g., [email protected].
ListEvents
List events from the specified calendar within the given datetime range.
min_end_datetime serves as the lower bound (exclusive) for an event's end time. max_start_datetime serves as the upper bound (exclusive) for an event's start time.
For example: If min_end_datetime is set to 2024-09-15T09:00:00 and max_start_datetime is set to 2024-09-16T17:00:00, the function will return events that:
- End after 09:00 on September 15, 2024 (exclusive)
- Start before 17:00 on September 16, 2024 (exclusive) This means an event starting at 08:00 on September 15 and ending at 10:00 on September 15 would be included, but an event starting at 17:00 on September 16 would not be included.
Parameters
min_end_datetime
(string, required) Filter by events that end on or after this datetime in ISO 8601 format, e.g., '2024-09-15T09:00:00'.max_start_datetime
(string, required) Filter by events that start before this datetime in ISO 8601 format, e.g., '2024-09-16T17:00:00'.calendar_id
(string, optional) The ID of the calendar to list events frommax_results
(integer, optional) The maximum number of events to return
UpdateEvent
Update an existing event in the specified calendar with the provided details. Only the provided fields will be updated; others will remain unchanged.
updated_start_datetime
and updated_end_datetime
are independent and can be provided separately.
Parameters
event_id
(string, required) The ID of the event to updateupdated_start_datetime
(string, optional) The updated datetime that the event starts in ISO 8601 format, e.g., '2024-12-31T15:30:00'.updated_end_datetime
(string, optional) The updated datetime that the event ends in ISO 8601 format, e.g., '2024-12-31T17:30:00'.updated_calendar_id
(string, optional) The updated ID of the calendar containing the event.updated_summary
(string, optional) The updated title of the eventupdated_description
(string, optional) The updated description of the eventupdated_location
(string, optional) The updated location of the eventupdated_visibility
(enum (EventVisibility), optional) The visibility of the eventattendee_emails_to_add
(array, optional) The list of attendee emails to add. Must be valid email addresses e.g., [email protected].attendee_emails_to_remove
(array, optional) The list of attendee emails to remove. Must be valid email addresses e.g., [email protected].send_updates
(enum (SendUpdatesOptions), optional, Defaults to'all'
) Should attendees be notified of the update? (none, all, external_only)
DeleteEvent
Delete an event from Google Calendar.
Parameters
event_id
(string, required) The ID of the event to deletecalendar_id
(string, optional, Defaults to'primary'
) The ID of the calendar containing the eventsend_updates
(enum (SendUpdatesOptions), optional, Defaults to'all'
) Specifies which attendees to notify about the deletion
Auth
The Arcade AI Calendar toolkit uses the Google auth provider to connect to users' Google accounts.
With the hosted Arcade AI Engine, there's nothing to configure. Your users will see Arcade AI (demo)
as the name of the application that's requesting permission.
The hosted Arcade Engine is intended for demo and testing purposes only, not for production use. To use Arcade AI and Google Calendar in production, you must use a self-hosted instance of the Arcade Engine.
With a self-hosted installation of Arcade AI, you need to configure the Google auth provider with your own Google app credentials.