Skip to content

Google Calendar Integration

Iris integrates with Google Calendar to give you conversational control over your schedule. Ask about upcoming events, create meetings, reschedule appointments, and manage your calendar through natural conversation.

Features

  • View Events: See upcoming events and ask about your schedule
  • Create Events: Schedule meetings with natural language
  • Update Events: Modify times, titles, locations, and descriptions
  • Delete Events: Cancel events when plans change
  • Multi-Calendar Support: Work with multiple calendars

Setup

1. Create Google Cloud Credentials

  1. Go to the Google Cloud Console
  2. Create a new project or select an existing one
  3. Enable the Google Calendar API
  4. Go to Credentials and create an OAuth 2.0 Client ID
  5. Set the application type to Web application
  6. Add your callback URL: http://localhost:8000/settings/google/callback

2. Configure Environment

bash
GOOGLE_CLIENT_ID=your-client-id.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=your-client-secret

3. Connect Your Account

  1. Open Iris and go to Settings
  2. Find the Google Calendar integration
  3. Click Connect and authorize access
  4. Select which calendars Iris should have access to

Context Injection

When connected, Iris automatically receives your upcoming events in every conversation:

You: "Can we meet tomorrow?"

Iris: "I see you have a dentist appointment at 10am and a team standup at 2pm tomorrow. Would 11:30am or 4pm work better?"

Available Tools

ToolPurpose
list_calendar_eventsFetch upcoming events (1-30 days ahead)
create_calendar_eventCreate new events with title, time, location
update_calendar_eventModify existing events
delete_calendar_eventRemove events

Example Conversations

You: "What do I have this week?"

Iris: "Here's your week: Monday 10am Team standup, Tuesday 2pm Client call, Wednesday 9am Dentist..."

You: "Schedule a meeting with Sarah Tuesday at 3pm about the roadmap"

Iris: "Created: Project Roadmap Discussion with Sarah, Tuesday at 3:00 PM."

You: "Move my dentist appointment to Thursday"

Iris: "Done - moved from Wednesday 9am to Thursday 9am."

Configuration

SettingDefaultDescription
calendar.cache_ttl15Cache duration (minutes)
calendar.event_horizon7Days ahead to include in context

Troubleshooting

Calendar not connected: Disconnect and reconnect in Settings, ensure all permissions are granted.

Events not showing: Check that the calendar is selected in Settings and events are within the 7-day horizon.

Can't create events: Verify you have write access to the target calendar.