Google Calendar connector
The Google Calendar connector enables searching and accessing events and calendars in Google Calendar.
You can create connectors in Stack Management > Connectors.
Google Calendar connectors have the following configuration properties:
- Bearer Token
- A Google OAuth 2.0 access token with Google Calendar API scopes. Refer to Get API credentials for instructions.
You can test connectors when you create or edit the connector in Kibana. The test verifies connectivity by fetching the authenticated user's calendar list from the Google Calendar API.
The Google Calendar connector has the following actions:
- Search events
-
Search for events in Google Calendar by keywords. Matches against event summary, description, location, and attendee names.
query(required): Free text search terms to find events (for example,team standup,budget review,John Smith).calendarId(optional): Calendar ID to search. Useprimaryfor the user's primary calendar, a specific calendar ID from list calendars, or a person's email address to access their calendar. Defaults toprimary.timeMin(optional): Lower bound (inclusive) for event start time as an RFC3339 timestamp (for example,2024-01-01T00:00:00Z).timeMax(optional): Upper bound (exclusive) for event start time as an RFC3339 timestamp (for example,2024-12-31T23:59:59Z).maxResults(optional): Maximum number of events to return (1 to 2500). Defaults to 50.
- Get event
-
Retrieve full details of a specific event by its ID, including recurrence info, conference links, and attachments.
eventId(required): The ID of the event to retrieve.calendarId(optional): Calendar ID containing the event. Useprimaryfor the user's primary calendar, or a person's email address to access their calendar. Defaults toprimary.
- List calendars
-
List all calendars accessible to the authenticated user, including calendar ID, name, description, access role, and time zone.
pageToken(optional): Pagination token from a previous response.
- List events
-
List events from a calendar, optionally filtered by time range.
calendarId(optional): Calendar ID to list events from. Useprimaryfor the user's primary calendar, or a person's email address to access their calendar. Defaults toprimary.timeMin(optional): Lower bound (inclusive) for event start time as an RFC3339 timestamp.timeMax(optional): Upper bound (exclusive) for event start time as an RFC3339 timestamp.maxResults(optional): Maximum number of events to return (1 to 2500). Defaults to 50.pageToken(optional): Pagination token from a previous response.orderBy(optional): Sort order:startTime(chronological, default) orupdated(last modification time).
- Free/Busy
-
Check free/busy availability for one or more people or calendars over a time range. More token-efficient than listing full events when you only need to know if someone is available.
timeMin(required): Start of the time interval to check as an RFC3339 timestamp (for example,2024-01-15T09:00:00Z).timeMax(required): End of the time interval to check as an RFC3339 timestamp (for example,2024-01-15T18:00:00Z).calendarIds(required): List of calendar IDs to check availability for. Useprimaryfor the user's own calendar, or a person's email address to check their availability.timeZone(optional): Time zone for the query. Defaults to UTC.
Use the Action configuration settings to customize connector networking, such as proxies, certificates, or TLS settings. You can set configurations that apply to all your connectors or use xpack.actions.customHostSettings to set per-host configurations.
To use the Google Calendar connector, you need a Google OAuth 2.0 access token with Calendar API scopes. You can obtain one using the Google OAuth 2.0 Playground:
- Open the OAuth 2.0 Playground.
- In the list of APIs, select Calendar API v3 and select the
https://www.googleapis.com/auth/calendar.readonlyscope (orhttps://www.googleapis.com/auth/calendarfor full access). - Select Authorize APIs and sign in with your Google account.
- Select Exchange authorization code for tokens.
- Copy the Access token and enter it as the Bearer Token when configuring the connector in Kibana.
OAuth 2.0 Playground tokens expire after 1 hour. For production use, implement a proper OAuth 2.0 flow with token refresh. Refer to the Google Identity documentation for details.