Notion API Guide

Complete Notion API Guide for Students

Learn how to use the newly released Notion API to automate your Notion workflow. This guide is specifically designed to teach students how to make the most out of the Notion API, but the guiding principles apply to everyone. The Notion API will make your favourite tool even more powerful. No coding knowledge required because Zapier and Automate.io are here to help you. And the best of all? Using the Notion API is free if you choose the right tools.

What’s an API?

An API (short for Application Programming Interface) is basically a translator between two apps. Think of it like this: most apps speak different languages and unless they’re all part of the same ecosystem like Apple, they usually can’t interact with each other.

If you get a WhatsApp with your friend asking to meet tomorrow, that won’t show up automatically in your calendar. You, the user, has to do some manual work and enter the information from application 1 (WhatsApp) in application 2 (your calendar).

If both applications have an API, you can instead tell the applications to interact directly. WhatsApp could now send all meeting requests directly into your calendar and you, the user, don’t have to do anything.

So in a nutshell, an API lets two different applications interact directly and saves the user a lot of time.

Why should students use the Notion API?

There are three main reasons for using the Notion API as a student:

  • the API will make you better
  • the API will amplify your workflows
  • the API will teach you valuable skills

Let’s take a closer look:

The Notion API will make you better

Forgot to add that one important document to your reading list? Didn’t transfer all your notes into a flashcard app? Simply forgot a task because you didn’t write it down?

Let’s be honest: no one is fully focused all the time. Mistakes happen and every time you have to do something in order for your system to work, it’s a potential source of error.

Like in other areas, using automation reduces the risk of such mistakes. If you set up Notion to automatically do something for you, you can’t mess it up yourself anymore.

At the same time, using the Notion API can save you a lot of time. Everyone who has tried to establish a certain system, be it fully fledged GTD or a simple folder structure, knows the struggle of having to spend quite some time on keeping the system running.

Setting up an automation requires some time investment upfront, but it will greatly reduce the required time for upkeep in the long run.

The Notion API will amplify your workflow

Usually, as a student, you’re pretty limited in which tools you can use. A lot of powerful software is expensive and it’s usually tailored towards organisations. Existing software for students usually follows fixed patterns and if those patterns don’t fit the way you work, it’s just annoying.

With the flexibility of Notion and the newfound option to integrate it through the API with tons of other Apps, you can now create workflows that’s tailormade to your needs – and for free!

The Notion API will teach you valuable skills

No-Code tools such as Notion have gained massive traction and get more and more powerful. Learning how to use them will teach you a new set of skills that might soon be very much in demand.

And it’s not just the specific tool you’re learning. If you understand how to build a system on the blank canvas of Notion and how to use the Notion API to integrate tons of different apps, you’ll get better at a crucial keystone skill: Systems Thinking.

Things to keep in mind when using the Notion API

In order to make the most out of the Notion API, we need to keep a few guiding principles in mind:

  • Optimise your workspace
  • Understand what the Notion API does – and what not
  • Understand your workflow

Optimise your workspace for the Notion API

Notions flexibility means that no two workspaces look alike. We all build our systems differently and we use the available options in various ways.

When it comes to the Notion API though, we want to stick to one guiding principle to maximise our potential: we need to use databases over pages.

That’s because it’s a lot easier to do automated API actions within a database than within regular Notion pages. It’s certainly possible to do the later, but it’s far less reliable than the database approach.

Added bonus? Getting into the habit of organising your Notion content in databases will reduce clutter and introduce a better structure to your Notion workspace.

Understand what the Notion API does – and what not

The API makes Notion even better at what it is – but it doesn’t change the role of Notion fundamentally.

Already before the API release, Notion excelled at organising everything in one place. It’s a hub where you can create the structures you want from a tool yourself.

There will always be dedicated niche solutions for very specific parts of your workflow that do that job simply better.

The amazing strength of Notion is that it can do all of the above and more because it unifies everything in one place. The API amplifies this strength because it’s even easier to pull information from various sources into Notion – but it doesn’t change the role Notion plays in your workflow.

Understand your workflow

Optimising for the API requires some awareness of your workflow, in particular if you’re a student.

Unless you know how to code and can write automations yourself, you have to rely on services like Zapier or Automate.io to access the API. These services offer free plans (every student’s dream!), but they come with limitations.

That’s why you won’t be able to automate every single thing. Instead, identify the “big things” on your list that would make your life easier and implement those instead of chasing every fun tweak that’s possible.

How to use the Notion API as a student

Before we dive into individual use cases, let’s take a quick look at how to use the Notion API in general. We’ll only cover the so called no-code aspect of it, that means all the things you can do without knowing how to code.

If you know how to code and can write automations for yourself, kudos to you. If you’re looking for inspiration, check out the Ultimate Resource Guide to the Notion API at the bottom of this post or the official Notion API documentation.

For those mortal non-coders of us, we have two options:

  • using a pre-fitted integration between Notion and a different software
  • creating your own Notion API integrations

Native (pre-fitted) integrations for the Notion API

A pre-fitted integration is one where either Notion or the other App already comes with settings that enable you to combine the two.

Here are some examples:

  • use Typeform’s Connect option to immediately export your survey results to a Notion Database Pro Tip: if your survey includes multiple-choice answers, make sure to pre-populate your database with these options to make sure the integration works as intended
  • use Chilipepper to embed a minimalistic Question field on your Notion page and send the answers directly to a database

How to create your own Notion API integrations

Even without any coding knowledge, you can create your own Notion API integrations thanks to third-party services that let you connect Notion to a vast amount of other apps in a few simple steps. The two best services to use are:

  • Zapier
  • Automate.io

A special shoutout here to the service Notion Automations. They sit in the middle between native integrations and build-your-own services like Zapier. They provide you with “ready-build” integrations for various apps with Notion, so if you don’t want a finished out-of-the-box solution, give them a try. Their service is currently priced at $5 / Month, so it doesn’t really fit out “free” criteria, but you can get 30% off with the Code Student30.

Zapier vs Automate.io – what’s better for students?

Should students use Zapier and Automate.io to automate their Notion workspace? The answer is: both!

As a student, one of the most important factors in choosing the right setup is the available budget. Let’s be honest, no one has the money available to pay for a ton of premium services (even if they’re worth it in general).

Luckily, both Zapier and Automate.io offer free plans and by using both services side-by-side, we can maximise the potential of Notion API integrations (for free!)

Both services offer us 5 different automations and are limited to one step each. Zapier is limited to 100 total executions of automations whereas Automate.io offers 300. So we want to use Automate.io for high volume automations to make sure they don’t stop halfway through the month.

Once you got the funds available to pay for either service, the world is your oyster. Automate.io offers the more competitive entry level pricing to get access to multi-step automations at $9.99 but Zapier still has a wider range of available integrations to chose from.

Top Tip: by now, more and more services like Zapier and Automate.io have added support for Notion. That means more free automation options for students! Add Integromat to your list of services and get 1.000 more monthly operations (with limited data transfer though).

How to build any Notion API automation with Zapier

Building your own Notion API automation might seem daunting at first, but it’s actually quite easy. Here’s the quick guide on how to build any automation with Zapier you want.

Notion API Guide for students
  1. Clarify: what do you want to do? Think back to what the main purpose of the API is: enabling information flow between apps. So what’s some information that lives (a) outside of Notion or (b) inside of Notion that you’d like to have elsewhere? A good starter is to look at your own workflow and think of annoying manual steps (like having to click outside of Notion into gCal to see your day)
  2. Specify: open up Zapier and click Make a Zap (a Zap is an automation build with Zapier). Now, pick your Trigger App (the App where you want to get information out of) and specify the exact “information event”. It could be a new appointment added to gCal, a new upload to your drive or a new database item in Google Sheets or Notion. You get the drill – tell Zapier which information to grab. Next, let’s tell Zapier where that information has to go. That’s called the Action in Zapier and it works just the same as picking the trigger. Pick the app where you want the new information to be displayed (add the gCal event to your Notion Calendar for example), specify exactly what information to add where and you’re good to go.
  3. Verify: test your automation to make sure things work. If you have trouble getting it to work, check out the step-by-step guide below or the list of awesome Notion API resources at the bottom of this post.

How to build any Notion API automation with Automate.io

Now, if you create a Notion API automation with Automate.io, things work pretty much the same way. Here’s the quick guide on how to build any automation with Automate.io you want.

  1. Clarify: what do you want to do? Think back to what the main purpose of the API is: enabling information flow between apps. So what’s some information that lives (a) outside of Notion or (b) inside of Notion that you’d like to have elsewhere? A good starter is to look at your own workflow and think of annoying manual steps (like having to click outside of Notion into gCal to see your day)
  2. Specify: open up Automate.io and click Create a Bot (a Bot is an automation build with Automate.io). Now, pick your Trigger App (the App where you want to get information out of) and specify the exact “information event”. It could be a new appointment added to gCal, a new upload to your drive or a new database item in Google Sheets or Notion. You get the drill – tell Automate.io which information to grab. Next, let’s tell Automate.io where that information has to go. That’s called the Action in Automate.io and it works just the same as picking the trigger. Pick the app where you want the new information to be displayed (add the gCal event to your Notion Calendar for example), specify exactly what information to add where and you’re good to go.
  3. Verify: test your automation to make sure things work. If you have trouble getting it to work, check out the step-by-step guide below or the list of awesome Notion API resources at the bottom of this post.

Best Notion API integrations for students I Top Notion API Integrations (for students) I What can students do with the Notion API?

Now, let’s talk about the best Notion API use cases for students! My list of favourites are:

  • Sync all your documents via dropbox to Notion
  • quick capture tasks via Todoist integration to Notion
  • Create recurring tasks in Notion
  • Synch Google Calendar to Notion
  • Export from Notion to Anki

Synch Notion with Dropbox using the Notion API

Here, we’re building an automation that will keep our Notion Database of documents synched with our dropbox folder. Notion sucks at storing documents. That’s why we want to use dropbox as our cloud storage and have Notion simply display the available documents.

We’re using Zapier for this one assuming that our monthly uploads don’t exceed 100 documents. If you upload more, then you would want to build this with Automate.io to make the most out of the free plans.

1. Set up your Trigger App

Click Make a Zap and pick Dropbox from the list of possible trigger apps.

The specific event within Dropbox that should trigger our Automation is New File in Folder.

You have to sign into your Dropbox account now to verify it’s you.

Synch Dropbox to Notion via API for students

2. Specify the Trigger Event

Now we need to tell our Automation where to look for new files. Simply pick the Dropbox folder where you upload your course documents or create a new one. Don’t tick the “File Contents” option here as the sole purpose of this integration is to show the document titles in Notion – editing will happen somewhere else.

Sync Dropbox to Notion via API

Lastly, test your setup to see everything works correctly. For this, you need to have at least one document in your dropbox folder (and it can’t be a folder itself).

3. Set up your Action App

Now let’s get Notion ready. Pick Notion from the list of possible action apps.

The specific action within Notion will be Create Database Item.

Now it’s time to authorise your Notion Account. This is a bit tricky for Zapier the first time, but don’t worry, here’s how to do it:

  1. Head over to your workspace, click on Settings & Members and click on Integrations (it will only appear if you’re the Admin of the workspace)
  2. Select Create New Integration. This will open your browser showing the page My Integrations. Now, click New Integration, give it a name (any name) and select the workspace you want to connect for your Zap.
  3. Click Submit and then copy the Internal Integration Token
  4. Head back over to the Zap Setup, click on Notion Account → Connect New Account and copy the Token into the authentication field

Once you went through these steps once and you ever need to retrieve your Internal Integration Token again, you can simply copy it in the Integrations section of your settings.

Word of caution: this Internal Integration Token is the key to your workspace. Don’t give it to anyone you don’t trust and apply the same level of security you’re using for your passwords (you do have a password manager, don’t you?).

One last thing to do: you need to give the integration access to the database you want to use for synching. That works the same as if you’d invite some person into your workspace. Simply navigate to the specific database, click on share in the top right corner, click invite and select the name of your integration (the one that you gave to get your token).

4. Specify the Action Event

Now on to the specifics of the action: select the database in Notion that you want to use for synching.

Top Tip: set up your database in Notion in advance. It should have at least two properties (File Name and File URL to quickly jump to the document).

To finalise the setup, click on all the database properties that you want to populate via this integration and map them to the information from Dropbox. It should look something like this:

Zapier Notion API Dropbox

For the URL property, you want to select the share link option to make sure you jump right into the document and not to the dropbox location whenever you click it.

Quick capture tasks via Todoist integration using the Notion API

Here’s how to build the perfect quick capture for Notion. And because everything on this list is student-friendly, we’re using the free plan of Todoist. It’s more than sufficient for our purpose because we basically only use Todoist to enter tasks quickly.

This time, we’re using Automate.io because entering tasks is usually a rather high-volume job, so the 300 free actions are coming in handy.

1. Set up your Trigger App

Log into Automate.io and click Make a Bot.

Pick Todoist from the list of Apps, authorise your account and pick New Task as the trigger event.

Automate.io Todoist Integration with Notion API

2. Specify the Trigger Event

If you want, you can now also specify that only tasks assigned to a specific project are captured via this automation. Not much else to do – this automation is pretty easy!

3. Set up your Action App

Select Notion from the list of possible action apps, authorise yourself (it’s much easier with Automate.io – simply sign into your account and grant access to the relevant pages) and you’re good to go.

Make sure that you have your Notion Task Master Database already set up with all the properties you want to populate. I’m using a very simplified version here for the sake of demonstration.

4. Specify the Action Event

Our action event is Add Database Item (because we want to add new tasks to our Notion Task master).

Now, we just need to map the input fields from Todoist to the output fields in Notion (remember: it’s all about transferring information). Leave any fields empty that you don’t want to carry over from Todoist.

My simple setup looks like this:

Notion API for Students

Now, quickly test your setup and enjoy your newest quick capture to Notion thanks to the API.

Send emails to Notion using the Notion API

Here’s how to send yourself an email directly to Notion. It’s particularly useful to capture quick thoughts and notes or as a replacement for a task quick capture like the one before.

Again, we’re using Automate.io because it’s probably a relatively high volume task.

1. Set up your Trigger App

Here, we’re using the build-in email service from Automate.io. Simply select Email from the list of Apps by Automate.io. This will create a unique email address that you can use to forward yourself a mail.

Click Get Email Address, copy that address and create a new contact in your email program of choice titled Notion Task.

send email to Notion

2. Specify the Trigger Event

Nothing to do here – the automation will simply catch any mail send to the unique address.

3. Set up your Action App

Pick Notion and select the action Add Database Item.

If you haven’t authorised yourself for Notion yet, Automate.io will ask you to do so quickly.

4. Specify the Action Event

Now pick the Database where you want to add the email as a note or task.

Lastly, time to map the information from the mail to the database fields of Notion.

Automate.io starts out with the Content fields which are the page content of the task in Notion. Add the Text Body to the Paragraph field to capture the text of the email here.

Notion API for Students

The only other field needed is the name property of your Database (it’s called Task Name in this screenshot). Map the Subject of your mail here.

Notion API Email Automation

Create recurring events in Notion using the Notion API

Recurring tasks in Notion? The wait is over, we can finally do it. We’re using Zapier in this example but you know the drill by now. Space out your automations across the free plans of different services to maximise your automation potential.

1. Set up your Trigger App

No trigger App this time – instead, we use the neat little option Schedule by Zapier.

Recurring tasks in Notion

2. Specify the Trigger Event

The Trigger Event will be the repetition cycle for your task, i.e. every week, day or month.

Now you can further specify when exactly the task should be created.

3. Set up your Action App

Pick Notion to create some nice recurring tasks! The action event will be Create Database Item.

4. Specify the Action Event

Now pick the Database where the recurring task should be created, enter the details of the task (depending on the properties that your database has) and you’re all set

Tip: if you’re a fan of planning out your study sessions, you could use this to schedule revisions for your exams

Synch Google Calendar with Notion using the Notion API

And now, the best for last – finally see all your events in Notion while still using all the cool functions of Google Calendar.

One quick remark before we start: while it’s possible to create both-way synch between Google Calendar and Notion, I don’t recommend doing so (for now). It currently requires multiple separate automations (or multi-step automations), which would not be very efficient for our student use case. Remember, we want to make things work with the free plans.

So this automation is optimised for a workflow where you use Google Calendar for scheduling, moving and cancelling events and Notion is only used to display the results.

It’s inspired by the amazing August Bradley, who shared a great tip on this whole topic here.

1. Set up your Trigger App

Start by picking Google Calendar as your Trigger App.

Now the trick is to not pick New Event as one might thing. We actually want Event Start as our Trigger Event. That’s because the integration wouldn’t otherwise work with recurring events.

With Event Start as our Trigger, we’re simply important all events within a certain time period into Notion, both regular and recurring.

Google Calendar to Notion API

Quickly authorise Zapier for your gCal Account if you haven’t done so yet.

2. Specify the Trigger Event

Choose the calendar within gCal that you want to synch to Notion.

Then, pick the time window that you want to see in Notion. For me, four weeks are more than enough because my long term event planning happens in Google Calendar and I need Notion only to display my upcoming events.

Notion API Google Calendar

3. Set up your Action App

Our Action App is Notion and once again we pick New Database Item as our API Action

4. Specify the Action Event

Lastly, pick your Notion Calendar Database (make sure that you’ve shared this page with your Integration first) and map the information from the Google Calendar Event to your Notion Database properties.

gCal to Notion API for students

Make sure to include the event link. That way, you can always quickly jump out of Notion to your calendar to make any edits.

That’s it! Test it and enjoy quick synch from Google Calendar to Notion via the Notion API.

Bonus: export Notion notes to Anki using the Notion API

Technically, this last one is a bit of an outlier because you can’t fully automate the process yet (I reached out to Alexander, the creator behind this and he told me full automation is on their roadmap though!). But it’s just too good of a use case for any student to pass up on.

You’ve probably heard of Anki, the amazing spaced repetition software (that also happens to encourage Active Practice, one of the best methods to study anything).

Creating flashcards manually can be a huge time investment though. It’s even more time consuming if you first write out notes in Notion and then have to transfer them to Anki manually.

Thankfully, there’s 2Anki.net, a free integration build on the Notion API that lets you export your Notion notes directly into Anki. You can even create fill-in-the-blank style cards.

The Ultimate Notion API Resource Guide (for free)

Want to learn even more about the Notion API but don’t know where to start? I’ve curated a list of the best Notion API content out there, so that you don’t have to look for it yourself. Simply drop down your mail below and I’ll be sending you the link.

Know someone who should be on that list? Tweet me @mfreihaendig and I’ll be sure to include it.

Learning how to learn

Here are some research-based tips on how to study more effectively plus my Study Planner in Notion: