Welcome to the NZRT Wiki Podcast. Today we’re looking at Email & CalDAV/CardDAV.
If you’ve ever wondered how your Nextcloud calendar and contacts end up on your phone or in your email client without going through Google or Microsoft’s cloud, this episode is for you. The answer is two open protocols called CalDAV and CardDAV, and Nextcloud supports both out of the box.
Let’s start with CalDAV. The protocol is defined under RFC 4791 and it’s the standard that lets calendar apps talk to a server over the web. On the NZRT setup, the endpoint for calendar sync sits at the Nextcloud server address, followed by a path that includes the word “dav”, then “calendars”, then “users”, and then the specific username. So every user gets their own calendar path on that server.
Setting it up on iOS, Android, or Outlook follows the same basic flow regardless of the app. You go into your device or app’s settings, find the calendar section, choose to add an account, and select CalDAV as the account type. You enter the server address, which is the Nextcloud server hostname, your LDAP username, and your LDAP password. Once you save that, the client auto-discovers all the calendars tied to your account. That’s it. No third-party service involved.
Now for contacts, the protocol is CardDAV, defined under RFC 6352. The server path is almost identical to the calendar one, except instead of “calendars” in the URL you’ll see “addressbooks”. The credentials are exactly the same as CalDAV, so you’re using your LDAP username and password again. On Apple Contacts or Android, you go into the contacts settings, add an account, choose CardDAV, enter those same details, and from that point on all your Nextcloud Contacts groups sync down to the device.
For desktop email clients like Outlook or Thunderbird, the calendar subscription works slightly differently. Instead of adding an account, you typically go into the calendar area, find an option to subscribe to a calendar, and paste in the full URL for the specific calendar you want. That URL includes the server address, the same dav path, and then the calendar name at the end. You authenticate with your LDAP credentials and the calendar appears alongside your other calendars in the client.
Now let’s talk about how the sync actually behaves once everything is connected. It runs two ways, meaning changes you make in Nextcloud show up on your phone, and changes you make on your phone sync back to Nextcloud. By default the sync happens roughly every fifteen minutes, though that interval is configurable if you need it more or less frequent. If two devices edit the same event or contact at the same time, the system uses a last-write-wins approach, so whichever change was saved most recently is the one that sticks.
From an NZRT perspective, this setup is particularly useful for keeping the sales team, the finance team, and HR in sync across desktop and mobile. Because everything goes through the internal Nextcloud server, you’re not routing calendar data through external services like Google Calendar or Outlook cloud. Your scheduling data stays within the NZRT environment.
If you want to dig deeper into any of the pieces that make this work, the related topics to look up in the wiki are Calendar, Contacts, and the REST API and WebDAV page.
That’s it for this episode of the NZRT Wiki Podcast. Thanks for listening.