Greg Morris

Add Information To Notion With Shortcuts

Without getting too much into the tools I use (yet again) I have been enjoying using Notion lately for all of my productivity needs. It’s not perfect but the power and flexibility it offers me for free is pretty crazy. One of the downsides is using it on the go as the iOS apps leave a little to be desired, but seeing as my usage on mobile is limited now I built a shortcut to help out.

The Set Up

The Notion API has been around a little while but it’s very under utilised in my opinion. Given the fact Notion appeals to a wide rage of businesses and individuals alike it comes as no surprised that the API allows for quite a lot to be achieved without even opening the app. In order to get access to this you will need to visit their integrations page and set up you own access token.

1 – Whilst signed in to Notion, head to the main page for setting up automation and add a new integration with a name of your choice. Once set up you will need the API Key, so copy this somewhere safe. This allows limitless access to your Notion data (with a few bits of extra information needed) so please keep it safe!

2 -Second you will need the ID of the database you want to add information into, you can find this in the URL when the database is open as a page. This does not work with Linked Databases so make sure you have the original one open and copy the URL.

https://www.notion.so/{workspace_name}/{database_id}?v={view_id}

If you have only one Workspace you wont have the Workspace name in your URL, so just copy everything after the Notion URL and before the question mark.

While you have this page open share this database with your integration by clicking ‘Share’ then ‘Add people, emails, groups or integrations’ and selecting the integration you just set up. This gives the API full access to this database only. In my example below this is my ‘Inbox’ where everything goes first for me to sort out later on at my desk.

The Shortcut

Download the Shortcut found here. Paste in the API Key when requested and secondly add in the Database ID. You can change these afterwards by editing the commented text boxes with the relevant data.

Once run, this simple set upasks you for a title and some content for the quick database entry you are making. This then puts the information into the below JSON format using the supplied variables. The real power of using the Notion API is the possibilities are huge. The API contains the ability to set up any number of blocks inside this page, rich text styling, adding images and loads more. You can find out more information in their extensive API documents.

{
    "parent": { "database_id": "{database ID}" },
    "properties": {
        "title": {
      "title": [{ "type": "text", "text": { "content": "{page title}" } }]
        }
    },
    "children": [
    {
      "object": "block",
      "type": "paragraph",
      "paragraph": {
        "text": [{ "type": "text", "text": { "content": "{block content}" } }]
      }
    }
  ]
}

I have set up a few of these to be able to add in items for my Todo list, blog post ideas and also clip web information for me to look at later on. I may look at creating something much bigger in future as my usage of Notion increases, it may never pull me away from Obsidian fully but it’s an amazing service none the less. If you create something I would love to see where you go with the Notion API and Shortcuts.

Reply via: