Google Calendar OAuth Setup Guide
This guide explains how to connect your Google Account to Reeva for Google Calendar tools using OAuth with your own Google Cloud credentials.
Why Use This Method?
Google Calendar OAuth provides full API access to your calendars, allowing you to:
- List all calendars you have access to
- Create, read, update, and delete events
- Manage calendar settings and sharing
- Access shared and subscribed calendars
Since Reeva hasn't completed Google's OAuth verification process yet, you'll use your own Google Cloud project credentials.
Prerequisites
- A Google Account
- A Google Cloud project (free tier is sufficient)
- The same OAuth credentials can be used for both Gmail and Calendar
Step-by-Step Setup
1. Create a Google Cloud Project
(If you already have a project from Gmail setup, you can use the same one)
- Go to Google Cloud Console
- Click "Select a project" → "New Project"
- Enter a project name (e.g., "Reeva Google Integration")
- Click "Create"
2. Enable Google Calendar API ⚠️ REQUIRED
This step is mandatory - Calendar tools will not work without enabling the Calendar API.
- In your project, go to "APIs & Services" → "Library"
- Search for "Google Calendar API"
- Click on "Google Calendar API" in the results
- Click the "Enable" button
- Wait for it to be enabled (usually takes a few seconds)
After enabling, you should see the Google Calendar API listed in "APIs & Services" → "Enabled APIs & services".
If you're also using Gmail tools, make sure Gmail API is also enabled:
- Search for "Gmail API" in the library
- Click "Enable" if not already enabled
3. Configure OAuth Consent Screen
(Skip this if you already did it for Gmail)
- Go to "APIs & Services" → "OAuth consent screen"
- Choose "External" (unless you have a Google Workspace account)
- Fill in the required fields:
- App name: "Reeva" (or your preferred name)
- User support email: Your email
- Developer contact: Your email
- Click "Save and Continue"
- On the "Scopes" page, click "Save and Continue" (scopes are added via code)
- On "Test users", add your own Google account email
- Click "Save and Continue"
4. Create OAuth Credentials
(If you already have OAuth credentials from Gmail setup, you can reuse them!)
- Go to "APIs & Services" → "Credentials"
- Click "Create Credentials" → "OAuth 2.0 Client ID"
- Choose "Web application"
- Name it "Reeva Web Client"
- Under "Authorized redirect URIs", add:
(Or
https://app.reeva.dev/oauth/callbackhttp://localhost:5173/oauth/callbackfor local development) - Click "Create"
- Save your Client ID and Client Secret - you'll need these!
5. Connect in Reeva
- Go to Reeva → Accounts → "Connect Platform"
- Select "Google Account (OAuth)"
- Enter your Client ID and Client Secret
- Give your account a name (e.g., "My Google Account")
- Click "Create Account"
- You'll be redirected to Google
- Important: You'll see a warning "This app isn't verified"
- This is expected since you're using your own credentials
- Click "Advanced" → "Go to [your app name] (unsafe)"
- Review permissions and click "Continue"
- You'll see permission requests for:
- Gmail access (read and send emails)
- Calendar access (manage your calendars)
- Basic profile info (email address)
- Click "Allow"
- You'll be redirected back to Reeva
- ✅ Your Google Account is now connected!
What This Account Can Do
Once connected, this single Google Account works with:
Gmail Tools
- Send emails
- Search emails
- Read emails
- Create and manage drafts
- Summarize email threads
Google Calendar Tools
- List calendars
- Create events
- Update events
- Delete events
- Search events
- (More calendar tools coming soon)
Troubleshooting
"Calendar API has not been enabled" Error
Error message:
Google Calendar API is not enabled in your Google Cloud project.
Solution:
- Go to https://console.cloud.google.com/apis/library/calendar-json.googleapis.com
- Select your project
- Click "Enable"
- Wait 10-30 seconds
- Try the tool again
"Permission denied" Error
This could mean:
- Calendar API not enabled (see above)
- Your OAuth token doesn't have Calendar scopes:
- Disconnect your account in Reeva
- Reconnect following steps above
- Make sure you grant Calendar permissions when prompted
- API quota exceeded (rare on free tier)
Account Works for Gmail but Not Calendar
This means your account was created before Calendar support was added.
Solution - Re-authorize:
- In Reeva, go to Accounts
- Find your Google Account
- Click "Edit" or settings icon
- Click "Re-authorize" (or delete and recreate)
- Go through the OAuth flow again
- Make sure to grant Calendar permissions when prompted
"Invalid grant" or "Token expired"
Your refresh token may have expired or been revoked.
Solution:
- Disconnect the account in Reeva
- Reconnect following the setup steps
- If using local development, check your redirect URI matches exactly
Security Notes
- Your OAuth credentials (Client ID and Secret) are stored encrypted in Reeva
- Reeva never sees your Google password
- You can revoke access anytime at https://myaccount.google.com/permissions
- Access tokens are automatically refreshed as needed
Additional Resources
- Google Calendar API Documentation
- OAuth 2.0 for Web Server Applications
- Gmail OAuth Setup Guide (same OAuth credentials work for both)