Calendar Connections
Calendar Connections
Connect your external calendars (Google Calendar, Outlook, etc.) to sync bookings and avoid double-booking.
Why Connect Calendars?
Connecting external calendars:
- Prevents Double-Booking: External events block your availability
- Syncs Bookings: Bookings appear in your calendar automatically
- Shows Real Availability: Clients see when you're actually free
- Two-Way Sync: Changes sync both ways
Supported Calendars
- Google Calendar: Full OAuth integration
- Microsoft Outlook: OAuth integration
- iCloud/CalDAV: Manual connection
- Other CalDAV: Custom server connection
Connecting Google Calendar
Step 1: Start Connection
- Go to Scheduling → Settings → Calendar Connections
- Click "Connect Google Calendar"
- You'll be redirected to Google
Step 2: Authorize
- Sign in to Google account
- Review permissions requested
- Click "Allow" or "Authorize"
- You'll be redirected back to SWELL
Step 3: Configure
- Select Calendar: Choose which Google calendar to sync
- Sync Direction:
- Two-Way: Bookings → Calendar, Calendar → Availability
- One-Way (Out): Bookings → Calendar only
- One-Way (In): Calendar → Availability only
- Set as Primary: Make this your main calendar
- Save
Step 4: Verify
- Check connection status (should show "Connected")
- Create a test booking
- Verify it appears in Google Calendar
- Add event in Google Calendar
- Verify it blocks availability
Connecting Microsoft Outlook
Step 1: Start Connection
- Go to Scheduling → Settings → Calendar Connections
- Click "Connect Outlook" or "Connect Microsoft"
- You'll be redirected to Microsoft
Step 2: Authorize
- Sign in to Microsoft account
- Review permissions
- Click "Accept"
- You'll be redirected back
Step 3: Configure
Same as Google Calendar:
- Select calendar
- Choose sync direction
- Set as primary (optional)
- Save
Connecting iCloud/CalDAV
Manual Connection
- Go to Scheduling → Settings → Calendar Connections
- Click "Add CalDAV Connection"
- Enter connection details:
- Server URL: Your CalDAV server
- Username: Your iCloud/CalDAV username
- Password: Your password
- Calendar Name: Name for this connection
- Test Connection
- Save
iCloud Specific
For iCloud:
- Server:
https://caldav.icloud.com - Username: Your iCloud email
- Password: App-specific password (not regular password)
Managing Connections
Viewing Connections
See all connected calendars:
- Go to Scheduling → Settings → Calendar Connections
- View list of connections
- See status (Connected, Expired, Error)
Connection Status
Connected (Green):
- Working properly
- Syncing correctly
- No action needed
Expired (Yellow):
- Token expired
- Click "Reconnect" to refresh
- Re-authorize if needed
Error (Red):
- Connection failed
- Check credentials
- Reconnect
Setting Primary Calendar
One calendar can be primary:
- Find connection
- Click "Set as Primary"
- Primary calendar used by default
- Other calendars still sync
Disconnecting
Remove a connection:
- Find connection
- Click "Disconnect"
- Confirm removal
- Connection removed
- Sync stops
How Sync Works
Bookings → Calendar
When booking is made:
- Booking created in SWELL
- Event automatically added to connected calendar
- Includes:
- Title: Event type name + client name
- Time: Booking date/time
- Duration: Event type duration
- Location: Meeting location/link
- Attendee: Client email
Calendar → Availability
External calendar events block availability:
- System checks connected calendars
- Finds events during your availability
- Blocks those time slots
- Clients can't book blocked times
Sync Frequency:
- Real-Time: Immediate sync (if supported)
- Hourly: Checks every hour
- Daily: Checks once per day
Two-Way Sync
Both directions work:
- Bookings → Calendar: Your bookings appear in external calendar
- Calendar → Availability: External events block booking times
Troubleshooting
Connection Not Working
Can't connect?
- Check internet connection
- Verify calendar account credentials
- Try reconnecting
- Check browser popup blockers
Connection expired?
- Click "Reconnect"
- Re-authorize
- Check token expiration
- Set up automatic refresh
Sync Not Working
Bookings not appearing in calendar?
- Verify connection is active
- Check sync direction settings
- Test connection
- Check calendar permissions
External events not blocking?
- Verify sync direction includes "In"
- Check sync frequency
- Manually refresh
- Reconnect calendar
Permission Issues
"Access Denied" error?
- Re-authorize connection
- Check calendar sharing settings
- Verify account permissions
- Contact support if persists
Best Practices
- Connect Main Calendar: Use your primary calendar
- Set Two-Way Sync: Get full benefit
- Monitor Status: Check connection regularly
- Reconnect When Expired: Keep connections active
- Test Sync: Verify bookings appear in calendar
- Use Primary: Set one calendar as primary
- Multiple Calendars: Connect all calendars you use
Security
OAuth Security
- No Password Storage: OAuth doesn't store passwords
- Token Encryption: Tokens stored encrypted
- Limited Permissions: Only calendar access requested
- Revocable: Can disconnect anytime
Data Privacy
- Your Data Only: Only your calendar data accessed
- No Sharing: Data not shared with third parties
- Secure Connection: All connections encrypted
- You Control: You decide what to connect
Next Steps
- Setting Up Availability - Configure schedule
- Managing Bookings - Handle appointments
- Booking Links - Share booking page
Updated on: 13/03/2026
Thank you!
