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 | Provenance | Actions |
|---|---|---|---|---|
| notion_scheduler-1.0.3.tar.gz | 5.6 kB | Without provenance | Details for notion_scheduler-1.0.3.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| notion_scheduler-1.0.3-py3-none-any.whl | Python 3 | none | any | Details for notion_scheduler-1.0.3-py3-none-any.whl |
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
|
Security for notion-scheduler 1.0.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.