Skip to main content

Overview

Use the Google Calendar trigger to launch automations whenever calendar events change. Common use cases include briefing a team before a meeting, notifying stakeholders when a critical event is cancelled, or summarizing daily schedules.
Make sure Google Calendar is connected in Tools & Integrations and enabled for the deployment you want to automate.

Enabling the Google Calendar Trigger

  1. Open your deployment in CrewAI AMP
  2. Go to the Triggers tab
  3. Locate Google Calendar and switch the toggle to enable
Enable or disable triggers with toggle

Example: Summarize meeting details

The snippet below mirrors the calendar-event-crew.py example in the trigger repository. It parses the payload, analyses the attendees and timing, and produces a meeting brief for downstream tools.
from calendar_event_crew import GoogleCalendarEventTrigger

crew = GoogleCalendarEventTrigger().crew()
result = crew.kickoff({
    "crewai_trigger_payload": calendar_payload,
})
print(result.raw)
Use crewai_trigger_payload exactly as it is delivered by the trigger so the crew can extract the proper fields.

Sample payloads & crews

The Google Calendar examples show how to handle multiple event types:
  • new-event.json → standard event creation handled by calendar-event-crew.py
  • event-updated.json / event-started.json / event-ended.json → in-flight updates processed by calendar-meeting-crew.py
  • event-canceled.json → cancellation workflow that alerts attendees via calendar-meeting-crew.py
  • Working location events use calendar-working-location-crew.py to extract on-site schedules
Each crew transforms raw event metadata (attendees, rooms, working locations) into the summaries your teams need.

Monitoring Executions

The Executions list in the deployment dashboard tracks every triggered run and surfaces payload metadata, output summaries, and errors.
List of executions triggered by automation

Troubleshooting

  • Ensure the correct Google account is connected and the trigger is enabled
  • Confirm your workflow handles all-day events (payloads use start.date and end.date instead of timestamps)
  • Check execution logs if reminders or attendee arrays are missing—calendar permissions can limit fields in the payload