Notion API and Make
How I used them both to populate hundreds of pages in seconds
I’ve always believed that the best way to learn a new skill is to make a little passion project. Start with a topic you already know and love, and build something helpful for people in that niche. For me, it’s video games. And for this case study, that video game is Animal Crossing.
If you don’t know it, Animal Crossing: New Horizons is a social sim where you build up a community on a getaway island. The game released in March 2020 as the UK went into lockdown, so it became a daily ritual for me during those long days stuck in my flat.
My favourite aspect of Animal Crossing is the collecting. There’s a variety of fish and bugs you can catch and donate to the island’s museum. But it’s not simple. For example, some creatures only appear in certain months or weather conditions. Remembering which things I’d already caught and donated was tricky.
So of course I had to make a Notion template to track everything! I started with a database for the islanders. Each one has a name, a birthday, a species, a catchphrase, and a few other attributes. Notion can handle all these data types so it didn’t take me long to create a database to hold these details.
However, the difficulty spiked when it came to filling in the details. Typing out one islander’s database entry took me about two minutes. To add all 413 of them to the database this way would have taken me a minimum of 826 minutes, assuming I did it non-stop and didn’t make any mistakes. For context, the combined length of the Lord of the Rings extended editions is 686 minutes. That’s just under 11 and a half hours.
This is not great. And this is the time I’d spend on adding islanders alone, let alone all the fish and bugs! Luckily, I sped up lots of the manual work using the power of automations and the Notion API.
Make and Notion API
An API (or application programming interface) allows two systems to talk to each other. Notion’s API allows you to do things like create or update pages in a database, which is helpful for connecting Notion to other tools.
Even if you can’t code, you can still use APIs. Tools like Make allow you to connect APIs and create automations using a simple drag-and-drop interface. Speeding up my database building using Make with the Notion API made a lot of sense.
I started by pulling in islander data from the Nookipedia API using a HTTP request. I created another step in Make to clean the data, which gives me a nice bundle of data I can use.
You can see here I have a bunch of neat data about Bob the cat, and each item has an easy reference. If you don’t prepare the data like this up-front, the automations later on won’t work as you expect.
Once I have the data values, I can start mapping them into my Notion database. For this step, I had to make sure the property types in Notion matched the value in Make. So the Nookipedia link property in my Notion database was set to a URL type, so I can click on the link once it’s in my Notion database.
It’s also easy for me to tweak data in Make before I add it to Notion. It’s helpful for when the data from the API isn’t what I want to show in the Notion database. Here I’m adding both the birth day and the birth month together in the Birthday field in Notion.
I ran this automation over all of the islanders. Each islander took about six seconds to generate, which gave me a total setup time of 41 minutes. Much faster than before! I also didn’t give my carpal tunnel typing out database entries for fourteen straight hours which is a plus.
I created more databases for fish, bugs, and other collectibles. With these I also made different views to make the data more helpful. One example is I showed animals available to catch each month, grouped by where on the island you could catch them.
This Animal Crossing template is available to download for free in the Gubbins shop. Feel free to get a copy for yourself so you can see how the databases work in more detail.
If you want to try making something with the Notion API, Thomas Frank has created a great guide on how to get started here. It requires a basic level of coding knowledge, but it’s a fantastic way to learn how APIs work.
And if you’d like help making this sort of thing, send me a message. I’m a certified Notion Partner so I help people and companies with this sort of thing all the time.
This is the script for a lightning talk I gave at Notion Café London on October 17.