Allows the creation of recurring tasks in Notion.
Project description
notion_scheduler
This tool allows the creation of---drumroll---recurring tasks in Notion!
This is done by defining a Notion database (which I will call the Scheduled database) that contains rules for recurring tasks. This tool reads these definitions and creates each occurrence of those tasks in your actual tasks database (which I will call the Tasks database).
DISCLAIMER: I am not responsible if this tool causes any data loss in your Notion database. Always back up your data!
Installation
pip3 install notion-scheduler
notion_scheduler -h
You can also run this from source by installing all the requirements (see requirements.txt
) and running ./notion_scheduler.py -h
.
Tip: the --dry-run --log-level=verbose
option set can be really useful to see what will happen before applying changes.
Fields required in the Scheduled database
The fields below are case insensitive.
Name of field | Type of field | Description |
---|---|---|
Title | Text | The title of the task |
Recurrence | Text | The recurrence rule for the task (see recurrent for supported rules) |
Not on | Text | A recurrent rule that describes dates to exclude |
Start date | Date | The date from which notion_scheduler should start creating this task |
Include time | Checkbox | Whether to include time in the created tasks (defined in the Recurrence field) |
Duration | Text | If "Include time", how long should each created task last (see durations for syntax)? Empty means no end time. |
Reminder | Text | A durations rule that describes when you should be reminded. Empty means no reminder. |
Date field | Text or Select | The name of the date field of the Tasks database |
Any additional fields defined in the Scheduled database will be copied over to each created task, as defined in the properties_to_sync
configuration option (see below).
Configuration
The configuration file is located at $XDG_CONFIG_HOME/notion_scheduler/config.yml
.
Options
The options below should be in YAML format in the configuration file.
Name of option | Type | Description |
---|---|---|
todo_collection_url |
str |
The url of the Tasks database. |
scheduled_collection_url |
str |
The url of the Scheduled database. |
token_v2 |
str |
Notion v2 token. Get by inspecting your browser's cookies on a Notion page. |
properties_to_sync |
List[str] |
Additional properties to sync over from the Scheduled database. |
tags_property |
str |
The Select field named by this option for which to add the tag scheduled_tag for each created task. |
scheduled_tag |
str |
The tag to put in tags_property for each created task. Allows notion_scheduler to keep track of which tasks in the Tasks database it has generated, so that it can replace them with the updated ones on every run. |
rescheduled_tag |
str |
If you ever manually reschedule a scheduled task in the Tasks database, remove the tag scheduled_tag from the field tags_property , and add the tag defined by this option. This allows control over which tasks notion_scheduler deletes on re-run (see command-line options). |
status_property |
Optional[str] |
If this exists, set the Select field named by this option to status_before_today if a created task is scheduled for before today, or status_after_today if a created task is scheduled for on or after today. |
status_before_today |
str |
See status_property |
status_after_today |
str |
See status_property |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file notion_scheduler-1.0.3.tar.gz
.
File metadata
- Download URL: notion_scheduler-1.0.3.tar.gz
- Upload date:
- Size: 5.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
e248ce4feaecbf52ad49676ae52371f4aafe744b20e368497f86a6237e1e9bab
|
|
MD5 |
7f606da42d7347da577d5fd9871301d3
|
|
BLAKE2b-256 |
22db87d64ecc898d30af7d38bdbf42026adfa90f6a20c7ffea2ecd45d5359d1a
|
File details
Details for the file notion_scheduler-1.0.3-py3-none-any.whl
.
File metadata
- Download URL: notion_scheduler-1.0.3-py3-none-any.whl
- Upload date:
- Size: 6.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
49c04b29b5f6d7bc9005679a1c98e3896cbbc49f9df59ddc3ad04f42f1084bbe
|
|
MD5 |
a7ca1822166121017b56dc69e99d4dad
|
|
BLAKE2b-256 |
ba03787efe120d2595d2c3ce56bfba7aa9c7e1789c5cc292c4ffd1404ad60594
|