The day has finally arrived! For Notion users, the release of their API (application programming interface) has been an eagerly awaited moment.
We won’t get too much into the weeds on API’s, but they essentially allow for different apps to speak to each other, send/receive information, keep multiple apps connected. API’s can be great resources that save time by avoiding duplicating information and decreasing manual operations.
Notion users have been pining for the API for a while. Notion is incredibly powerful, but in cases where individuals or teams are using different platforms, it hasn’t been possible (or easy) to share information between apps.
In this example, we’re going to connect Notion and Google Calendar using Automate.io, a powerful automation tool that can connect many well-known apps. One thing to note: automation tools like Automate and Zapier have caps on the number of bots you can create, so plan to use them intentionally, unless you’re willing to pay for unlimited use.
Whether you’re using work tools like Google Calendar for scheduling, Todoist for task management, or Typeform for creating forms or surveys, the API brings exciting possibilities for receiving, sending, and sharing, information across different tools
Sending Notion Info to Other Apps
A lot of the interest over the past week has been around sending information to Notion. I tend to lean toward the inverse. Notion housing only the essentials means it’s ultimately easier to maintain, preventing workspace wastelands from accumulating.
In this example, we’re going to send Tasks from Notion to Google Calendar, including some of the Tasks’ properties.
Setting Up Integrations
Automate.io and Zapier are the two most common tools for integrations; in testing, Automate was able to do more with sending info to Google Calendar when you update a Task, versus solely creating a new task.
Remember! Both tools have caps on how many bots or ‘zaps’ you can create monthly, so it may be useful to test out a few workflows to find those that are truly helpful, and upgrade if needed.
Creating a Bot in Notion
The first thing you’ll want to do is create an Integration in Notion. In Settings & Members, go to Integrations at the very bottom and click Develop your own integrations.
From here, you’ll select + New Integration, Name your new integration, and select the Associated Workspace.
Once you click Submit, Notion will generate a Token, which you’ll paste into Automate.io or any other bot tool you’re using.
Add Apps (Notion & Google Calendar)
Now that we’re ready to make our first bot, you want to select the apps you’re connecting.
In this example, we’re trying to do the following:
- When a task in a Notion database gets a Due Date and Time,
- Create an event in Google Calendar.
This is a very specific use case, but you can really share any item from a Notion database to your calendar, as long as you have a date property available in the database.
In Part 1 of your bot, add the following properties:
- Database (whatever database you’re referencing in Notion)
- Created Time (you’ll need a Created Time property in your database)
- Last Edited Time (same as above)
In Part 2 (Google Calendar), we’ll add the following properties:
- Summary = Page Name (ie. task)
- Description = Page Content
- Start Time = Page Due Start Date
- End Time = Page Due End Date
So far, the task date requires a start and end time — I think this is just a limitation of the API being in beta, so you will have to put a start and end date (we’ll look at that in a moment)
Once we have both apps connected, we can test the connection, now let’s take a look at an example.
Testing the Integration
To test the integration, add a start and end time in the Due Date property.
Next, go into Google Calendar and check to see if the task appears.
I mentioned this earlier, but create bots with intention. Bots — like every other system — need to be managed, and have to make work easier to be useful.
I have a YouTube video coming soon on this. 😊
Let me know if this works for you in the Comments, or if you’ve created something different!