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 |
Metadata
Release files for notion-scheduler 1.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| notion_scheduler-1.0.3.tar.gz | 5.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| notion_scheduler-1.0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 12.2 kB
Release files / notion_scheduler-1.0.3.tar.gz
| Download URL | notion_scheduler-1.0.3.tar.gz |
|---|---|
| Size | 5.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e248ce4feaecbf52ad49676ae52371f4aafe744b20e368497f86a6237e1e9bab
|
|
BLAKE2b-256 checksum How to use checksums |
22db87d64ecc898d30af7d38bdbf42026adfa90f6a20c7ffea2ecd45d5359d1a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|
Release files / notion_scheduler-1.0.3-py3-none-any.whl
| Download URL | notion_scheduler-1.0.3-py3-none-any.whl |
|---|---|
| Size | 6.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
49c04b29b5f6d7bc9005679a1c98e3896cbbc49f9df59ddc3ad04f42f1084bbe
|
|
BLAKE2b-256 checksum How to use checksums |
ba03787efe120d2595d2c3ce56bfba7aa9c7e1789c5cc292c4ffd1404ad60594
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|