๐Ÿ“‹ Automation flow from Notion to GitHub with email notifications

โšก 822 views ยท ๐Ÿ“‹ Project Management

๐Ÿ’ก Pro Tip โ€” If you need GitHub data beyond what the REST API gives you, ScraperNode has a repository scraper that extracts metadata at scale without token rate limits.

View All Scrapers

Description

This automation allows you to track feature requests in Notion, create GitHub issues automatically, and notify your team via email based on issue status. Itโ€™s ideal for technical and functional teams who collaborate on project delivery using Notion and GitHub.

๐Ÿ”น SECTION 1: Detect and Sort Issues from Notion

Combining: Schedule Trigger + Notion Database + Field Mapping + Status Routing

โฐ 1. Schedule Trigger

๐Ÿ”ง Node Type: Schedule Trigger (you can use a webhook trigger if you are on Notion paid plan)

๐Ÿ’ฌ Description: Triggers the workflow every X minutes to check for new or updated Notion database pages.

๐Ÿ“‘ 2. Get Many Database Pages (Notion)

๐Ÿ”ง Node Type: Notion โ†’ Get All Database Pages

๐Ÿ“‹ What it does: Fetches all rows (pages) from a Notion database that represents tasks or feature requests.

โœ๏ธ 3. Sort Issues Fields ๐Ÿ”ง Node Type: Set

๐Ÿ“‹ Goal: Restructures or cleans data fields such as Title, Status, Labels, and Repository.

๐Ÿ”€ 4. Switch: Issue Status Decision

๐Ÿ”ง Node Type: Switch

๐ŸŽฏ What it does: Separates logic based on the Status of the Notion item:

If status is โ€œTo developโ€ โ†’ proceed to create issue

Else โ†’ send notification to the team

๐Ÿ”น SECTION 2: GitHub Issue Creation (IF โ€œTo developโ€)

Combining: GitHub Node + Notion Update

๐Ÿ™ 5. Create an Issue (GitHub)

๐Ÿ”ง Node Type: GitHub โ†’ Create Issue

โš™๏ธ What it does: Creates a new issue on the GitHub repo defined in the Notion row.

๐Ÿ“ฅ Inputs: Uses dynamic fields: Title, Description, Labels, Repository.

๐Ÿงฉ 6. Set Status and Issue URL (Notion Update)

๐Ÿ”ง Node Type: Notion โ†’ Update Database Page

๐Ÿง  Role: Updates the status of the issue in Notion to In progress and stores the created GitHub Issue URL.

๐Ÿ”น SECTION 3: Notify Team on Already In-Progress Items (IF NOT โ€œTo developโ€)

Combining: Notion Users + Filtering + Email Grouping + Gmail

๐Ÿ‘ฅ 7. Get Many Users (Notion Users)

๐Ÿ”ง Node Type: Notion โ†’ Get All Users

๐Ÿ“ฅ What it does: Retrieves the list of team members (to be notified).

๐Ÿง  8. Map Notion Users

๐Ÿ”ง Node Type: Set

๐Ÿ“‹ Role: Maps and formats data for each user (e.g., Name, Email, Role).

๐Ÿงน 9. Exclude Bot

๐Ÿ”ง Node Type: Switch

๐Ÿšซ What it does: Excludes automation/bot users (e.g., notifications@noreply).

๐Ÿงฎ 10. Group Recipients

๐Ÿ”ง Node Type: Aggregate

๐ŸŽฏ Goal: Collects all user emails into a single array to send one email to all recipients.

๐Ÿ“ฌ 11. Send a Message (Gmail)

๐Ÿ”ง Node Type: Gmail โ†’ Send Email

๐Ÿ”— Nodes Used

GitHub, Gmail, Notion, Schedule Trigger

๐Ÿ“ฅ Import

Download workflow.json and import into n8n: Workflow menu โ†’ Import from File

๐Ÿ“– Importing guide ยท ๐Ÿ”‘ Credential setup