ads

Latest Update

recent

Latest Update

random

Automate Your Newsletter with Listmonk (RSS to Email Workflow Guide)

Automate Your Newsletter with Listmonk (RSS to Email Workflow Guide)

If you’re running a blog and using Listmonk, automation is the step that turns your setup into a real publishing system. Instead of manually creating campaigns, you can automatically convert blog posts into email newsletters.

This guide explains how to build a complete automation pipeline from RSS feed to delivered email using Listmonk and a lightweight Python script.


How the Automation Works

Blog (RSS Feed)
        ↓
Python Script
        ↓
Listmonk API
        ↓
Email Campaign → Sent Automatically

This architecture ensures that every new article is distributed consistently without manual effort.


Step 1: Get Your RSS Feed

If you're using Blogger, your RSS feed is available at:

https://www.bikrambhujel.com.np/feeds/posts/default?alt=rss

This feed acts as the data source for your automation.


Step 2: Install Dependencies

pip3 install feedparser beautifulsoup4 requests

Step 3: Fetch and Format Latest Posts

import requests
import feedparser
from bs4 import BeautifulSoup

RSS_URL = "https://feeds.feedburner.com/BikramBhujel"

feed = feedparser.parse(RSS_URL)
posts = feed.entries[:5]

content = "<h2>Weekly IT Insights</h2>"

for post in posts:
    title = post.title
    link = post.link
    summary = BeautifulSoup(post.summary, "html.parser").get_text()[:120]

    content += f"""
    <h3>{title}</h3>
    <p>{summary}...</p>
    <a href="{link}">Read More</a>
    <hr>
    """

This script collects the latest five posts and formats them into an email-friendly structure.


Step 4: Create Campaign via Listmonk API

response = requests.post(
    "https://your-domain/api/campaigns",
    auth=("admin", "API_TOKEN"),
    json={
        "name": "Weekly Newsletter",
        "subject": "Latest Insights from Bikram Bhujel",
        "lists": [3],
        "type": "regular",
        "content_type": "html",
        "body": content
    }
)

Step 5: Send Campaign Automatically

campaign_id = response.json()["data"]["id"]

requests.put(
    f"https://your-domain/api/campaigns/{campaign_id}/status",
    auth=("admin", "API_TOKEN"),
    json={"status": "running"}
)

This step removes the need for manual sending.


Best Practice: Use Digest Instead of Single Post

  • Single post emails: High frequency, lower engagement
  • Digest emails: 3–5 posts, higher value (recommended)

Digest newsletters reduce inbox fatigue and improve click-through rates.


Common Issues

Invalid list ID: Use numeric ID (e.g., 3), not UUID

Authentication error: Use API token correctly

No emails sent: Check SMTP configuration and subscriber count


Frequently Asked Questions

Can Listmonk automate email sending?

Yes. Using the API, you can create and send campaigns automatically.

How many posts should I include in a newsletter?

Three to five posts provide a good balance between value and readability.

Does this work with Blogger RSS?

Yes. Blogger RSS feeds work seamlessly with this setup.

Can I schedule emails instead of sending instantly?

Yes. You can use the send_at field in the API request.

Is this setup suitable for production use?

Yes. With proper SMTP and domain configuration, it is production-ready.


Conclusion

Automating your newsletter with Listmonk transforms your blog into a complete distribution system. Once configured, every post is automatically delivered to your audience in a structured format.

For the initial setup, refer to this guide:

Self-Hosted Email Newsletter Setup Using Listmonk

No comments:

Please Don't Spam Comment Box !!!!

All Rights Reserved by Bikram Bhujel © 2019 - 2030
Powered By Bikram Bhujel, Designed by Bikram Bhujel
Powered by Blogger.