- Using Notion with Make
- Connect Notion with Make
- Internal vs. Public Connection
- Public connection (SSO)
- Retrieve newly added databases or pages
- Internal connection (Integration token)
- Add Databases to be visible in Boost.space Integrator
- Watch database items
- Find the Database ID
- Create database items
- Update database items
- Use case: Sync Notion events database with Google Calendar
- Step 1 - Watch Database Items
- Step 2 - Router
- Step 3 - Google Calendar modules
- Test and schedule the scenario
Notion provides an all-in-one workspace for teamwork or individual usage. It is a great tool for managing all your work in one place, but this makes integrating other tools with Notion a significant task. Notion’s popularity among Make usersCan use the system on a limited basis based on the rights assigned by the admin. More is increasing every day.
Start with this guide to learn how to connect Notion with Make, and how to automate workflows using Notion database itemsItems are rows in records (order/request/invoice/purchase...), databases, and pages.
With the Notion modulesThe module is an application or tool within the Boost.space system. The entire system is built on this concept of modularity. (module - Contacts) More in Make, you can:
-
watch newly created or updated database items and send their data to other apps.
-
retrieve specific database items and use their data in your scenariosA specific connection between applications in which data can be transferred. Two types of scenarios: active/inactive. More.
-
create or update database items according to the data you get from other apps.
-
watch newly created or updated databases and pages to triggerEvery scenario has a trigger, an event that starts your scenario. A scenario must have a trigger. There can only be one trigger for each scenario. When you create a new scenario, the first module you choose is your trigger for that scenario. Create a trigger by clicking on the empty module of a newly created scenario or moving the... a scenarioA specific connection between applications in which data can be transferred. Two types of scenarios: active/inactive. More.
-
create or update databases according to data you get from previous modules.
-
search and retrieve specific databases or pages to use in your scenario.
-
watch newly added or updated page content
-
list the existing content of a specific page.
-
append content to a page according to data from previous modules.
In this getting started guide, we will focus on the most common way to use Notion with Make; watching, creating, and updating database items.
You must be a Workspace ownerCan manage members, managers and owners of a specific space. Can view and manage items. Can edit settings of a given space. More of your Notion workspace to connect it to Make. You can verify your access level on the Notion Settings screen, on the MembersCan view and manage items while using existing statuses and labels. More tab.
Internal vs. Public Connection
-
Public ConnectionUnique, active service acces point to a network. There are different types of connections (API key, Oauth…). More lets you use the Single Sign-on (SSO) with your Notion account. You will be able to select the pages you want Make to access. Whenever you want to add a new database or page to the Selected Pages that Make has access to, you will need to reauthorize the connection. Choose a public connection if you want Make to have access your whole workspace, or if you’re not planning on adding more pages to the connection.
-
Internal Connection lets you create your own integration from your Notion account and use an Integration TokenThe API token is a multi-digit code that allows a user to authenticate with cloud applications. More to connect Notion to Make. To give Make access to your databases or pages, you will need to configure the integration of those pages manually in your Notion account. Whenever you want to add a new database or page, you will need to invite the integration account into that page from the Invite section. Choose an internal connection if you frequently add new pages that will be processed by your automation.
-
Add a Notion moduleThe module is an application or tool within the Boost.space system. The entire system is built on this concept of modularity. (module - Contacts) More into a scenario. Click Add next to the Connection field.
-
Select Notion Public from Connection Type. Give your connection a descriptive name, and then click Save.
-
In the dialog that appears, review the permissions you’re giving to Make, then click Select pages.
-
Select pages that Make will have access to and then click Allow access.
If you use the public connection type, and you added new pages to the Notion account, you must revoke the connection in your Notion account and then reauthorize the connection in Make to retrieve the added databases or pages.
To retrieve newly added databases and pages:
-
Open your Notion account and click Settings & Members > Connections.
-
Click the three-dots menu next to your Make connection, then click Disconnect all users.
-
Open Make and go to Connections. Find the connection and then click Reauthorize. Follow the steps on the screen to give Make access to your pages.
You can now see the newly added databases and pages in your Notion Make connection.
-
Log in to your Notion account.
-
Click Settings & Members > My connections > Develop or manage integrations. Alternatively, go to https://www.notion.so/my-integrations to open the integration settings directly.
-
Click Create a new integration.
-
Fill in the Basic information, select an Associated workspace, and review the integration’s access settings.
-
Click Save changes.
-
Copy the Internal Integration Token to your clipboard.
-
Log in to Make and add a module from Notion into a scenario.
-
Click Add next to the Connection field.
-
Select Notion Internal under Connection type. Then enter a descriptive name for your connection.
-
In the Internal Integration Token field, enter the token you copied in step 6 and click Save.
Add Databases to be visible in Boost.spaceCentralization and synchronization platform, where you can organize and manage your data. More IntegratorPart of the Boost.space system, where you can create your connections and automate your processes. More
For the Notion internal connection, by default, Notion databases do not appear in the Database ID field > Search option. You must manually add them to the Boost.space Integrator app from your Notion account.
To add databases from your Notion account to Boost.space Integrator app:
The Watch database items module triggersEvery scenario has a trigger, an event that starts your scenario. A scenario must have a trigger. There can only be one trigger for each scenario. When you create a new scenario, the first module you choose is your trigger for that scenario. Create a trigger by clicking on the empty module of a newly created scenario or moving the... your scenario when someone creates or updates a database in Notion.
-
You have two options; watch database items ‘by created time’ or ‘by updated time’.
-
By created time: If want to trigger the scenario only with new database items but not with updated items.
-
By updated time: If you want to trigger the scenario both with new items and updated items.
-
The database that you want to use should have been created before you start automating. To find the database ID, you can check out the URL of the Notion page or you can use the Search functionFunctions you can use in Boost.space Integrator - create, update, delete, get, search. in Make modules:
-
Database ID in the URL: Database ID is the part of the URL between the first ‘/’ and ‘?’.
-
Search by query: Click on the ‘Search’ button, enter the name of the database and click ‘OK’. The database ID will be filled automatically.
Note: If you are creating a new database, check out Retrieve newly added databases or pages
The Create a Database itemItems are rows in records (order/request/invoice/purchase...) module allows you to create new items in an existing database.
You have two options to enter the database ID and to map the values of the new database items:
-
Select from the list (Recommended): lets you find the database ID with a query and automatically shows the list of fields available for mappingMapping links the modules in your scenario. When you map an item, you connected the data retrieved by one module to another module to perform the desired action. For example, you can map the email address and subject lines from the Email > Watch emails module to Google Sheets > Add a row and create a spreadsheet of email addresses.... Note: if the fields do not show up, try saving the module by clicking ‘OK’ and opening it again to load the database fields.
-
Enter manually: lets you enter the database ID manually and map the details of the fields manually by selecting Key, Value Type, Value groups. For more information, see the property schema objects.
The Update a Database Item module allows you to update an existing database item.
Similar to the “Create a Database Item” module, this module offers “Select from list” or “Enter Manually”. We recommend using the “Select from the list” option for its simplicity.
-
Select from the list (Recommended): Click ‘Search’ and enter the name of the database, then click OK. The Database ID is automatically populated with the ID of the selected database. Click on the Database Item ID field to map this ID from previous modules (e.g., Watch Database Items). Then select the field you want to update, either by manually entering a value or by mapping values from previous modules.
One of the most popular use cases for Notion is syncing a database with Google Calendar to help you track your calendar events in one place. To better understand this use case and to show how to use Make to implement it, we will break down a ready-to-use templateTemplates are predefined scenarios that you can expand and customize to create new scenarios. You can then share these with friends and colleagues. More; Create Google Calendar events from Notion Database Items.
This scenario watches database items by updated time. When new database item data arrives, the scenario checks if they are new items, existing items, or deleted/canceled items. Then, the scenario either creates a new Google Calendar event, updates an existing event, or deletes an existing event.
To use this template or to create this use case from scratch, the Notion database that stores the events needs to have these properties:
-
Title: text field
-
StatusCreate statuses for each module separately to create an ideal environment for efficient and consistent work. More: select the field with two options; “Scheduled” and “Cancelled”
-
Event ID: text field that will store Google Calendar event IDs
-
Meeting Time: date field that will store the start and end times of the meetings
If you prefer to use an empty Notion database with these properties, you can duplicate this example database into your Notion account.
Note: This template expects the userCan use the system on a limited basis based on the rights assigned by the admin. More to manually change the status of the event in Notion; “Scheduled” or “Cancelled” to create or delete events in Google Calendar.
Note: If you decide to use the template itself, make sure the setup is matching the screenshots in this guide. There might be some parts where you need to change the Mapping switch or add field mappings by yourself.
Step 1 – Watch Database Items
Start with the first module, which is the trigger module: Watch Database Items.
After you connect your Notion account, find the database ID of the Notion database which stores your events. Set up the scenario to watch database items ‘By updated time’. You want to trigger this scenario any time an event is updated, not only when an event is created.
Step 2 – Router
The Router module with 3 routes allows you to perform 3 different actions depending on filter conditions.
-
First route (New event) checks if the event is a newly created event (meaning the event doesn’t exist in Google Calendar yet). The filter in this route checks if the Event ID is empty (null) and if the status of the event is “Scheduled”.
-
Second route (Updated event) checks if the event was already created on Google Calendar (Event ID is not null) and if the status of the event is “Scheduled” (meaning it was not canceled).
-
Third route (Deleted event) checks if the event exists on Google Calendar (Event ID is not null) and if the status of the event is “Cancelled”.
Step 3 – Google Calendar modules
Google Calendar modules create, update or delete events.
-
Create an Event (first route); creates a new event by mapping the title, start date and end date.
-
Since this is the route that handles a new Google Calendar event, add a Notion module at the end to reference the Google Calendar Event ID in the Notion database.
-
-
Update an Event (second route): Finds the Google Calendar event by Event ID and updates the Google Calendar event details (title, start date, end date) for it to reflect the changes in Notion database.
-
Delete an Event (third route): finds the Google Calendar event by Event ID and deleted it.
-
Use the additional Notion module at the end to remove the Event ID from the Notion database and add a note saying that the event was deleted.
-
Test and schedule the scenario
Once the scenario is complete, you can test if it works as expected.
-
Right-click Watch Database Items module and select Choose where to start.
-
You can choose ‘From now on’ or ‘Since specific date’ to trigger the scenario with a new event.
-
-
Click Run once and see if the data bundles were transferred as shown below.