Skip to main content

Using BusyCal with CalDAV

CalDAV is an industry standard for calendar servers. BusyCal can connect to CalDAV servers, using them to sync calendars across your devices and share them with others.

For details on using BusyCal with CalDAV, see the following:

Syncing with a CalDAV Server

To sync BusyCal with a CalDAV server, do the following:

  1. Choose BusyCal > Preferences > Accounts.
  2. Click the plus (+) button to add a new account.
  3. Choose CalDAV from the Server Type pop-up menu, and then enter your user name, password, and server address and click OK. For the server address, enter the domain (e.g., myserver.com), and BusyCal attempts to figure out the full path to your account.
  4. BusyCal begins syncing with the server and your calendars will appear in the left sidebar.

Add CalDAV Account

Sharing Calendars with Others through CalDAV

BusyCal enables you to share calendars with other users who are syncing with the same CalDAV server. Once each user has configured BusyCal to sync with their personal account on the CalDAV server, you can share calendars with each other. When a calendar is shared, events can be edited by any user, and changes sync between them.

Share a Calendar with Other CalDAV Users

To share a calendar with other CalDAV users:

  1. Control-click the calendar in the left sidebar and choose Get Info from the contextual menu.

    Get Info on iCloud Calendar

  2. Select the Share calendar checkbox, and then enter the email address of the person you want to share the calendar with. Check “Allow Write” if you want them to have read-write access to your calendar; otherwise, deselect it to give them read-only access.

    CalDAV sharing setup

  3. Click OK. BusyCal begins syncing with the server and an icon appears next to the calendar name indicating that it is shared.

  4. The person you shared the calendar with will receive an invitation to share your calendar. Once they accept the invitation, the shared calendar appears on their computer.

Shared Calendar Messages

When sharing calendars with others, there are two options you may want to enable, for keeping track of changes to events on shared calendars:

  • First, in BusyCal > Preferences > Advanced, select “Confirm changes to events on shared calendars” if you want to display a warning when you edit or delete an event on a shared calendar.

    Confirm changes Alert - Change to shared calendar

  • Second, in the Calendar Info dialog for any given calendar (which you can display by double-clicking the calendar name in the Calendar List), select “Show change notifications in Inbox” to display a badge on the app icon and a message in the Inbox when events are added or changed by others, or deselect it to avoid seeing badges and Inbox notifications for that calendar. Note also, that if you have this option selected for a non-iCloud CalDAV account (such as Google, Fruux etc), you will see change notifications in the Inbox for changes you make from other devices you own, even if the calendar has not been shared with anyone.

    Preference - Show change notifications Dock icon with badge Inbox with invitations

Click OK to dismiss eac message in the Inbox. Or, to dismiss all messages with a single click, hold down Option and OK changes to OK All.

Hosting Calendars on a CalDAV Server

If you want to sync calendars between a macOS and iOS device or share calendars with others without having to rely on a cloud syncing service like iCloud or Google, you can host your own CalDAV server on your local area network.

BusyCal (for both Mac and iOS) and the built-in Calendar app on macOS and iOS are all client apps that sync with CalDAV servers. This means any data you enter into one client app will sync to all other client apps through the server. As long as you have all client apps configured to sync with the same server, all your calendar data remains in sync.

Calendars Must Be Hosted on Server

All calendars you want to sync between your Macs, iOS devices, and other users, must be hosted on the CalDAV server. You cannot sync calendars from other sources (On My Mac, iCloud, Google, Exchange, etc.) to the server.

If you have any existing calendars hosted elsewhere that you want to host on the server, you can move them to the server or merge them with an existing calendar on the server by following the instructions for Exporting, Importing and Merging Calendars.

Running macOS Server

Apple’s macOS Server can be used for this purpose and can be purchased from the Mac App Store for $20.

macOS Server Calendar setup

macOS Server functions as a CalDAV server much like iCloud except that it’s accessible only on your local area network.

BusyCal (for both macOS and iOS) and the built-in Calendar app on macOS and iOS are CalDAV clients that sync with a CalDAV server.

This means any data you enter into the built-in Calendar app on macOS or iOS will sync to BusyCal through the server, and vice versa. As long as you have all client apps configured to sync with the same server, all your calendar data remains in sync.

Here are some resources that explain how to set up macOS Server:

Other CalDAV Servers

If macOS Server doesn’t meet your needs, you may want to consider other third-party servers, such as Kerio or Zimbra. Both servers support CalDAV and Exchange EWS protocols and are fully compatible with BusyCal.

There are also many service providers that provide Kerio and Zimbra hosting, including:

Delegates

For CalDAV servers that support delegation, you will see a Delegates option appear under account settings (BusyCal > Preferences > Accounts > Selected account).

Here, you can edit and add email addresses of other users on the same CalDAV server that you would like to give access to.