This release is a pre-release and may not be stable for production use.
caldav
This project is a CalDAV (RFC4791) client library for Python.
Features:
- create, modify calendar
- create, update and delete event
- search events by dates
- async support via
caldav.aiomodule - etc.
Quick Start
from caldav import get_davclient
with get_davclient() as client:
principal = client.principal()
calendars = principal.get_calendars()
for cal in calendars:
print(f"Calendar: {cal.name}")
Async API
For async/await support, use the caldav.aio module:
import asyncio
from caldav import aio
async def main():
async with aio.get_async_davclient() as client:
principal = await client.principal()
calendars = await principal.get_calendars()
for cal in calendars:
print(f"Calendar: {cal.name}")
asyncio.run(main())
Documentation and other links
The user documentation (up-to-date with version 3.2) is embedded under docs/source - a rendered copy is available at https://caldav.readthedocs.io/
Other documentation:
- This file
- Changelog
- Contributors guide
- Contact information
- Code of Conduct
- Security Policy
- AI policy and AI disclaimer
- Apache License
- GPL license
There is also a directory docs/design containing lots of documents, mostly AI-generated, containing things like design decisions and other things that neither is deemed important enough to have a document on the root of the project nor deemed to be "user documentation".
The package is published at Pypi
HTTP Libraries
The sync client uses niquests by default (with fallback to requests). The async client prefers niquests as well, falling back to the httpx family (httpx2, httpxyz, httpx) - the first one installed wins. See HTTP Library Configuration for details.
Licences
The caldav library is dual-licensed under the GNU GENERAL PUBLIC LICENSE Version 3 or the Apache License 2.0.
Metadata
Release files for caldav 3.6.0a1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| caldav-3.6.0a1.tar.gz | 765.1 kB | Without provenance | Details for caldav-3.6.0a1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| caldav-3.6.0a1-py3-none-any.whl | Python 3 | none | any | Details for caldav-3.6.0a1-py3-none-any.whl |
Total release size: 1.0 MB
Release files / caldav-3.6.0a1.tar.gz
| Download URL | caldav-3.6.0a1.tar.gz |
|---|---|
| Size | 765.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c0ddba4acf3d0af87b7090c2ab903bbc496f259660dcda67387d2af10029e932
|
|
BLAKE2b-256 checksum How to use checksums |
e1c08a1de60e745654966335aea6c87058fcf1dbab539e09f3c8fa9048754dae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.8
|
Release files / caldav-3.6.0a1-py3-none-any.whl
| Download URL | caldav-3.6.0a1-py3-none-any.whl |
|---|---|
| Size | 259.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ea34ce911a3682a621623ae6d0e678358815bebc97adacd0e5fb50668f0d2de6
|
|
BLAKE2b-256 checksum How to use checksums |
dffe102de7e02b9126bd24ca890e51dd773b3bab90274d607feff472babea1e3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.8
|
Security for caldav 3.6.0a1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.