Automation Solution for Transferring Emails to Notion Database Pages in the Notes Section

Scenario: Streamlining the automation of transferring emails to the Notion database, ensuring they are seamlessly organized within recipients’ profiles. Each recipient’s page will feature a note section with distinct subsection categories for enhanced categorization.

Objective:
Automatically archive email with/without attachments from participants in our Notion database, organizing them into individual pages. Each new email will be identified by a unique subject line format (Title: Person). If a corresponding page for a person doesn’t exist, it should be created. Additionally, each page will feature a categorized note section matching the unique subject title.

Examples of types of titles:
Date - Meeting Notes
Date - Scout Pitch
Date - Email from XXXXX
Date: Due Diligence Notes -

steps you’ve tried

  1. Email Monitoring:
  • Set up an email monitoring system that can track incoming and outgoing emails.
  1. Subject Line Parsing:
  • Develop a script or use a tool to parse the subject lines of incoming emails and extract the person’s name from the specified format (Title: Person).
  1. Notion API Integration:
  • Utilize the Notion API to interact with your Notion workspace programmatically.
  1. Page Existence Check:
  • Before archiving an email, check if a Notion page already exists for the identified person. If not, proceed to create a new page.
  1. Page Creation:
  • If a page doesn’t exist, automatically create a new page in the Notion database, associating it with the identified person.
  1. Note Section Categorization:
  • Implement a mechanism to categorize and organize the note section on each Notion page based on the unique subject title.
  1. Automated Archiving:
  • Develop a process to automatically archive the email content into the corresponding Notion page, ensuring it is linked appropriately.
  1. Update and Sync:
  • Ensure that the system can update existing pages when new emails arrive, keeping the information in Notion synchronized with the latest email exchanges.
  1. Error Handling:
  • Implement error handling mechanisms to address any issues that may arise during the automation process, such as network errors, API limitations, or incorrect data formats.

I’m grateful for any suggestions or advice you can provide. The community support with this task would be truly appreciated. Thank you.

blueprint.json (302.7 KB)


Welcome to the Make community!

1. Scenario blueprint

Please export the scenario blueprint file to allow others to view the mappings and settings. At the bottom of the scenario editor, you can click on the three dots to find the Export Blueprint menu item.

Screenshot_2023-08-24_230826
(Note: Exporting your scenario will not include private information or keys to your connections)

Uploading it here will look like this:

blueprint.json (12.3 KB)

2. And most importantly, Output bundles

Please provide the output bundles of the modules by running the scenario, then click the white speech bubble on the top-right of each module, save the bundle contents in your text editor as a bundle.json file, and upload it here into this discussion thread.
Screenshot_2023-10-06_141025

Providing the output bundles will allow others to replicate what is going on in the scenario even if they do not use the external service.

Following these steps will allow others to assist you here. Thanks!

2 Likes

Solution:
[Webinar] Triggers & Functions/Condition logic:
[Webinar] Triggers & Functions – YouTube

Mapping Logic To Isolate:
Name & Subject Title

The Substring function extracts a specific portion of a string, defined by the starting and ending positions. In this case, it indicates the starting position.

The Index of function is utilized with a “(” as a marker to capture everything following this point. The addition of “+1” is employed to exclude the “(” from being included in the output.

The Length function dynamically captures the entire length of the entry. Subtracting 1 is then applied to exclude the “)” from being included in the output.




I used outlook rules to automatically trigger my automation based on my (3 letter) unique key.

Issues:
I am in the process of fine-tuning my search filters as numerous Page IDs are currently linked to my subject line. However, the code should be designed to function seamlessly with any subject line that contains 3letters as a unique key to indicative the beginning of the string within parentheses () before specifying the recipient’s name associated to the PAGE ID.

Hope this helps.

3 Likes

Hello there @Kamilah_Torres welcome to the community :wave:

I just want to say awesome work figuring this one out! :clap:

Also, thank you so much for taking the time to step back into this thread and for sharing your solution and your learnings with us. This is incredibly valuable and can serve as inspiration to many :pray:

2 Likes

Thank you so much for posting that video on your youtube channel. It made a huge difference towards my understanding how to implement functions to filter out components of my string. I appreciate your team’s efforts to encourage the make community and look forward to watching more videos pertaining to filtering and the implementations of functions.

2 Likes