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.0.tar.gz (10.2 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.0-py3-none-any.whl (224.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: caldav-3.0.0.tar.gz
  • Upload date:
  • Size: 10.2 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.0.tar.gz
Algorithm Hash digest
SHA256 002f0c675c5fbe8d8e87387e19fb1a8ef6ee74e41ecf31978fe37b48869be841
MD5 faea25076d5ce0f2fd7a7c2171d580b2
BLAKE2b-256 e3110ca7f5abe67c17db12c3a1bc5e49f4a9e114ef7a144007ac04ded2e9febb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: caldav-3.0.0-py3-none-any.whl
  • Upload date:
  • Size: 224.1 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 98830afb47fada371dd07042b4d0a071d9e4987ef23048f63215479d267ea681
MD5 fa0a8d0573996b1cc2997ff5f39e5d1a
BLAKE2b-256 c8d0173ec7ce2942515ffdf3d40835d55fe75fae50ed5e7904fadaaabcab3c85

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