Automate GitHub Release Emails with n8n HTTP and Email Nodes

This n8n workflow automates sending email alerts for new GitHub releases by fetching the latest release info and converting markdown release notes to HTML. It saves you time and ensures you never miss updates from your favorite repos.
httpRequest
emailSend
scheduleTrigger
+4
Workflow Identifier: 1543
NODES in Use: Schedule Trigger, HTTP Request, If, Split Out, Markdown, Email Send, Sticky Note

Press CTRL+F5 if the workflow didn't load.

Learn how to Build this Workflow with AI:

Visit through Desktop for Best experience

Opening Problem Statement

Meet Sarah, a project manager who oversees several software projects. Every day, she spends at least 30 minutes manually checking if new releases are published on her team’s GitHub repositories. This tedious task eats into her productivity and sometimes, due to human error or oversight, she misses important updates that affect deployment schedules and client communications. Sarah knows there must be a smarter way to stay updated without constantly monitoring GitHub releases.

In fact, missing release notifications costs her team an average of 2 hours weekly in catch-up meetings and troubleshooting due to late updates. Sarah needs an automated, reliable solution that alerts her instantly whenever a new release is published on specific GitHub repos.

What This Automation Does

This n8n workflow is designed precisely to solve Sarah’s dilemma. Running on a daily schedule, it performs the following key functions:

  • Fetches the latest release information from a specified GitHub repository using the HTTP Request node.
  • Checks if the release was published within the last 24 hours to avoid redundant notifications.
  • Extracts the release notes content and converts it from markdown format to HTML for richer email formatting.
  • Sends an email notification with the latest release details including formatted release notes directly to the designated recipients.
  • Automatically skips sending emails if no new release is found, avoiding spam.
  • Includes easy-to-update sticky notes for quick customization of the GitHub repo URL and recipient email address.

By automating this workflow, Sarah saves over 30 minutes daily, gains timely updates, and eliminates human error from her release communication process.

Prerequisites ⚙️

  • n8n Automation Platform (cloud or self-hosted) 🔑
  • GitHub repository URL from which to fetch release data 🔌
  • SMTP email account credentials to send emails 📧 (e.g., Gmail SMTP, custom mail server)
  • Basic knowledge of navigating the n8n editor interface ⏱️

Optional: If self-hosting n8n, consider providers like Hostinger for reliable hosting (see https://buldrr.com/hostinger).

Step-by-Step Guide

Step 1: Create a Daily Trigger Node

In the n8n workflow editor, click the + button to add a new node. Select Schedule Trigger from the nodes panel.

Configure it to run daily by setting the interval to 1 day.

You should see the node labeled “Daily Trigger” ready to start your workflow every day at midnight by default.

Common mistake: Forgetting to set the interval correctly can cause the workflow to run too often or not at all.

Step 2: Add HTTP Request Node to Fetch Latest GitHub Release

Add the HTTP Request node and connect it to the Schedule Trigger node.

Enter the GitHub API URL for the latest release of your target repository, for example: https://api.github.com/repos/n8n-io/n8n/releases/latest.

Leave headers blank unless you need authentication tokens for private repos.

After execution, this node fetches JSON data on the newest release.

Common mistake: Using incorrect or expired GitHub URLs can cause failed requests.

Step 3: Add an If Node to Check Release Date

Add the If node and connect it to the HTTP Request node.

Configure its condition to check if the published_at field in the JSON response is after the current time minus one day, using this expression:

= {{$json.published_at.toDateTime()}} >= DateTime.utc().minus(1, 'days')

This ensures the workflow only proceeds if a release was published within the last 24 hours.

Common mistake: Incorrect date formatting or expression syntax causes the node to always return false.

Step 4: Use Split Out Node to Extract Release Body

Add the Split Out node connected to the If node’s true output.

Configure it to extract the body field from the release JSON, which contains the markdown release notes.

This step isolates the markdown text for conversion.

Common mistake: Specifying the wrong field name will result in empty data downstream.

Step 5: Convert Markdown to HTML

Add the Markdown node connected to the Split Out node.

Set the mode to markdownToHtml and map the markdown content from the body field using the expression {{ $json.body }}.

Configure the destination key to html so that the converted HTML is added to the JSON data for easy email formatting.

Common mistake: Forgetting to set the destinationKey causes the HTML not to be generated.

Step 6: Configure the Email Send Node

Connect the Markdown node to the Email Send node.

Set the To Email address where the release notifications will be sent.

Use the {{ $json.html }} expression in the HTML body field to send the nicely formatted release notes.

Specify the subject as something like “New n8n release” to make the email clear.

Provide your SMTP credentials in the node’s credentials tab.

Common mistake: Incorrect or missing SMTP credentials will cause email sending to fail.

Step 7: Add Sticky Notes for Easy Customization

Add two Sticky Note nodes to your workspace with instructions:

  • One to highlight changing the GitHub repo API URL.
  • Another to note where to change the recipient’s email address.

This helps non-technical users tailor the workflow quickly.

Customizations ✏️

1. Add Multiple Recipient Emails

In the Email Send node, update the “toEmail” field to a comma-separated list of emails, e.g., [email protected],[email protected].

This sends notifications to multiple stakeholders simultaneously.

2. Use GitHub Authentication Token for Private Repos

In the HTTP Request node, add a header named Authorization with value Bearer YOUR_GITHUB_TOKEN to access private repositories securely.

3. Change Trigger Frequency

Modify the Schedule Trigger node to run hourly or weekly by adjusting the interval settings as needed.

Troubleshooting 🔧

Problem: Email node fails with authentication error

Cause: SMTP credentials are incorrect or expired.

Solution: Go to the Email Send node, verify SMTP credentials under credentials tab, and test connection.

Problem: HTTP Request node returns 404 error

Cause: Incorrect GitHub API URL or repository name.

Solution: Check your GitHub repo URL, ensure it matches the format https://api.github.com/repos/OWNER/REPO/releases/latest.

Problem: No email sent even when new release published

Cause: The If node condition may be misconfigured or the date/time in the GitHub JSON does not match.

Solution: Verify the expression and test the date formats in the If node.

Pre-Production Checklist ✅

  • Confirm Schedule Trigger is set to desired cadence.
  • Test HTTP Request node with your GitHub repo URL to receive valid JSON response.
  • Validate If node condition returns “true” for recent releases.
  • Ensure markdown conversion outputs HTML correctly.
  • Send test email to verify SMTP settings and formatting.
  • Backup workflow before enabling production run.

Deployment Guide

Once tested, activate the workflow by toggling it “On” in the n8n editor.

Make sure your n8n instance is running and accessible for scheduled triggers.

Use the execution logs panel to monitor runs and catch any errors.

FAQs

Can I use this workflow with any GitHub repository?

Yes, as long as the repo is public or you provide authentication for private repos.

Does this workflow consume API rate limits?

Yes, GitHub API enforces rate limits. Using authentication tokens increases your limit.

Is my email sending secure?

Emails are sent via your SMTP server – ensure you use secure credentials and servers.

Can I customize the email format?

Yes, you can modify the Email Send node’s HTML field to include more details or custom styling.

Conclusion

By building this automation, you have created a hands-free system that keeps you instantly notified of new GitHub releases for your chosen repositories. This workflow saves valuable time by eliminating manual checks and ensures timely communication with your team.

Sarah, like you, can now reclaim those daily 30 minutes lost and avoid costly missed updates. Next, consider expanding it to multiple repos or integrating with chat tools like Slack for even broader notifications. Keep experimenting, and your automation toolkit will grow stronger!

Promoted by BULDRR AI

Related Workflows

Automate Viral UGC Video Creation Using n8n + Degaus (Beginner-Friendly Guide)

Learn how to automate viral UGC video creation using n8n, AI prompts, and Degaus. This beginner-friendly guide shows how to import, configure, and run the workflow without technical complexity.
Form Trigger
Google Sheets
Gmail
+37
Free

AI SEO Blog Writer Automation in n8n

A complete beginner guide to building an AI-powered SEO blog writer automation using n8n.
AI Agent
Google Sheets
httpRequest
+5
Free

Automate CrowdStrike Alerts with VirusTotal, Jira & Slack

This workflow automates processing of CrowdStrike detections by enriching threat data via VirusTotal, creating Jira tickets for incident tracking, and notifying teams on Slack for quick response. Save hours daily by transforming complex threat data into actionable alerts effortlessly.
scheduleTrigger
httpRequest
jira
+5
Free

Automate Telegram Invoices to Notion with AI Summaries & Reports

Save hours on financial tracking by automating invoice extraction from Telegram photos to Notion using Google Gemini AI. This workflow extracts data, records transactions, and generates detailed spending reports with charts sent on schedule via Telegram.
lmChatGoogleGemini
telegramTrigger
notion
+9
Free

Automate Email Replies with n8n and AI-Powered Summarization

Save hours managing your inbox with this n8n workflow that uses IMAP email triggers, AI summarization, and vector search to draft concise replies requiring minimal review. Automate business email processing efficiently with AI guidance and Gmail integration.
emailReadImap
vectorStoreQdrant
emailSend
+12
Free

Automate Email Campaigns Using n8n with Gmail & Google Sheets

This n8n workflow automates personalized email outreach campaigns by integrating Gmail and Google Sheets, saving hours of manual follow-up work and reducing errors in email sequences. It ensures timely follow-ups based on previous email interactions, optimizing communication efficiency.
googleSheets
gmail
code
+5
Free