> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cassidyai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Google Calendar events

> Retrieve a list of Google Calendar events within a date range from a Workflow.

Retrieve a list of events from your Google Calendar within a [Workflow](/workflows/overview). Use this action for meeting prep, reminders, daily summaries, or any automation that needs to know what's on your calendar.

## Set up the action

<Steps>
  <Step title="Add the action">
    In the [Workflow builder](/workflows/building), click the **+** button between existing blocks. Select **Get Google Calendar Events** from the action list.

    <Frame>
      <img src="https://mintcdn.com/cassidy/PSOwom-PV6-w07rd/images/reference/get-google-calendar-events-img-0.png?fit=max&auto=format&n=PSOwom-PV6-w07rd&q=85&s=1c7e5c73950d1104c2ec0a181a43babc" alt="Adding the Get Google Calendar Events action in the Workflow builder" width="601" height="236" data-path="images/reference/get-google-calendar-events-img-0.png" />
    </Frame>
  </Step>

  <Step title="Rename the action (optional)">
    Click the action name to enter a more descriptive label for easier variable reference later.

    <Frame>
      <img src="https://mintcdn.com/cassidy/PSOwom-PV6-w07rd/images/reference/get-google-calendar-events-img-1.png?fit=max&auto=format&n=PSOwom-PV6-w07rd&q=85&s=de3bbad4b4ee269a99fdd33f39b9f2c2" alt="Renaming the Get Google Calendar Events action" width="634" height="248" data-path="images/reference/get-google-calendar-events-img-1.png" />
    </Frame>
  </Step>

  <Step title="Connect Google Calendar">
    If you haven't already, connect your Google Calendar account to Cassidy. Click **Connect**, review the terms, and authorize the permissions.

    <Frame>
      <img src="https://mintcdn.com/cassidy/PSOwom-PV6-w07rd/images/reference/get-google-calendar-events-img-2.png?fit=max&auto=format&n=PSOwom-PV6-w07rd&q=85&s=53482a3680037ed71084927546db4d5e" alt="Connecting Google Calendar in the Get Events action" width="1600" height="1082" data-path="images/reference/get-google-calendar-events-img-2.png" />
    </Frame>

    <Frame>
      <img src="https://mintcdn.com/cassidy/PSOwom-PV6-w07rd/images/reference/get-google-calendar-events-img-3.png?fit=max&auto=format&n=PSOwom-PV6-w07rd&q=85&s=04d73e15b0d6fa1003c864823234e515" alt="Google Calendar authorization success" width="1600" height="1208" data-path="images/reference/get-google-calendar-events-img-3.png" />
    </Frame>
  </Step>

  <Step title="Select a calendar (optional)">
    Under optional fields, select which calendar to retrieve events from. If no calendar is selected, events are retrieved from your primary calendar.
  </Step>

  <Step title="Configure the time range">
    Set **Time Range Start** and **Time Range End** to define the date range for retrieving events.
  </Step>

  <Step title="Add a search query (optional)">
    Enter text in the **Query** field to filter events by keywords. This searches event summaries, descriptions, locations, attendee information, and organizer information.
  </Step>

  <Step title="Configure additional settings (optional)">
    Under optional settings, you can configure:

    * **iCal UID** — include the iCalendar event ID in the response
    * **Minimum Updated time** — filter to events modified at or after this timestamp
    * **Time Zone** — time zone for the response (default is calendar time zone)
    * **Order By** — order of returned events (set Single Events to true to order by start time)
    * **Event Types** — filter by Default, Focus Time, Out of Office, or Working Location
    * **Single Events** — break recurring series into individual occurrences
    * **Ignore Recurring Events** — exclude recurring events
    * **Show Deleted** — include cancelled events
    * **Show Hidden Invitations** — include hidden invitations
    * **Max Attendees** — limit attendees returned per event for performance

    <Frame>
      <img src="https://mintcdn.com/cassidy/PSOwom-PV6-w07rd/images/reference/get-google-calendar-events-img-4.png?fit=max&auto=format&n=PSOwom-PV6-w07rd&q=85&s=c452862285b542597c9d3eeab6a73e68" alt="Additional settings for Get Google Calendar Events" width="658" height="900" data-path="images/reference/get-google-calendar-events-img-4.png" />
    </Frame>
  </Step>

  <Step title="Reference the event variables">
    The action outputs a list of events. Use the variable picker in subsequent steps to reference event data. See the output variables table below for the full list.
  </Step>

  <Step title="Use a Loop to process events">
    Because this action returns a list of events, use a [Loop action](/reference/actions/loop) to process each event individually.
  </Step>
</Steps>

## Output variables

| Variable                 | Description                                                       |
| ------------------------ | ----------------------------------------------------------------- |
| **Event ID**             | Unique identifier of the calendar event                           |
| **iCal UID**             | iCalendar event ID in iCalendar format                            |
| **Recurring Event ID**   | ID of a recurring event                                           |
| **Sequence**             | Version number that increments with changes                       |
| **Recurrence**           | Repeating schedule (iCalendar RFC 5545 format)                    |
| **Creator**              | Event creator's email, name, and Self status                      |
| **Organizer**            | Event organizer's email, name, and Self status                    |
| **Created Date**         | When the event was created (UTC, ISO 8601)                        |
| **Updated Date**         | When the event was last modified (UTC, ISO 8601)                  |
| **Start Date**           | When the event begins                                             |
| **End Date**             | When the event ends                                               |
| **End Time Unspecified** | Whether the event's end time is missing                           |
| **Original Start Time**  | Original start for recurring instance                             |
| **Status**               | Event state: confirmed, tentative, or cancelled                   |
| **Event Type**           | Classification: default, outOfOffice, focusTime, workingLocation  |
| **Visibility**           | Visibility level: default, public, private, confidential          |
| **Transparent**          | Whether the event blocks time (opaque = Busy, transparent = Free) |
| **Calendar Event Link**  | Link to the calendar event                                        |
| **Meeting Link**         | Conference URL (e.g., Google Meet)                                |
| **Title**                | Title or subject of the event                                     |
| **Description**          | Event description                                                 |
| **Location**             | Event location                                                    |
| **Attendees Omitted**    | Whether attendee list was excluded (too large)                    |
| **Attendees**            | List of people invited to the event                               |

## Example workflow: Daily meeting prep

Here's how to set up a Workflow that prepares you for the day's meetings:

<Steps>
  <Step title="Add a Scheduled trigger">
    Set it to run daily at 8am. See [Scheduled trigger](/reference/triggers/scheduled) for details.
  </Step>

  <Step title="Add Get Google Calendar Events">
    Configure it to retrieve today's events.
  </Step>

  <Step title="Add a Loop action">
    Loop through each event returned by the Get Google Calendar Events action.
  </Step>

  <Step title="Inside the Loop, add Generate Text">
    Use the event's title, description, and attendee information to research and prepare a brief summary. See [Generate Text](/reference/actions/generate-text) for details.
  </Step>

  <Step title="After the Loop, add Send Slack message">
    Combine all meeting summaries and send them to yourself in Slack. See [Send Slack message](/integrations/slack/send-slack-message) for details.
  </Step>
</Steps>

Here's what the results might look like in Slack:

<Frame>
  <img src="https://mintcdn.com/cassidy/PSOwom-PV6-w07rd/images/reference/get-google-calendar-events-img-5.png?fit=max&auto=format&n=PSOwom-PV6-w07rd&q=85&s=a92e3cb6f0db0592adb6c693cd0e0ab2" alt="Sample Slack message with daily meeting prep summaries" width="863" height="620" data-path="images/reference/get-google-calendar-events-img-5.png" />
</Frame>

## Related

* [New or updated Google Calendar event trigger](/integrations/google-workspace/google-calendar/new-or-updated-event-trigger)
* [Create Google Calendar event](/integrations/google-workspace/google-calendar/create-event)
* [Update Google Calendar event](/integrations/google-workspace/google-calendar/update-event)
* [Get Google Calendar schedule](/integrations/google-workspace/google-calendar/get-schedule)
* [Google Calendar for Workflows](/integrations/google-workspace/google-calendar/workflows)
