Jobs Newsletter Automation System (N8N, Bolt.new, RapidAPI, Mails.so & ChatGPT)

Go to Workflow
842 views
Built by Joseph Joseph
Created on June 05, 2026

Description



Watch on Youtube▶️

Welcome to this complete step-by-step guide on how to build your own newsletter automation system using n8n, Bolt.new, and RapidAPI. Whether you're a solo founder, indie hacker, or community builder, this setup will allow you to collect subscribers, send them curated job updates, and manage unsubscriptions — all with full control and zero reliance on third-party newsletter tools.

🚀 Goal of This Guide

By the end of this guide, you will have a fully working system that allows you to:
Collect user subscriptions from a modern frontend interface
Send welcome or rejection emails (using your own SMTP)
Automatically scrape jobs via an API and send them to subscribers weekly or daily
Manage unsubscriptions with confirmation and webhook logic
Customize and manage all this using n8n workflows with no-code/low-code skills

This system is perfect for niche job boards, community newsletters, or any project that needs automated content delivery to subscribers.

🧱 Tools You'll Be Using

n8n** – for automation workflows and acting as your backend
Bolt.new** – to build your newsletter landing page and subscription interface
Google Sheets** – to act as your lightweight subscriber/job database
RapidAPI** – to pull job listings from the Jobs Search API
Custom SMTP Email (Optional)** – to send branded emails using your own domain

📄 Step 1: Set Up Your Google Sheets Database

Make a copy of this Google Sheets template that will serve as your database:

🔗 Click here to copy the Google Sheet template](https://docs.google.com/spreadsheets/d/11vxYkjfwIrnNHN6PIdAOa_HZdTvMXI0lm_Jecac4YO0/edit?gid=0#gid=0)

This includes:
A Subscribers sheet to store new signups
An Unsubscribers sheet to prevent duplicates
A Jobs sheet to store scraped job listings

⚙ Step 2: Get Your API Key for Jobs Scraping

We use this API from RapidAPI to pull job listings programmatically:

🔗 Jobs Search API on RapidAPI

Sign up or log into RapidAPI
Subscribe to the Jobs Search API
Copy your API key — you'll need this in n8n

⚙ Step 3: Get Your API Key for Email Validation

We use this API from Mails.so to confirm email's validity before adding them to our database:

🔗 Mails.so API

Sign up or log into mails dot so
Visit the dashboard, then click on API
Copy the cURL command and import on http request node

🌐 Step 4: Set Up Your Frontend with Bolt.new

You'll be building a beautiful, modern newsletter landing page using Bolt.new.

Use this link for prompts to generate:
Your landing page
Email templates (welcome, already subscribed, unsubscribe confirmation)
Terms & Privacy Policy pages
Unsubscribe confirmation page

🔗 Access the Bolt.new Prompt Document

This includes:
A homepage form with input fields (Name, Email) and consent checkbox
Logic to send data to n8n webhook using fetch()
UI logic for showing webhook response (Success, Already Exists, Invalid Email)
Unsubscribe page handling

(Make your own copy so that you can edit it while we format the prompts)

📤 Step 5: Set Up Email Sending With Your Custom Domain (Optional but Recommended)

To send branded HTML emails from your own domain, follow this tutorial to configure SMTP properly on n8n with your cPanel email account:

🔗 Guide: How to Set Up SMTP with cPanel Email on n8n

This setup helps:
Improve deliverability
Avoid Gmail spam filters
Send beautiful HTML emails you can customize fully

🔄 Step 6: Create n8n Workflows for Subscription Management

In n8n, you'll need to build these workflows:

✅ 1. Handle Subscriptions
Receives webhook from frontend with name and email
Validates email (using mails.so)
Checks if already subscribed
Sends appropriate HTML email (Welcome, Already Exists, Invalid Email)
Adds to Google Sheet database

✅ 2. Scrape Jobs and Email Subscribers
Use Cron node to run daily/weekly
Use RapidAPI to fetch new jobs
Format jobs into readable HTML
Send jobs to all active subscribers via SMTP

✅ 3. Handle Unsubscriptions
Expose a webhook for /unsubscribe
Confirm email, show a button
On confirmation, add email to Unsubscribers sheet
Show feedback and redirect user back to homepage after 2 seconds

🧠 What You're Learning Along the Way

How to use n8n as a backend service (reliable, scalable, visual)
How to use webhooks to connect frontend and backend logic
How to scrape APIs, format JSON data, and convert it to HTML emails
How to use Function nodes for data processing
How to build logic with IF and Switch nodes
How to design a minimal, clean frontend with Bolt.new
How to control the entire newsletter system without external platforms

Follow me on twitter @juppfy | or check out my agency website.

Nodes Used (6)

Code
n8n-nodes-base.code
Gmail
n8n-nodes-base.gmail
Google Sheets
n8n-nodes-base.googleSheets
HTTP Request
n8n-nodes-base.httpRequest
OpenAI
@n8n/n8n-nodes-langchain.openAi
Send Email
n8n-nodes-base.emailSend