CalSync – Google Appointments Integration for monday.com

Adding Google Appointments Integration to Your Board View
Install the Integration
  1. Install the Google Appointments Integration app from http://monday.com/marketplace.

  2. Navigate to an existing monday board or create a new one.

  3. Click Add View.

  4. Search for and select the Google Appointments Integration app.


Authenticate with Google Calendar
  1. Click Connect Google Calendar.

  2. A popup opens for Google OAuth.

  3. Sign in and grant calendar access.

  4. The popup closes automatically when authentication completes.


Authenticate with monday.com
  1. Click Connect monday.com.

  2. A popup opens for monday.com OAuth.

  3. Authorize the app to access your boards.

  4. The popup closes automatically when authentication completes.


Select Your Google Calendar
  • After authentication, calendars load automatically.

  • Choose the calendar to sync from the dropdown.


Select Your monday.com Board
  • After authentication, your boards load automatically.

  • Choose the board to sync to from the dropdown.


Choose Setup Mode
Auto Setup (Recommended)

Automatically creates a group named “[Calendar Name] Appointments” (you can customize the name).
Creates 9 predefined columns:

  • Event Name (Text)

  • Cal: Start Time (Date)

  • Cal: End Time (Date)

  • Cal: Attendee Email (Text)

  • Cal: Attendee Name (Text)

  • Cal: Event Status (Status)

  • Cal: Description (Long Text)

  • Cal: Location (Text)

  • Cal: Calendar Link (Link)

  • External ID (Text)

If a group with the same name exists, you’ll be asked to rename or delete it.

Manual Mapping

Map calendar fields to existing board columns.

Required mappings:

  • Event Title

  • Start Date/Time

Optional mappings:

  • End Date/Time

  • Attendee Email

  • Attendee Name

  • Event Status

  • Description

  • Location

  • Event URL

  • External ID


Start the Sync
  • Click Start Sync.

  • The app performs an initial sync of existing calendar events.

  • New events are created as items in the selected group (Auto Setup) or board (Manual Mapping).

  • Real-time sync begins using Google Calendar webhooks.


Monitor Sync Status
Viewing Sync Status
  • Status indicator shows at the top of the app.

  • Green: Sync is active and running.

  • Red: Sync is stopped or inactive.

  • Displays last sync time and number of events processed.

Viewing Sync Logs
  • Scroll to the Sync Logs section.

  • View recent sync activities:

    • Event created/updated/deleted

    • Sync errors (if any)

    • Timestamp for each action

  • Logs update in real-time via WebSocket.


Managing Your Sync
Stopping the Sync
  • Click Stop Sync in the Sync Control section.

  • Confirmation: Status changes to Inactive.

  • Stopping sync pauses new event syncing. Existing items remain on the board.

Restarting the Sync
  • Click Start Sync again.

  • The app performs a fresh sync of all calendar events.

  • Real-time updates resume.


Changing Configuration
  • Disconnect and reconnect accounts if needed.

  • Change calendar or board using dropdowns.

  • Update column mappings in Manual Mapping mode.

  • Click Start Sync to apply changes.


Auto Setup Mode
Using Auto Setup
  • Select Auto Setup in the setup mode toggle.

Group Name:
Pre-filled with “[Calendar Name] Appointments.” You can customize it before starting sync.

Column Preview:
Shows the 9 columns that will be created. Column names are prefixed with “Cal:” to avoid conflicts.

Start Sync:

  • Click Start Sync.

  • The app creates the group and columns (if they don’t exist).

  • Existing columns with the same name and type are reused.

  • Events sync to the new group.

Group Already Exists Error:
If a group with the same name exists, you’ll see an error.

Solutions:

  • Rename the existing group in monday.com.

  • Delete the existing group (if not needed).

  • Use a different group name in the app.


Manual Mapping Mode
Using Manual Mapping

Required Fields:

  • Event Title → Text or Name column

  • Start Date/Time → Date or DateTime column

Optional Fields:

  • End Date/Time → Date or DateTime

  • Attendee Email → Text or Email

  • Attendee Name → Text or People

  • Event Status → Status or Text

  • Description → Long Text

  • Location → Text or Location

  • Event URL → Link

  • External ID → Text (recommended for tracking)

Validation:

  • Required fields must be mapped.

  • Column types should match field type.

  • Validation errors appear if mappings are invalid.

Start Sync:
Click Start Sync once mappings are valid. Events sync to the board using your mappings.


Troubleshooting
Authentication Issues

Popup Blocked:

  • Disable popup blockers for monday.com.

  • Allow popups in your browser settings.

OAuth Error:

  • Check that redirect URLs are configured in app settings.

  • Try disconnecting and reconnecting.

Already Authenticated:

  • If already authenticated, the popup closes automatically.

  • Check the status indicator to confirm authentication.


Sync Not Working

Check Sync Logs:
Review errors in Sync Logs.
Common issues: Column type mismatch, missing required fields, or API errors.

Verify Authentication:
Ensure both Google Calendar and monday.com show “Connected”.
Re-authenticate if needed.

Check Webhook Status:
Restart sync if updates stop.

Verify Column Mappings:
Ensure valid mappings and matching column types.


No Calendars or Boards Showing
  • Wait a few seconds after authentication.

  • Refresh the app view.

  • Verify you have access permissions.

  • Check backend connectivity if issues persist.


Events Not Syncing
  • Ensure sync status is Active.

  • Confirm correct calendar selection.

  • Verify calendar has events.

  • Ensure board permissions and access rights are correct.


Duplicate Items Created

External ID Column:
Map the External ID field to prevent duplicates.
The app uses this to identify existing items.

Manual Cleanup:
Delete duplicate items manually in monday.com.
Restart sync after cleanup.


Column Type Reference
Calendar Field Recommended Column Type Alternative Types
Event Title Text, Name
Start Date/Time Date, DateTime
End Date/Time Date, DateTime
Attendee Email Text Email
Attendee Name Text People
Event Status Status Text
Description Long Text Text
Location Text Location
Event URL Link Text
External ID Text
 
 

Disconnecting Accounts
Disconnect Google Calendar
  • Click Disconnect next to Google Calendar status.

  • Confirmation: Status changes to Not Connected.

  • Note: Disconnecting Google also disconnects monday.com and resets configuration.

Disconnect monday.com
  • Click Disconnect next to monday.com status.

  • Confirmation: Status changes to Not Connected.

  • Note: You can disconnect monday.com independently, but sync will not work without both accounts connected.


Support

For issues, feature requests, or questions: