Appearance
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
- Go to the Google Cloud Console
- Create a new project or select an existing one
- Enable the Google Calendar API
- Go to Credentials and create an OAuth 2.0 Client ID
- Set the application type to Web application
- 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-secret3. Connect Your Account
- Open Iris and go to Settings
- Find the Google Calendar integration
- Click Connect and authorize access
- 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
| Tool | Purpose |
|---|---|
list_calendar_events | Fetch upcoming events (1-30 days ahead) |
create_calendar_event | Create new events with title, time, location |
update_calendar_event | Modify existing events |
delete_calendar_event | Remove 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
| Setting | Default | Description |
|---|---|---|
calendar.cache_ttl | 15 | Cache duration (minutes) |
calendar.event_horizon | 7 | Days 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.