Mirra
IntegrationsGoogle

Google Calendar

SDK reference for google calendar operations

Overview

Google Calendar event management and scheduling

  • Category: productivity
  • Auth Required: Yes
  • Supported Modes: standard, delegated

Operations

createEvent

Create a new calendar event

Arguments:

  • summary (string, required): Event title/summary
  • start (object, required): Start time object with dateTime and optional timeZone
  • end (object, required): End time object with dateTime and optional timeZone
  • description (string, optional): Event description
  • location (string, optional): Event location
  • attendees (array, optional): Array of attendee email addresses

Returns:

AdapterOperationResult - Created event information

Response Fields:

FieldTypeDescription
eventIdstringCreated event ID
summarystringEvent title
startobjectEvent start time
endobjectEvent end time
htmlLinkstringLink to view event in Google Calendar

Example:

const result = await mirra.googleCalendar.createEvent({
  summary: "example",
  start: {},
  end: {}
});

listEvents

List calendar events

Arguments:

  • timeMin (string, optional): Start time for events to list (ISO 8601)
  • timeMax (string, optional): End time for events to list (ISO 8601)
  • maxResults (number, optional): Maximum number of events to return (default: 50, max: 100)
  • query (string, optional): Search query to filter events

Returns:

AdapterOperationResult - List of calendar events

Response Fields:

FieldTypeDescription
countnumberNumber of events returned
querystringSearch query used (optional)
timeMinstringStart of time range (optional)
timeMaxstringEnd of time range (optional)
eventsGoogleCalendarEventSummary[]List of calendar events
events item fields (GoogleCalendarEventSummary)
FieldTypeDescription
idstringCalendar event ID
summarystringEvent title
locationstringEvent location
startTimestringStart time (ISO 8601)
endTimestringEnd time (ISO 8601)
isAllDaybooleanWhether this is an all-day event
statusstringEvent status: confirmed, tentative, cancelled
htmlLinkstringLink to view event in Google Calendar
isRecurringbooleanWhether this is a recurring event
attendeeCountnumberNumber of attendees

Example:

const result = await mirra.googleCalendar.listEvents({});

getEvents

Get calendar events (alias for listEvents)

Arguments:

  • timeMin (string, optional): Start time for events to list (ISO 8601)
  • timeMax (string, optional): End time for events to list (ISO 8601)
  • maxResults (number, optional): Maximum number of events to return (default: 50, max: 100)
  • query (string, optional): Search query to filter events

Returns:

AdapterOperationResult - List of calendar events

Response Fields:

FieldTypeDescription
countnumberNumber of events returned
querystringSearch query used (optional)
timeMinstringStart of time range (optional)
timeMaxstringEnd of time range (optional)
eventsGoogleCalendarEventSummary[]List of calendar events
events item fields (GoogleCalendarEventSummary)
FieldTypeDescription
idstringCalendar event ID
summarystringEvent title
locationstringEvent location
startTimestringStart time (ISO 8601)
endTimestringEnd time (ISO 8601)
isAllDaybooleanWhether this is an all-day event
statusstringEvent status: confirmed, tentative, cancelled
htmlLinkstringLink to view event in Google Calendar
isRecurringbooleanWhether this is a recurring event
attendeeCountnumberNumber of attendees

Example:

const result = await mirra.googleCalendar.getEvents({});

getEvent

Get a specific calendar event by ID

Arguments:

  • eventId (string, required): Calendar event ID

Returns:

AdapterOperationResult - Calendar event details

Response Fields:

FieldTypeDescription
idstringCalendar event ID
summarystringEvent title
descriptionstringEvent description
locationstringEvent location
startTimestringStart time (ISO 8601)
endTimestringEnd time (ISO 8601)
isAllDaybooleanWhether this is an all-day event
timeZonestringEvent timezone
creatorGoogleCalendarAttendeeEvent creator
creator item fields (GoogleCalendarAttendee)
FieldTypeDescription
emailstringAttendee email address
namestringAttendee display name (optional)
responseStatusstringResponse status: needsAction, declined, tentative, accepted (optional)
isOrganizerbooleanWhether this attendee is the organizer (optional)
isSelfbooleanWhether this is the authenticated user (optional)

| organizer | GoogleCalendarAttendee | Event organizer |

organizer item fields (GoogleCalendarAttendee)
FieldTypeDescription
emailstringAttendee email address
namestringAttendee display name (optional)
responseStatusstringResponse status: needsAction, declined, tentative, accepted (optional)
isOrganizerbooleanWhether this attendee is the organizer (optional)
isSelfbooleanWhether this is the authenticated user (optional)

| attendees | GoogleCalendarAttendee[] | List of attendees |

attendees item fields (GoogleCalendarAttendee)
FieldTypeDescription
emailstringAttendee email address
namestringAttendee display name (optional)
responseStatusstringResponse status: needsAction, declined, tentative, accepted (optional)
isOrganizerbooleanWhether this attendee is the organizer (optional)
isSelfbooleanWhether this is the authenticated user (optional)

| attendeeCount | number | Number of attendees | | status | string | Event status: confirmed, tentative, cancelled | | htmlLink | string | Link to view event in Google Calendar | | isRecurring | boolean | Whether this is a recurring event | | recurringEventId | string | ID of the recurring event series (optional) | | created | string | When the event was created (ISO 8601) | | updated | string | When the event was last updated (ISO 8601) |

Example:

const result = await mirra.googleCalendar.getEvent({
  eventId: "abc123"
});

updateEvent

Update an existing calendar event

Arguments:

  • eventId (string, required): Calendar event ID to update
  • summary (string, optional): Updated event title/summary
  • description (string, optional): Updated event description
  • location (string, optional): Updated event location
  • start (object, optional): Updated start time object with dateTime and optional timeZone
  • end (object, optional): Updated end time object with dateTime and optional timeZone

Returns:

AdapterOperationResult - Updated event information

Response Fields:

FieldTypeDescription
eventIdstringUpdated event ID
summarystringEvent title
updatedbooleanWhether the update succeeded

Example:

const result = await mirra.googleCalendar.updateEvent({
  eventId: "abc123"
});

deleteEvent

Delete a calendar event

Arguments:

  • eventId (string, required): Calendar event ID to delete

Returns:

AdapterOperationResult - Deletion confirmation

Response Fields:

FieldTypeDescription
eventIdstringDeleted event ID
deletedbooleanWhether the deletion succeeded

Example:

const result = await mirra.googleCalendar.deleteEvent({
  eventId: "abc123"
});

searchEvents

Search calendar events by text query

Arguments:

  • query (string, required): Search query to filter events
  • timeMin (string, optional): Start time for events to search (ISO 8601)
  • timeMax (string, optional): End time for events to search (ISO 8601)
  • maxResults (number, optional): Maximum number of events to return (default: 50, max: 100)

Returns:

AdapterOperationResult - List of matching calendar events

Response Fields:

FieldTypeDescription
countnumberNumber of events returned
querystringSearch query used
timeMinstringStart of time range (optional)
timeMaxstringEnd of time range (optional)
eventsGoogleCalendarEventSummary[]List of matching calendar events
events item fields (GoogleCalendarEventSummary)
FieldTypeDescription
idstringCalendar event ID
summarystringEvent title
locationstringEvent location
startTimestringStart time (ISO 8601)
endTimestringEnd time (ISO 8601)
isAllDaybooleanWhether this is an all-day event
statusstringEvent status: confirmed, tentative, cancelled
htmlLinkstringLink to view event in Google Calendar
isRecurringbooleanWhether this is a recurring event
attendeeCountnumberNumber of attendees

Example:

const result = await mirra.googleCalendar.searchEvents({
  query: "example"
});

On this page