Skip to main content

CalDAV (RFC4791) client library

Project description

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.aio module
  • 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())

The documentation was updated as of version 2.0, and is available at https://caldav.readthedocs.io/

The package is published at Pypi

HTTP Libraries

The sync client uses niquests by default (with fallback to requests). The async client uses httpx if installed (pip install caldav[async]), otherwise falls back to niquests. See HTTP Library Configuration for details.

Licences:

Caldav is dual-licensed under the GNU GENERAL PUBLIC LICENSE Version 3 or the Apache License 2.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

caldav-3.0.2.tar.gz (10.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

caldav-3.0.2-py3-none-any.whl (225.4 kB view details)

Uploaded Python 3

File details

Details for the file caldav-3.0.2.tar.gz.

File metadata

  • Download URL: caldav-3.0.2.tar.gz
  • Upload date:
  • Size: 10.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for caldav-3.0.2.tar.gz
Algorithm Hash digest
SHA256 a3ac848c8b9d63c36ede36dff0c07bf6fd06426074d25453c992795f2f7ad96d
MD5 826dffa3134ea1eb557facd0a32366e5
BLAKE2b-256 162eb06d9e81d337e1f6f12d9acdeea3899f3ad13922e4959ff453d0ed59137d

See more details on using hashes here.

File details

Details for the file caldav-3.0.2-py3-none-any.whl.

File metadata

  • Download URL: caldav-3.0.2-py3-none-any.whl
  • Upload date:
  • Size: 225.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for caldav-3.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 58ef50babbfc0feace239008c58e10e4b34acc2df7f2f2e1bec8126f79e8bd80
MD5 c261bf4698f968228523d0f07870e139
BLAKE2b-256 9af45f34e1d56b6f83b6bce33ee0d1b2a2f10b9dc97befe7ecbb809e9e050f72

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page