AlekSystem Workflow Detail

Send a daily AI news digest using Google News, GPT-4o-mini, Sheets and Gmail Workflow Solution

Send a daily AI news digest using Google News, GPT-4o-mini, Sheets and Gmail

Description Add your news topics to a Google Sheet once — with keywords, article limits, and an Active toggle — and every morning at 7AM a personalized news...

Rank 64 Verified workflow

Workflow overview

Why this workflow matters

Relevant for managed services and support workflows. Supports knowledge capture and document intelligence use cases.

Description Add your news topics to a Google Sheet once — with keywords, article limits, and an Active toggle — and every morning at 7AM a personalized news digest lands in your inbox automatically. The workflow fetches fresh articles from Google News for each active topic, parses the RSS feed to extract titles, sources, and timestamps, and uses GPT-4o-mini to write a clear 3-sentence summary per article. All summaries are grouped by topic, assembled into a styled HTML email with dark section headers and article cards, sent to your inbox via Gmail, and logged to a Digest Log sheet with topic count, article count, and sent time. Built for anyone who wants a personalized daily news briefing without manually visiting news sites or curating articles each morning. What This Workflow Does Reads active topics from Google Sheets and skips paused ones** — You control which topics appear in your digest by setting Active to TRUE or FALSE — no need to delete rows to pause a topic Fetches fresh articles from Google News RSS per topic** — Each topic's keywords are used to build a live Google News RSS query so you always get today's articles Respects per-topic article limits** — Each row in your Topics sheet has a Max Articles column so you can get 5 articles for important topics and 2 for lower-priority ones Skips topics with no results today** — If Google News returns nothing for a topic on a given day, that topic is silently skipped rather than breaking the workflow Summarizes each article in 3 plain sentences** — GPT-4o-mini reads the article title and description and writes a factual, no-bullet summary so you can scan the digest quickly Groups all summaries into one styled HTML email** — Articles are organized by topic with dark headers, article cards, source attribution, and time-ago labels — all ready to read in any email client Logs every digest run to Google Sheets** — Date, topics count, articles found, and sent time are saved in a Digest Log tab so you can track your daily coverage Setup Requirements Tools Needed AlekSystem instance (self-hosted or cloud) Google Sheets (two tabs: Topics and Digest Log) OpenAI account with GPT-4o-mini API access Gmail account Credentials Required Google Sheets OAuth2 (used in 2. Google Sheets — Read Topics and 12. Google Sheets — Log Digest) OpenAI API key Gmail OAuth2 > ⚠️ Two separate Google Sheet IDs are used — replace YOUR_GOOGLE_SHEET_ID in 2. Google Sheets — Read Topics and YOUR_LOG_SHEET_ID in 12. Google Sheets — Log Digest. These can be the same spreadsheet or different ones — just make sure each uses the correct Sheet ID. > ⚠️ Your email address — replace YOUR_EMAIL_ADDRESS in 11. Gmail — Send Digest Email with the inbox where you want to receive your daily digest. Estimated Setup Time: 20–25 minutes Step-by-Step Setup Import the workflow — Open AlekSystem → Workflows → Import from JSON → paste the workflow JSON → click Import Create your Topics tab — Open your Google Sheet → add a tab named Topics → add these 4 column headers in row 1: Topic, Search Keywords, Max Articles, Active → add your first topics with Active set to TRUE Example rows: | Topic | Search Keywords | Max Articles | Active | |---|---|---|---| | AI News | artificial intelligence 2025 | 3 | TRUE | | Cricket | india cricket latest | 2 | TRUE | Create your Digest Log tab — In the same spreadsheet or a new one → add a tab named Digest Log → add these 5 column headers: Date, Topics Count, Articles Found, Email Sent, Sent At Get your Google Sheet ID for Topics — Open the spreadsheet containing the Topics tab in a browser → copy the string between /d/ and /edit in the URL Connect Google Sheets for reading topics — Open node 2. Google Sheets — Read Topics → replace YOUR_GOOGLE_SHEET_ID with your actual Sheet ID → click the credential dropdown → add Google Sheets OAuth2 → authorize access Get your Digest Log Sheet ID — If the Digest Log tab is in the same spreadsheet, use the same Sheet ID; if it is a different spreadsheet, open it and copy that Sheet ID Connect Google Sheets for logging — Open node 12. Google Sheets — Log Digest → replace YOUR_LOG_SHEET_ID with the correct Sheet ID → confirm Google Sheets OAuth2 is selected Connect OpenAI — Open node 9. OpenAI — GPT-4o-mini Model → click the credential dropdown → add your OpenAI API key → test the connection Set your email address — Open node 11. Gmail — Send Digest Email → replace YOUR_EMAIL_ADDRESS in the Send To field with your actual email address Connect Gmail — Open the same node 11. Gmail — Send Digest Email → click the credential dropdown → add Gmail OAuth2 → complete the Google authorization flow Activate the workflow — Toggle the workflow to Active — it will run automatically every day at 7AM. To test immediately, click on node 1. Schedule — Every Day 7AM and use the manual Execute option. How It Works (Step by Step) Step 1 — Schedule: Every Day 7AM The workflow fires automatically every day at 7AM using the cron expression 0 7 * * *. It can also be triggered manually using the Execute option in AlekSystem. Step 2 — Google Sheets: Read Topics All rows from your Topics tab are read. Each row contains a topic name, search keywords, max articles limit, and Active status. Step 3 — IF: Active Topics Only This filter checks the Active column for each row. If it equals TRUE (YES path), the topic is included and passes forward to the RSS fetch. If it is FALSE or blank (NO path), the topic is silently skipped — no error is thrown. This lets you pause any topic without deleting it from the sheet. Step 4 — HTTP: Fetch Google News RSS For each active topic, the Search Keywords value is used to build a Google News RSS URL — for example https://news.google.com/rss/search?q=artificial+intelligence+2025&hl=en-US. The RSS feed is fetched as plain text. Step 5 — Code: Parse RSS + Extract Articles The RSS XML text is parsed using regex to extract individual article items. For each item, the title, link, description, source name, and publication date are extracted. HTML tags are stripped from the description. A time-ago label is calculated (e.g. "3 hours ago") from the publication date. Only up to the Max Articles limit for that topic are kept. The output is one object containing the topic name and the articles array. Step 6 — IF: Has Articles? This check confirms whether any articles were found for this topic today. If the articles array has results (YES path), the topic proceeds to splitting and summarizing. If no articles were returned (NO path), the topic is silently skipped — the rest of the workflow continues normally with other topics. Step 7 — Code: Split Into Individual Articles The articles array is split into individual rows — one per article — each carrying the topic name, article title, link, description, source, time-ago, and publication date. Every article then flows through GPT separately. Step 8 — AI Agent: Summarize Article GPT-4o-mini receives the article title, description, and source for each article. The system prompt instructs GPT to write exactly 3 sentences in plain English — factual and specific, no bullet points, no formatting, maximum 60 words total. The 3 sentences are returned as plain text separated by line breaks. Step 9 — OpenAI: GPT-4o-mini Model This is the language model powering the article summaries. Step 10 — Code: Build HTML Email All summarized articles from all topics are collected together. They are grouped by topic name. For each topic, an emoji is assigned from a built-in map (🤖 for AI News, 🏏 for Cricket, ₿ for Bitcoin, ⚙️ for AlekSystem, 🚀 for Startup India, 📰 for everything else). The HTML email is assembled with a dark header showing today's date, a blue stats bar with topic and article counts, topic sections with dark header blocks, and article cards with the article title as a link, source and time-ago, the 3-sentence summary, and a "Read full article →" link. The email is truncated to 4000 characters if needed. Total topic and article counts are also returned for the log step. Step 11 — Gmail: Send Digest Email The formatted HTML email is sent to your address via Gmail. The subject line is automatically set to ☀️ Your Daily News Digest — [Date]. The sender name is set to "Daily News Digest". Step 12 — Google Sheets: Log Digest One row is appended to your Digest Log tab with today's date, the number of topics that had articles, the total article count, Email Sent set to Yes, and the time the email was sent. Key Features ✅ Active toggle per topic — Set Active to FALSE in the sheet to pause any topic without deleting it — it is excluded from that day's digest and re-included when you set it back to TRUE ✅ Per-topic article limits — Each topic has its own Max Articles setting so you can get more coverage on high-priority topics and less on lower-priority ones ✅ Topics with no results are silently skipped — If Google News has nothing for a topic on a given day, it is skipped without breaking the workflow or generating an empty section in the email ✅ Emoji auto-assigned per topic — Topics like AI News, Cricket, and Bitcoin get recognizable emojis in the email header — making sections instantly scannable ✅ Time-ago labels on every article — Each article card shows how recently it was published (e.g. "2 hours ago") so you can tell at a glance which news is freshest ✅ Styled HTML email — no setup required — The email uses inline CSS with dark headers, article cards, and a footer — readable in Gmail, Outlook, and Apple Mail without any template configuration ✅ Daily run logged to Google Sheets — Every digest run is recorded with topic and article counts so you can track coverage trends over time Customisation Options Add a new topic — In your Topics tab, add a new row with the topic name, search keywords (any words or phrase you would search on Google News), your preferred article limit, and Active set to TRUE — it will appear in the next morning's digest. Change the digest delivery time — In node 1. Schedule — Every Day 7AM, edit the cron expression from 0 7 * * * to a different time — for example 0 6 * * * for 6AM or 0 8 * * 1-5 for weekdays only at 8AM. Add more topic emojis — In node 10. Code — Build HTML Email, add entries to the topicEmojis object — for example 'Finance': '💰' or 'Sports': '⚽' — so your new topics get a matching icon. Add a Slack notification alongside the email — After node 11. Gmail — Send Digest Email, add a Slack step that posts the topic count, article count, and a note that the digest has been sent to a #news-digest channel. Target a specific country in RSS results — In node 4. HTTP — Fetch Google News RSS, edit the URL to change &hl=en-US&gl=US&ceid=US:en to a different locale — for example &hl=en-IN&gl=IN&ceid=IN:en for India-specific news results. Troubleshooting Workflow not triggering at 7AM: Confirm the workflow is Active — inactive workflows do not run on a schedule Check that your AlekSystem instance is running at 7AM — self-hosted instances that are off will not fire scheduled workflows Check your AlekSystem server's timezone setting — the cron expression runs based on server time, which may differ from your local timezone To test immediately, click on node 1. Schedule — Every Day 7AM and use the manual Execute option No topics appearing in the email (digest sent with no articles): Confirm your Topics tab has at least one row with Active set to exactly TRUE (not true or True) — the filter check is case-insensitive but the value must be present Confirm YOUR_GOOGLE_SHEET_ID in node 2. Google Sheets — Read Topics is replaced with your actual Sheet ID Open the execution log of step 3 to check how many rows passed the active filter Articles not loading for a specific topic: The Search Keywords for that topic may be too specific or produce no results on Google News — try broader keywords or check the topic's keywords work in a direct Google News search Open the execution log of node 4. HTTP — Fetch Google News RSS and check the raw RSS response — if it is empty or returns an error, the keywords or URL format may be incorrect Some topics may simply have no new articles on a given day — the workflow skips them silently; this is expected behavior Gmail failing to send: Confirm the Gmail OAuth2 credential in node 11. Gmail — Send Digest Email is connected and not expired — re-authorize if needed Confirm YOUR_EMAIL_ADDRESS in the Send To field is replaced with a valid email address Check your Gmail account's daily sending limit — if you send many test runs, you may approach Gmail's limit Google Sheets log not saving rows: Confirm YOUR_LOG_SHEET_ID in node 12. Google Sheets — Log Digest is replaced with your actual Sheet ID — note this may differ from the Topics Sheet ID Confirm the tab is named Digest Log exactly and all 5 column headers in row 1 match exactly Check that the Google Sheets OAuth2 credential is connected in node 12 — it is easy to authorize in node 2 but forget in node 12 Support Need help setting this up or want a custom version built for your team or agency? 📧 Email: info@incrementors.com 🌐 Website: https://www.incrementors.com/

Best fit

Categories

AI/MLCommunication

Services

Google SheetsGmailAI AgentOpenAI Chat Model

Use cases

support automationemail workflow automation