Google Calendar
Authentication Type: OAuth Description: Create, read, update, and delete calendar events, manage attendees, and query schedules through the Google Calendar API.
Authentication
To authenticate with Google Calendar, you need OAuth2 credentials with Calendar access scopes. This uses the same Google Workspace OAuth connection.
Events
Manage calendar events including creating, reading, updating, and deleting.
List Events
List events from a calendar with optional filtering by time range and search query.
Operation Type: Query (Read)
Parameters:
- calendarId
string(nullable): Calendar ID (defaults to"primary") - maxResults
number(nullable): Maximum events to return (default 10) - timeMin
string(nullable): Start of time range in RFC3339 format (e.g.,"2024-01-01T00:00:00Z") - timeMax
string(nullable): End of time range in RFC3339 format - q
string(nullable): Free-text search query to filter events - pageToken
string(nullable): Token for pagination
Returns:
- items
array of objects: List of calendar events- id
string: Event ID - summary
string(nullable): Event title - description
string(nullable): Event description - start
object: Start time- dateTime
string(nullable): RFC3339 for timed events - date
string(nullable): YYYY-MM-DD for all-day events - timeZone
string(nullable): Time zone
- dateTime
- end
object: End time (same structure as start) - attendees
array(nullable): List of attendees withemail,displayName,responseStatus - htmlLink
string(nullable): Link to event in Google Calendar - created
string(nullable): Creation timestamp - updated
string(nullable): Last update timestamp
- id
- nextPageToken
string(nullable): Token for the next page of results
Example Usage:
{
"calendarId": "primary",
"timeMin": "2024-01-01T00:00:00Z",
"timeMax": "2024-01-31T23:59:59Z",
"maxResults": 50
}
Create Event
Create a new calendar event with attendees, location, and time details.
Operation Type: Mutation (Write)
Parameters:
- calendarId
string(nullable): Calendar ID (defaults to"primary") - summary
string(required): Event title - description
string(nullable): Event description - start
object(required): Start time- dateTime
string(nullable): RFC3339 format for timed events - date
string(nullable): YYYY-MM-DD for all-day events - timeZone
string(nullable): Time zone (e.g.,"America/New_York")
- dateTime
- end
object(required): End time (same structure as start) - attendees
array(nullable): List of attendees withemailfield - location
string(nullable): Event location
Returns:
- id
string: Created event ID - htmlLink
string(nullable): Link to the event - summary
string(nullable): Event title - description
string(nullable): Event description - start
object: Start time details - end
object: End time details - created
string(nullable): Creation timestamp
Example Usage:
{
"summary": "Team Standup",
"description": "Daily sync meeting",
"start": {
"dateTime": "2024-01-15T09:00:00-05:00",
"timeZone": "America/New_York"
},
"end": {
"dateTime": "2024-01-15T09:30:00-05:00",
"timeZone": "America/New_York"
},
"attendees": [{ "email": "colleague@example.com" }],
"location": "Conference Room A"
}
Get Event
Retrieve detailed information about a specific calendar event.
Operation Type: Query (Read)
Parameters:
- calendarId
string(nullable): Calendar ID (defaults to"primary") - eventId
string(required): Event ID to retrieve
Returns:
- id
string: Event ID - summary
string(nullable): Event title - description
string(nullable): Event description - start
object: Start time details - end
object: End time details - attendees
array(nullable): Attendees withemail,displayName,responseStatus - htmlLink
string(nullable): Link to event - created
string(nullable): Creation timestamp - updated
string(nullable): Last update timestamp - status
string(nullable): Event status ("confirmed","tentative","cancelled") - location
string(nullable): Event location - organizer
object(nullable): Event organizer- email
string(nullable): Organizer email - displayName
string(nullable): Organizer name
- email
Example Usage:
{
"eventId": "abc123def456"
}
Update Event
Update an existing calendar event's details, time, attendees, or location.
Operation Type: Mutation (Write)
Parameters:
- calendarId
string(nullable): Calendar ID (defaults to"primary") - eventId
string(required): Event ID to update - summary
string(nullable): Updated event title - description
string(nullable): Updated description - start
object(nullable): Updated start time- dateTime
string(nullable): RFC3339 format - date
string(nullable): YYYY-MM-DD format - timeZone
string(nullable): Time zone
- dateTime
- end
object(nullable): Updated end time (same structure as start) - attendees
array(nullable): Updated attendee list - location
string(nullable): Updated location
Returns:
- id
string: Event ID - htmlLink
string(nullable): Link to event - summary
string(nullable): Event title - description
string(nullable): Event description - start
object: Start time details - end
object: End time details - updated
string(nullable): Last update timestamp
Example Usage:
{
"eventId": "abc123def456",
"summary": "Updated Team Standup",
"location": "Conference Room B"
}
Delete Event
Delete a calendar event.
Operation Type: Mutation (Write)
Parameters:
- calendarId
string(nullable): Calendar ID (defaults to"primary") - eventId
string(required): Event ID to delete
Returns:
- success
boolean: Whether the deletion was successful
Example Usage:
{
"eventId": "abc123def456"
}
Common Use Cases
Schedule Management:
- List upcoming events across calendars to build daily or weekly agendas
- Create events programmatically from CRM deals or project milestones
- Sync meeting schedules with external tools and databases
Event Automation:
- Auto-create recurring events based on workflow triggers
- Update event details when project timelines change
- Clean up cancelled or outdated events automatically
Attendee Coordination:
- Add attendees to events from contact lists or team rosters
- Track RSVP statuses by querying event attendee details
- Manage room bookings and resource allocation through calendar events