Calendar

Calendar Sync brings your calendar events into NocoDB as a structured table that you can query. Use it to build a schedule dashboard, report on meeting load, or join event data with the rest of your workspace. Calendar Sync keeps a read-only copy of your events up to date at all times.

Current supported sources include:

  • Google Calendar
  • Outlook Calendar
  • CalDAV (Apple iCloud, Fastmail, Nextcloud, and other CalDAV servers)

All three sources use the same setup steps and make the same Event table. You can mix them in one base and report across them together. Each sync tracks one calendar. To bring in another calendar, add another sync.

Calendar Sync uses one Event table. Thus, setup has no All Tables / Select Tables choice. The Event table is always included, and App Sync makes no relationships.

Available Tables

Event

Represents one calendar event. Each synced event maps to one record. The initial sync expands recurring events into individual occurrences, so each occurrence shows as its own record.

Key fields include:

FieldDescription
TitleThe event summary. This is the display (primary) field.
Start / EndThe start and end date-time of the event. All-day events use dates without a time.
All DayChecked when the event has no specific time (a full-day event).
Recurring EventChecked when the record is an occurrence of a recurring series.
Recurring Event IDThe identifier that links an occurrence to its recurring series.
StatusThe event status: confirmed, tentative, or cancelled.
Show asShows if the event marks you as Busy or Free.
VisibilityThe event visibility: default, public, private, or confidential.
Event TypeThe source event type, such as default, birthday, focusTime, fromGmail, outOfOffice, or workingLocation. (Google Calendar only.)
LocationThe event location text.
DescriptionThe event description or notes.
Creator / OrganizerThe email addresses of the person who created the event and of the organizer.
AttendeesA comma-separated list of attendee names or emails.
Attendee CountThe number of attendees on the event.
My ResponseYour RSVP status: needsAction, accepted, declined, or tentative.
AttachmentsThe titles and links of files attached to the event. (Google Calendar only.)
Created / UpdatedWhen the event was created and last changed in the source.
Event ID / iCalUIDThe source event identifiers.
Event LinkA direct link that opens the event in the source calendar.
Meeting LinkThe video meeting URL (for example, a Google Meet link), when present.
Meeting ProviderThe name of the conferencing solution, when present.
ColorThe color identifier of the event from the source calendar. (Google Calendar and CalDAV; Outlook Calendar does not provide this.)

The Event table has the same fields for every source. If a source does not give a value, App Sync creates the field but leaves it empty. Thus, views and formulas that you build on one calendar keep working when you add another calendar.

All synced fields are read-only and one-way (source → NocoDB). You can add your own custom fields, create views, filter, sort, and group, but changes made in NocoDB are not written back to your calendar.

Calendar view and event button

On the first sync, Calendar Sync configures the Event table automatically, so you can use the synced events immediately:

  • Calendar view – Calendar Sync creates a Calendar view with the name Calendar. The view is organized by the Start field and shows only the Title, so the timeline stays easy to read.
  • Open Event button – An Open Event button field opens the Event Link of the event in the source calendar. Use it to go from a record directly to the original event.

Calendar view of synced events

These are starting defaults. You can recolor the view, change which fields are shown, or adjust the date organization like any other Calendar view.

Metadata Fields

Each synced record in the Calendar category includes a set of metadata fields. These fields track the lifecycle, state, and origin of each record. They show how data flows from the external source into NocoDB. They are important for traceability, debugging, and audit requirements.

App Sync manages these metadata fields automatically. They are read-only.

FieldDescription
RemoteIdThe unique identifier of the event in the source calendar.
RemoteCreatedAtThe timestamp when the event was first created in the source.
RemoteUpdatedAtThe timestamp of the most recent update in the source.
RemoteDeletedShows if the event was deleted (cancelled) in the source calendar. App Sync uses this especially when the delete behavior is set to Ignore.
RemoteDeletedTimeThe timestamp when the event was deleted in the source, if applicable.
RemoteRawThe raw payload from the provider for that event. Use it for troubleshooting, verification, or advanced integrations.
RemoteNamespaceThe source calendar that the event came from.
RemoteSyncedAtThe last timestamp when NocoDB synced this record.
SyncConfigIdAn internal reference to the sync configuration for this record.
SyncRunIdThe sync run that last updated this record.
SyncProviderThe external service (Google Calendar, Outlook Calendar, or CalDAV) that the record came from. This is useful when a base has events from more than one calendar source.

Source Specific Details

Google Calendar

Use the Google Calendar integration to pull events from any calendar in your Google account into NocoDB. Connect your Google account one time and select the calendar to track. App Sync then keeps the Event table updated with the latest changes.

After you select Google Calendar as the sync source, configure these settings:

SettingDescription
Integration nameA name for this sync source. It identifies the source in the sync configuration.
Google Calendar connectionSelect an existing Google Calendar connection. Or create one: authenticate with Google (through OAuth). NocoDB asks for read-only access to your calendars. You can use the connection again in more than one sync.
CalendarSelect the calendar to sync from the calendars on your account, for example your primary calendar or a shared calendar that you can access. Each sync tracks one calendar.
Sync range startApp Sync syncs only events that end on or after this date. This sets the lower limit of the initial sync window.
Sync range endApp Sync syncs only events that start on or before this date. This sets the upper limit of the initial sync window.
The sync range bounds the initial import window, so you can avoid pulling in years of historical events. Choose a range that matches how far back and forward you want visibility.

After the initial import, Google Calendar syncs incrementally. Each run asks Google only for the changes since the previous run, including cancellations. If you make the sync range wider later, the next run does a new full import. This import gets the newly included events.

Google Calendar sync source configuration

Outlook Calendar

The Outlook Calendar integration pulls events from any calendar in your Microsoft account, including work and school accounts. Connect one time and select a calendar. App Sync then keeps the Event table up to date.

After you select Outlook Calendar as the sync source, configure these settings:

SettingDescription
Integration nameA name for this sync source. It identifies the source in the sync configuration.
Outlook Calendar connectionSelect an existing Outlook Calendar connection. Or create one: authenticate with Microsoft (through OAuth). NocoDB asks for read-only access to your calendars. You can use the connection again in more than one sync. Personal Microsoft accounts and work or school accounts are both supported.
CalendarSelect the calendar to sync from the calendars on your account. Each sync tracks one calendar.
Sync range startApp Sync syncs only events that end on or after this date.
Sync range endApp Sync syncs only events that start on or before this date.

Like Google Calendar, Outlook Calendar syncs incrementally after the initial import. Later runs transfer only the events that changed.

Outlook does not expose an event color, so the Color field stays empty for Outlook events. Event Type and Attachments are specific to Google Calendar and are likewise left empty.

CalDAV

CalDAV is an open calendar standard. Apple iCloud, Fastmail, Nextcloud, and many other providers support it. Use it to sync a calendar from any CalDAV server, including servers that have no dedicated NocoDB integration.

After you select CalDAV as the sync source, configure an Integration name, a CalDAV connection, a Calendar, and a Sync range start and Sync range end. These are the same as for the other sources.

A CalDAV connection does not use OAuth, as Google and Outlook do. When you create a CalDAV connection, you give a server URL and credentials:

SettingDescription
Server URLThe base URL of the CalDAV server. The default is Apple iCloud (https://caldav.icloud.com). For Fastmail, Nextcloud, and others, replace it with the URL of your provider.
UsernameThe account username, usually your email address (for example you@icloud.com).
App-specific passwordCalDAV providers usually require an app-specific password, not your normal account password. For iCloud, generate one at appleid.apple.com. iCloud rejects a regular Apple ID password.
CalDAV syncs perform a full refresh of the selected date window on every run rather than fetching only what changed. Choose the Full sync type so that events deleted at the source are removed from NocoDB, and keep the sync range no wider than you need, since every run re-reads the whole window. Incremental CalDAV sync is planned for a future release.

Availability

  • App Sync is available on NocoDB Cloud (Plus plan and above) and licensed self-hosted deployments (Business plan and above).

Last updated on

Latest product updates?See Changelog
Stay in the loop? Follow us onLinkedInLinkedInYouTubeYouTubeXX