#422 - Notion for Everything

4 minute read

I finally made good on my excitement for the Notion API.


My motivation here was use-case driven. I had a weird split of “to dos” in my life. Some were managed in iOS Reminders app. Others were included in the “Projects” database in my Notion. I tried finding a task manager that could meet the following requirements:

  1. Set a task deadline as a separate thing from a “due date”
  2. Set a “flagged” status (or functional equivalent) for things I want to focus on ‘soon’ without setting arbitrary due dates
  3. Had a widget that allows me to see my tasks due today/overdue, with deadlines this week, or tasks I’ve flagged.
  4. Works well with Siri so I can input new tasks without touching my phone.

Long story short, I didn’t find an app I liked that met all my criteria. Then I thought, “Hey, Notion has an API… I bet I can make it do some of the things it doesn’t natively do”. Turned out I was right.

New Architecture

My Notion Architecture was split into separate workspaces. Formerly I just had the ‘Aaron’ workspace with everything. I’ve split out the “Knowledge Base” databases into their own workspace, separate from the “Main” Workspace.

Here is is presented as an Entity Relationship Diagram.

a diagram I drew

Notion-Based Task Management

Notion is the most incredible, versatile digital tool I’ve ever seen. But it lacks certain basic features you’d want from a primary task manager. I’m going to end this Column early and simply use that as my Top 5.

In short, though, I figured out how to make Tasks work in Notion pretty well utilizing their API. Now I only use iOS Reminders for edge cases, like location-based reminders.

Top 5: Overcoming Task Management Shortfalls in Notion

5. Task Clutter - Design a Heavily Constrained View

Design your task workflow and management such that you’re typically interacting with a smaller set of tasks. I never look at a view “all tasks”. Instead I look at my “Short List” for things that are overdue, due today, have a deadline within a week, or are flagged for priority. This keeps the list very manageable.

4. Hard to Access - Use Siri Shortcuts to Read Them to You

Hey Siri, What’s on my short list?” - this is my trigger phrase that runs a Siri Shortcut that fetches (via API) what’s meets my ‘short list’ criteria, then reads them to me out loud.

3. Hard to Input - Use Siri Shortcuts to Write Them

Hey Siri, New Task” - this is the trigger phrase that runs a Siri Shortcut that asks me for further input wherein I can stipulate what task I need to accomplish. If I include something Siri recognizes as a date, it will assign that date as the task’s due date. If it doesn’t include a date, it goes to my Notion Inbox database.

2. No Recurring Tasks - Use a Helper Script

Every night a Google Apps Script I wrote fires off a fetch request to the Notion API looking for any Tasks in my database that are checked “Done” that have a non-empty “Recurs” property. If it finds any, it then sends off another web request for each completed recurring task in which it resets the “Done” property and moves the Due Date out in accordance with whatever rule I’ve put in the “Recur” property1.

1. No Widget - Build a Custom One

Using the “Scriptable” app I was able to build a widget that fired off a web request that mimicked my Short List, then presents it on my home screen.

I am using Scriptable’s device APIs to query my calendars for today. Events get displayed at the top of the widget. Under the dotted line is tasks directly from Notion.
Tapping any of the items listed opens directly to that page in Notion.
Tapping the ➕ allows me to enter a new task by hand.
Tapping 🙊 allows me to dictate one.
The 🔄 button refreshes the widget.


Also yes we bought a Tesla. It’s awesome.


I am a man. Nobody ever calls me that.  Ben

  1.  My implementation of ”Recur” allows you to set an quantity, a unit, and whether or not to recur from the time of completion or the time the task is due. So my “Take Out Trash” task has recur “1 week from due” whereas the “clean the cat litter” has recur “2 days from done”