We're currently working on a comprehensive manual for DAVdroid. Until it is available, you can find some background information here and in our Frequently Asked Questions.
When logging in by URL, DAVdroid asks for the "Base URL". This can be:
- the root URL (
/) of your server if well-known URLs are configured (recommended, see below), or
- a valid CalDAV URL, i.e.
- a valid CardDAV URL, i.e.
So, DAVdroid will query the base URL for both CalDAV and CardDAV and use whatever it finds. If CalDAV and CardDAV are separated on your server and well-known URLs are not configured, you'll have to create two DAVdroid accounts: one for CalDAV (use the CalDAV URL as base URL) and one for CardDAV (use the CardDAV URL as base URL).
To refresh the collection list and create collections on the server, DAVdroid needs to know the CalDAV/CardDAV homeset, so these functions will only be available if a principal and/or homeset URL can be found for the respective protocol.
/.well-known/caldav → CalDAV service path (302 Found), e.g.
/.well-known/carddav → CardDAV service path (302 Found), e.g.
If these redirects are configured correctly, you can use the root URL
http(s)://your.server.example/ without any additional paths as the base URL in DAVdroid.
ACCESS_LEVEL = ACCESS_DEFAULT("server default")
ACCESS_LEVEL = ACCESS_PUBLIC("public")
ACCESS_LEVEL = ACCESS_PRIVATE("private")
ACCESS_LEVEL = ACCESS_CONFIDENTIAL(currently not supported by most calendar apps, which will reset the access level to
ACCESS_PRIVATEwhen the event is edited); additionally,
CONFIDENTIALis stored as original value
CLASSvalue (x-name or iana-token) →
ACCESS_PRIVATE; additionally, the value is stored as original value
In the other direction, the locally stored access level is mapped to
CLASS like that:
ACCESS_LEVEL = ACCESS_PUBLIC("public") →
ACCESS_LEVEL = ACCESS_PRIVATE("private") →
ACCESS_LEVEL = ACCESS_CONFIDENTIAL("confidential", if available in calendar app) →
ACCESS_LEVEL = ACCESS_DEFAULT("server default") →
- if there is an original value: use that value
CLASSotherwise (same as