How to automatically send emails on Notion Database property change?

This article explains how to automatically send emails when a Notion status property changes. The process involves using Notion, Nohooks, Gmail, and Make (formerly Integromat) to set up a webhook, listen to Notion database changes, and send emails on changes. The article provides detailed steps for each tool and includes bonus tips for using the approach with other properties.

Jun 29, 2023
 
Notion started out as a productivity tool but soon expanded into an all-in-one tool to manage projects, employees, orders, inventory, sales, and so on. With expanding use cases, there is a need for Notion to talk to other systems like Gmail, Sheets, Invoice Generators, etc. In this article, we will go through one such use case, i.e. sending automatic emails when a Notion status property changes.
 
We will be using 4 tools in this article:
  • Notion - For setting up the database
  • Nohooks - Listen to Notion database changes
  • Gmail - To send emails on changes
  • Make (formerly Integromat) - To tie all the other tools together and create a workflow
 
 

Step 1: Setup Notion

On Notion, we will be using their sample Tasks database. You can duplicate the database here or you can use your own database.
 
  1. Setup your desired database
  1. Setup a column that stores the previous value of the property. In this case, we have setup a Previous Status property by duplicating the existing Status property.
    1. notion image
 
💡
We will use the Previous Status property to determine if the Status has property changed since the last time we checked.
 

Step 2: Setup Webhooks on Make

Make is an automation platform that allows users to integrate various applications and services to streamline their workflows. It enables users to connect different apps and automate complex processes without writing any code.
 
  1. Log in to your Make account
  1. Create a New Scenario
  1. Add the Webhooks module
  1. Create a new Webhook by clicking on Add. You can name it anything you want.
    1. notion image
  1. Copy the Webhook address using the option Copy address to clipboard
 
 

Step 3: Setup Nohooks

Nohooks.io enables you to connect and start receiving webhook events based on activities from third party platforms like Notion. So if a database page is added or updated on Notion, Nohooks will inform external services about it.
 
  1. Create an account on Nohooks
    1. notion image
  1. Connect Notion using the “Create Notion connection” option
    1. notion image
  1. Specify the Database ID for which you need to listen to the property changes.
    1. Notion Database URL
      Notion Database URL
      Setup Database ID on Nohooks
      Setup Database ID on Nohooks
  1. Go to your Notion connection and click on the + Add Endpoint option.
  1. Specify a name for the Endpoint and the Webhook address (copied in the last step) under the URL input.
    1. notion image
  1. Click on Create Endpoint.
 
Our Nohooks setup is done! Now, any change on Notion will be propagated to Make through the Webhook address.
 

Final Step: Bringing it all together on Make

Until now, we have setup the Webhook module on Make. Now, we will connect this module to the Gmail and Notion modules.
But first, the Webhook module needs to understand the structure of the data coming from Nohooks. To do that,
 
  1. Make a change to the status property in any of the database rows.
  1. Use the Run once option on Make so that it receives a sample change from Nohooks.
 
After the above two steps, Make understands the structure of the data. This can be further used in the Gmail and Notion modules.
 

Filter Setup

We need to set up a filter before connecting further modules. This is so that we only send emails when the value in Status property is not equal to the Previous Status property.
 
notion image
 
 

Gmail Module Setup

Add the Gmail module to Make and configure it with your desired email subject and body. You can also include your updated page property data.
notion image
 
 

Notion Module Setup

The next step of this workflow is to update the Previous Status property value to the latest Status property value. This will ensure that we only listen to changes between these two properties and no other property.
To do this, we need to add the Notion module on Make and select the Update a Database Item action.
 
notion image
 
Now, you have to switch on the Scheduling on Make to ensure that Make trigger the scenario the data coming in the Webhook address.
notion image
 

Conclusion

That’s it! If you change the Status property on Notion, you will get an email for the same.
Do follow us at 🐦 Twitter for more such valuable content about Notion.
Check out 🌎 NotionApps, our tool to create powerful apps from Notion databases, without any coding.
 

Bonus Tips

  1. You can use either Make, Zapier, or any other automation tool that provides Webhooks.
  1. You can use the same approach for any property type. But, you’ll have to compare each property based on its structure.