Skip to main content

Sync ics file with Google calendar

Project description

sync_ics2gcal

PyPI version Python package status Documentation Status

Python scripts for sync .ics file with Google calendar

Installation

To install from PyPI with pip, run:

pip install sync-ics2gcal

Or download source code and install using poetry:

# install poetry
pip install poetry
# install project and deps to virtualenv
poetry install
# run
poetry run sync-ics2gcal

Configuration

Create application in Google API Console

  1. Create a new project: console.developers.google.com/project
  2. Choose the new project from the top right project dropdown (only if another project is selected)
  3. In the project Dashboard, choose "Library"
  4. Find and Enable "Google Calendar API"
  5. In the project Dashboard, choose "Credentials"
  6. In the "Service Accounts" group, click to "Manage service accounts"
  7. Click "Create service account"
  8. Choose service account name and ID
  9. Go back to "Service Accounts" group in "Credentials"
  10. Edit service account and click "Create key", choose JSON and download key file.

Create working directory

For example: /home/user/myfolder.

  1. Save service account key in file service-account.json.
  2. Download sample config and save to file config.yml. For example:
wget https://raw.githubusercontent.com/b4tman/sync_ics2gcal/develop/sample-config.yml -O config.yml
  1. (Optional) Place source .ics file, my-calendar.ics for example.

Configuration parameters

  • start_from - start date:
    • full format datetime, 2018-04-03T13:23:25.000001Z for example
    • or just now
  • (Optional) service_account - service account filename, remove it from config to use default credentials
  • (Optional) logging - config to setup logging
  • google_id - target google calendar id, my-calendar@group.calendar.google.com for example
  • source - source .ics filename, my-calendar.ics for example

Usage

Manage calendars

manage-ics2gcal GROUP | COMMAND

GROUPS:

  • property - get/set properties (see CalendarList resource), subcommands:
    • get - get calendar property
    • set - set calendar property

COMMANDS:

  • list - list calendars
  • create - create calendar
  • add_owner - add owner to calendar
  • remove - remove calendar
  • rename - rename calendar

Use -h for more info.

Sync calendar

just type:

sync-ics2gcal

How it works

How it works

Documentation is available at sync-ics2gcal.readthedocs.io.

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

sync_ics2gcal-0.1.5.tar.gz (11.9 kB view details)

Uploaded Source

Built Distribution

sync_ics2gcal-0.1.5-py3-none-any.whl (13.1 kB view details)

Uploaded Python 3

File details

Details for the file sync_ics2gcal-0.1.5.tar.gz.

File metadata

  • Download URL: sync_ics2gcal-0.1.5.tar.gz
  • Upload date:
  • Size: 11.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.5 Linux/6.5.0-1025-azure

File hashes

Hashes for sync_ics2gcal-0.1.5.tar.gz
Algorithm Hash digest
SHA256 019a5919fce6db0242b54c5f30507dec214d4d05245617bd6e93359dfd5fe1b7
MD5 21b58196ee85b40ad29d554b1b4e2a60
BLAKE2b-256 b67115bc3ab8c62ac6d2caf6bd521f6cf965fba7898aef8d1d251db37e558e59

See more details on using hashes here.

File details

Details for the file sync_ics2gcal-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: sync_ics2gcal-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 13.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.5 Linux/6.5.0-1025-azure

File hashes

Hashes for sync_ics2gcal-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 382bbf03bccf8ce6e6145ffe81516280125ea18a6979ed273971f13eacee8d65
MD5 09f63f362c03fa3547871531e3990c70
BLAKE2b-256 1f3604a278137a9b4262ef065bad7734cdcfa2cb8629010af2534c88e9368271

See more details on using hashes here.

Supported by

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