How do I sync with CalDAV calendars?

Modified on Thu, 4 Dec at 11:32 AM

How do I sync with CalDAV calendars?

CalDAV is an open standard used by many calendar providers. Hubhus supports two-way synchronization with CalDAV calendars, allowing you to sync events between external calendars (Nextcloud, iCloud, Fastmail, ownCloud, Synology, etc.

On this page

Jump to any section using the links below

CalDAV is an open standard used by many calendar providers. Hubhus supports two-way synchronization with CalDAV calendars, allowing you to sync events between external calendars (Nextcloud, iCloud, Fastmail, ownCloud, Synology, etc.) and Hubhus calendar resources.



What is CalDAV sync

CalDAV synchronization enables:

  • Import: External calendar events appear in Hubhus
  • Export: Hubhus events are pushed to external calendar
  • Two-way sync: Changes in either system update the other
  • Multiple calendars: Connect multiple external calendars to different resources

This allows you to:

  • Keep personal calendars in sync with Hubhus
  • Prevent double-booking across systems
  • Maintain availability across multiple platforms
  • Use your preferred calendar app while working in Hubhus

Where to configure CalDAV sync

Go to: Calendar → Settings → CalDAV calendars

Click + New CalDAV calendar to add an external calendar.


Adding a CalDAV calendar

You will see a form asking for:

URL: The CalDAV endpoint of your external calendar. This is typically a specific URL provided by your calendar service.

Username: Authentication username for the calendar service. This may be your email address or a specific username depending on the provider.

Password: Authentication password or app-specific password. Many providers require app-specific passwords for CalDAV access rather than your main account password.

Name (optional): Leave blank to automatically fetch the calendar's official name from the provider, or enter a custom name for easier identification in Hubhus.


How CalDAV sync works in Hubhus

CalDAV synchronization in Hubhus is always two-way - you cannot choose import or export separately. When you connect a CalDAV calendar, both directions are active automatically.


Import (CalDAV → Hubhus)

When a CalDAV calendar is connected, Hubhus will:

Fetch external events:

  • All upcoming events from the external calendar
  • Display them inside the linked Hubhus calendar resource
  • Mark them as external so you can distinguish them

Import changes:

  • Updates to events made in the external calendar
  • Deletion of Hubhus events if deleted in the CalDAV calendar
  • When a Hubhus event is deleted in CalDAV, the Hubhus resource is unassigned
  • If no other resources remain assigned, the Hubhus event is deleted

Continuous synchronization: Hubhus polls the CalDAV calendar periodically for updates (not real-time).


Export (Hubhus → CalDAV)

When a CalDAV calendar is connected, Hubhus will:

Push new events:

  • New Hubhus-created events are added to the external CalDAV calendar
  • Events appear in your external calendar automatically

Update events:

  • Changes made to events in Hubhus update the event on the CalDAV server
  • Edits sync to the external calendar

Delete events:

  • When an event is deleted in Hubhus, it is deleted from the external CalDAV calendar
  • Only applies if the event was originally created by Hubhus

Important: Events originally created in the CalDAV calendar are never deleted by Hubhus to avoid accidental data loss.


Synchronization schedule

Hubhus synchronizes with CalDAV calendars on the following schedule:

Every 5 minutes:

  • Synchronizes the period "from today and 7 days forward"
  • Keeps near-term events up-to-date
  • Ensures recent changes appear quickly

Every 6 hours (00:00, 06:00, 12:00, 18:00):

  • Synchronizes the period "from start of current month and one year forward"
  • Ensures long-term events stay synchronized
  • Captures changes to future events

Note: This is not real-time synchronization. There may be a delay of up to 5 minutes for recent events or up to 6 hours for events further in the future before changes appear.


Linking a CalDAV calendar to a Hubhus resource

After adding a CalDAV calendar, you must map it to a resource:

  1. Go to Calendar → Settings → Synchronization
  2. Find your CalDAV calendar under "External calendars"
  3. Click Link calendar
  4. Select the Hubhus resource (e.g., user, technician, employee, location)

Once linked:

  • Imported events from CalDAV appear on that resource's calendar
  • Events created in Hubhus for that resource sync to the CalDAV calendar
  • Availability in Hubhus reflects both Hubhus and external events

Important: Link only one external calendar per resource to avoid conflicts.


Provider-specific notes and limitations

Different CalDAV providers support different levels of API features. Below are notes on commonly used providers.


iCloud (Apple)

Requirements:

  • Requires an app-specific password (not your main Apple ID password)
  • Generate app-specific password in Apple ID settings

Features:

  • Supports read + write for most CalDAV clients
  • Full two-way synchronization works

Limitations:

  • Some users report slow syncing due to Apple's throttling
  • Reminders/Task lists are not synced - only calendar events

URL format: Apple provides the CalDAV URL in iCloud settings under Calendar.


Nextcloud / ownCloud

Features:

  • Fully supported
  • Provides reliable two-way sync
  • No special limitations

Configuration:

  • Use the "primary CalDAV URL" from user settings
  • Username is typically your Nextcloud/ownCloud username
  • Use your account password or app password if configured

Recommended provider: Nextcloud and ownCloud are among the most reliable CalDAV providers for Hubhus integration.


Fastmail

Features:

  • Supports full read/write CalDAV
  • Reliable two-way synchronization

Requirements:

  • Requires app password for CalDAV access
  • Generate app password in Fastmail settings

Configuration:

  • Fastmail provides CalDAV URL in settings
  • Use your Fastmail email as username

Synology Calendar

Features:

  • Supports CalDAV protocol

Limitations:

  • May restrict editing of certain event types
  • Group or shared calendars may have limited write access
  • Personal calendars typically work without issues

Configuration:

  • Find CalDAV URL in Synology Calendar settings
  • Use your Synology account credentials

Amparex

Features:

  • Supports CalDAV integration
  • Used in specific industry verticals

Configuration:

  • Consult Amparex documentation for CalDAV URL
  • Use provided authentication credentials

Google Calendar via CalDAV

Limitation:

  • Google does not support full third-party CalDAV write access
  • CalDAV with Google Calendar has significant restrictions

Recommended alternative: If you need Google Calendar integration, use Hubhus's dedicated Google Workspace Calendar Integration instead of CalDAV.

See the article on Google Workspace Calendar sync for proper Google Calendar integration.


Troubleshooting CalDAV sync


Wrong URL

Problem: Connection fails or calendar doesn't sync.

Cause: Most providers have different CalDAV URLs for:

  • Single calendar
  • Calendar collections
  • User root URL

Solution:

  • Verify you're using the calendar-specific URL, not a general URL
  • Check provider documentation for correct CalDAV endpoint
  • Some providers require the full path to a specific calendar

Finding the correct URL:

  • Check your provider's settings or documentation
  • Look for "CalDAV URL", "Calendar subscription", or "Sync settings"
  • The URL typically includes your username and calendar name

Authentication errors

Problem: "Authentication failed" or "Invalid credentials" error.

Common causes:

Wrong username format:

  • Some providers require email address (user@domain.com)
  • Others require username only (user)
  • Check provider documentation for required format

Wrong password:

  • Using main account password instead of app-specific password
  • Password expired or changed
  • Special characters not properly entered

Wrong URL:

  • Authentication errors can also be caused by incorrect CalDAV URL
  • Verify the URL is correct before troubleshooting credentials

Solution:

  • Generate an app-specific password if provider requires it
  • Use email address as username if unsure
  • Verify CalDAV URL is correct
  • Check that account has CalDAV access enabled

Provider does not support write access

Problem: Import works but changes in Hubhus don't sync back to external calendar.

Cause: Your provider restricts write access via CalDAV.

Solution: Since Hubhus CalDAV is always two-way (cannot disable export), you may need to use a different provider or accept that changes in Hubhus won't sync back.

Alternatives:

  • Use a provider with full CalDAV support (Nextcloud, Fastmail, iCloud)
  • For Google Calendar, use the dedicated Google Workspace integration

Events not syncing

Problem: Events don't appear or updates are delayed.

Cause: Synchronization is not real-time - there is a polling schedule.

Solution:

  • Recent events: Wait up to 5 minutes for sync
  • Future events: Wait up to 6 hours for sync
  • Check that calendar is properly linked to resource
  • Verify CalDAV URL and credentials are still valid

Resource becomes unassigned

Problem: Hubhus event shows as unassigned after being in external calendar.

Cause: If a Hubhus-created event is deleted in the external CalDAV calendar, Hubhus removes the resource assignment.

Behavior:

  • Resource is unassigned from the event
  • If no other resources are assigned, the event is deleted entirely

Solution:

  • Don't delete Hubhus events in external calendar - delete them in Hubhus
  • Re-assign the resource in Hubhus if needed

Best practices

Calendar organization:

  • Link one external calendar per resource
  • Use clear naming for calendars
  • Keep personal and work calendars separate if possible

Security:

  • Use app-specific passwords when available
  • Don't share CalDAV credentials
  • Regularly rotate app passwords

Maintenance:

  • Periodically verify sync is working
  • Check for authentication errors in settings
  • Update app passwords if provider requires rotation

Avoiding conflicts:

  • Create events in either Hubhus OR external calendar, not both
  • Let sync happen before making additional changes
  • Don't manually duplicate events across systems

Understanding sync behavior

What gets synced:

  • Calendar events (appointments, meetings, bookings)
  • Event titles, descriptions, times
  • Event updates and deletions

What doesn't get synced:

  • Reminders or tasks (depends on provider)
  • Calendar settings or preferences
  • Attachments (in most cases)

Direction of sync:

  • CalDAV → Hubhus: All events import, including changes and deletions
  • Hubhus → CalDAV: All Hubhus events export, including changes and deletions

Conflict resolution:

  • Most recent change wins
  • If event changed in both systems, CalDAV change typically takes priority during sync

Supported providers summary

Fully supported (read + write):

  • Nextcloud / ownCloud ✅
  • Fastmail ✅
  • iCloud ✅
  • Amparex ✅

Partial support:

  • Synology Calendar (some calendar types may have restrictions)

Not recommended via CalDAV:

  • Google Calendar (use dedicated Google Workspace integration instead)

When to use CalDAV vs dedicated integrations

Use CalDAV when:

  • Your provider fully supports CalDAV read/write
  • You use Nextcloud, Fastmail, iCloud, or similar
  • You need flexible, open-standard integration
  • You have multiple calendar providers

Use dedicated integration when:

  • Provider has limited CalDAV support
  • Provider offers better integration method
  • You use Google Workspace (use Google Workspace Calendar integration)
  • You use Outlook (use Outlook calendar integration)

Summary

CalDAV synchronization in Hubhus provides two-way calendar sync with external calendar providers including Nextcloud, ownCloud, Fastmail, iCloud, Synology, and Amparex. Add CalDAV calendars in Calendar → Settings → CalDAV calendars by providing the CalDAV URL, username, and password (typically an app-specific password). Synchronization is always two-way and cannot be separated into import-only or export-only. Hubhus polls CalDAV calendars every 5 minutes for the next 7 days and every 6 hours for the full year ahead. Link CalDAV calendars to specific Hubhus resources to display external events and push Hubhus events back to the external calendar. Events created in either system sync to the other, with changes and deletions also synchronized. Use provider-specific app passwords when required, verify correct CalDAV URL format, and link only one external calendar per resource to avoid conflicts. For Google Calendar, use the dedicated Google Workspace Calendar integration instead of CalDAV.

? Common searches

booking setup • calendar setup • appointment scheduling • booking configuration

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article