Google Setup
Connect Google Calendar to Recal
Already set up?
Jump to Enable the Calendar API, Configure Consent Screen, or Add to Recal.
1. Create Google Cloud Project
Go to Google Cloud Console → Project selector → New Project.
2. Enable the Google Calendar API
Search "Google Calendar API" → Click Enable.
3. Configure OAuth Consent Screen
APIs & Services → OAuth consent screen:
- User Type: "External" (SaaS) or "Internal" (org-only)
- Fill required fields: app name, support email, developer email
- Click through remaining steps
Token Expiration
Testing mode: Tokens expire in ~7 days. Production mode: No fixed expiry. Move to Production before launch. Slack us for help.
4. Understanding Scopes in Recal
Recal simplifies OAuth scope management by offering easy-to-understand scope options that automatically map to the appropriate Google Calendar permissions:
Available Scopes
write scope - Read/write access to events (or deprecated edit)
https://www.googleapis.com/auth/userinfo.email- User's email addresshttps://www.googleapis.com/auth/calendar.events- Read/write access to eventshttps://www.googleapis.com/auth/calendar.readonly- Read-only access to calendar list (no calendar modifications)
read scope - Read-only access to calendars and events
https://www.googleapis.com/auth/userinfo.email- User's email addresshttps://www.googleapis.com/auth/calendar.readonly- Read-only calendar and event access
free-busy scope - Read-only access to availability
https://www.googleapis.com/auth/userinfo.email- User's email addresshttps://www.googleapis.com/auth/calendar.freebusy- Busy time information only
Best Practice
Request minimum scopes needed. Insufficient access returns 403 with required permissions — re-authenticate with higher scope.
5. Create OAuth Credentials
APIs & Services → Credentials → + Create Credentials → OAuth client ID:
- Application type: Web application
- Authorized JavaScript origins:
https://yourapp.com - Authorized redirect URIs:
https://yourapp.com/oauth2callback - Click Create and copy Client ID + Client Secret
6. Add to Recal
In Recal dashboard → OAuth Credentials → Add Client ID, Client Secret, and redirect URL.
URLs Must Match
Redirect URL in Recal must exactly match the URI in Google Cloud Console.