For a long time Notion was a closed system that on the one hand offered many functions, but on the other hand, was limited because it could not communicate with the outside world aka external apps. Thanks to the Notion API that was launched in May 2021, this is an issue of the past. In the following post, I will show you the possibilities the Notion API offers and as an example, I will show you step-by-step how to connect Notion with the Google Calendar.
What is changing due to the Notion API?
First the basics: What is an API? An API (Application Programming Interface) describes a programming interface that enables communication between two apps.
You have to imagine this as if you were sitting in a restaurant as a guest: Think of the guest area and kitchen as two different apps that need to communicate with each other in order for the restaurant system to work.
The job of the kitchen is to prepare your dishes. But the kitchen staff needs a way of communication so that it is informed of orders from the guests.
Because without incoming orders, they don’t know what food to prepare and as a result, you’re left hungry at the table. Fortunately, in real life, this job is done by a waiter. In the software world, the waiter would be called API. The waiter takes your order, tells the kitchen what to do, and (hopefully) comes back to you with the right answer – the dish you have ordered.
Here is another real-life example:
I’m sure you’ve already searched online for a flight? You probably did not do this on the airline’s website, but via a flight search engine, since on those websites, you will not only find the data for a single airline but for almost all airlines that are operating in the world.
If you place an order for a flight to a specific destination with a specific airline at a specific time on such a flight engine, just like in a restaurant, the API communicates between the airlines and the flight search engine and shows you which suitable flights from all the different airlines are still available.
What possibilities does the Notion API offer?
Notion as a no-code-tool is a generalist and not a specialist. It is good enough for most tasks but cannot outperform apps that specialize in solving just one task.
For example, you could use Notion as your personal calendar, but Google Calendar will still be the first choice for most users, as it has more options and is more user-friendly.
Until last year, users were forced to use Notion together with other apps without automatically exchanging data. Thanks to the API, you can now build a communicating ecosystem with Notion and other apps: If there are things that other apps can do better, you simply continue using them and – when you need the data – you simply transfer the data to Notion with the API.
So what exactly can you do with the Notion API?
A lot of things: The possibilities are so diverse that most Notion API solutions released to date only scratch the surface of the possibilities. In this post, I’m going to show you several commonly requested examples that you can try with your Notion system today. Before we get into the specific examples, though, you need to understand how Notion connects to Zapier. If you have already worked with Zapier in the past, you can skip this part.
Notion API and Zapier
Zapier is often described as a translator between the web APIs of different applications.
Coming back to our restaurant example, suppose you are on vacation and you don’t speak the waiter’s language, then you would need a translator.
Zapier does exactly the same thing: it makes sure that the different APIs can talk to each other without you having to code around. By connecting different web applications, Zapier allows you to automate many steps that you would otherwise need to do manually.
For example, Zapier automatically saves my invoices that are sent by email in the correct Google Drive folder because I use Zapier to link the two Google services Gmail and Google Drive have.
If you want Notion to communicate with other apps (without doing a lot of coding), Zapier is a great choice. Another alternative that is becoming more and more popular in the Notionverse is Automate.io. While Automate.io is cheaper, Zapier offers more connections to apps. Which app you are going to prefer in the end, depends on your specific use-cases.
Connect Notion API and Zapier. The first steps
In the first step, you have to create a Notion integration. Go to the page http://notion.so/my-integrations/ and click on “create new integration “.
Name the integration and share it with your Notion workspace. Now select the page or table that you want to connect with Zapier or Automate.io. In this example, I choose my daily To-Do-List Click on “Share to web†in the top right corner and on “Inviteâ€. Now your previously created integration should appear here. Select them and click “Inviteâ€.
Congratulations! Your Notion Page is now ready to connect to Zapier or Automate.io.
Connecting Notion with Zapier
Zapier asks you which App you want to select: Choose Notion and specify what you want to do:
- Create a new item in the database
- Update an item in the database
- Or search for an item in the database
Once you’ve completed this step, all you have to do is connect your personal Notion account to Zapier. You need the “Internal Integration Token†for this. You can find this on notion.so/my-integrations/. Just click on your integration and copy the token.
Finally, your Notion account is connected to Zapier. Now, you can connect your Notion dashboard to thousands of different apps. In the following section, I’ll show you how to perform one of the most popular Notion automation:
Connecting Notion to the Google Calendar
A lot of people use Notion as a to-do list and at the same time use Google Calendar to schedule appointments. It would therefore be convenient if Google calendar entries would automatically appear on the to-do list in Notion.
Previously, users had to add these appointments manually to the to-do list (and I personally forgot to do this transfer several times and missed a couple of deadlines).
However, to prevent this from happening to you in the future all you have to do is the following:
In Zapier, select Google Calendar as the app and specify “New Event†as the trigger. Now connect to your Google account and select the correct calendar under “Set up Triggerâ€.
When you click on “Test trigger†a calendar from the Google Calendar should appear. If not, there is no entry in your calendar yet. In this case, simply create a new calendar entry and test the trigger again with Zapier.
Now add Notion as an app and enter “Create Database Item†as the Action Event. Of course, you must also select your Notion account. If it’s not already connected to Zapier, just follow the steps in the Connect Notion to Zapier section.
Now all you have to do is find the database that you use to power your to-do list in Notion (in my case, that’s the Action Items Database). Then connect the fields of your database with the respective fields of the calendar entry. Important for me are:
a) Date
b.) Priority: This is automatically set to Scheduled so I know it’s an appointment and not just a task.
c.) Status: I automatically set this as “Active†for new entries. All processed tasks are then marked as “Doneâ€.
In the final test, everything should work perfectly. Congratulations on setting up your first Zap!
Finally, one more question for you: Which automation options do you want to implement with the Notion API? I’m curious about your ideas!
Until next time,
Your Philipp