Skip to main content
Donate to the Python Software Foundation or Purchase a PyCharm License to Benefit the PSF! Donate Now

Periodically retrieve ICS files in order to serve them with CalDAV.

Project description

build status

ICalRetriever is a HTTP ICS retriever. It is designed to be called by a crontab each hour in order to download an ICalendar file from a designed HTTP location, eventually apply filters on it, and then write it to the disk.

Then, you can serve the ICal to WebDAV clients (using Radicale WebDAV server for example) in readonly mode, so that their synchronised ICal file is updated each hour conforming to the ICS HTTP source.


ICalRetriever is available on PyPI as icalretriever.


Simply call the retriever with the configuration file as parameter.

$ myConfig.yml

Configuration file

Configuration is written in YAML.

You can sync multiple calendar using one configuration file. Here is an example of configuration file you may want to copy and adapt to your needs:

 - name: Fake calendar (filtered)
   file: output_filtered.ics
     - name: remove_days
       args: [5, 6]
     - name: remove_name
       args: ["Boring event I dont want", "Another boring event"]

 - name: Fake calendar (not filtered)
   file: output.ics


This program is brought to you under MIT license. For further informations, please read the provided LICENSE file.

Project details

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
icalretriever-2.1.1.tar.gz (4.0 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page