How it works
What this workflow does
Bring recent headlines from a small set of approved industry feeds into one Slack message. A daily schedule reads up to five RSS feeds, keeps recent and distinct links, asks OpenAI to select up to four relevant stories, and posts a digest with the original source link and a short explanation of why each item matters. The workflow records a per-day reservation so normal serial operation sends only one digest per UTC day.
The workflow imports inactive with dryRun: true. Run with sample data uses fictional headlines and sample digest copy, so the preview does not call RSS feeds, OpenAI, the Data Table, or Slack.
This is the news-monitoring layer for the Content Publishing, Social Distribution & Newsletter Intelligence blueprint; the Campaign Launch Assurance & Weekly Performance blueprint covers planned campaign reporting.
Filter feeds before the model sees them
Plan digest window validates the Data Table, Slack channel, one to five public HTTPS RSS feeds, the OpenAI model, and a lookback between 6 and 72 hours. It fixes the UTC day key used for the digest reservation.
After the feed read, Select recent distinct headlines removes the URL fragment to catch duplicate links, drops items outside the lookback window, strips HTML from excerpts, sorts newest first, and keeps at most twelve headlines. Empty feeds or no recent items stop the path without a Slack message.
Select stories and keep sources
OpenAI receives the configured focus statement and the filtered headlines. It returns up to four items with distinct source IDs, a summary of at most 220 characters, and a whyItMatters note of at most 180 characters. Verify news digest sources rejects unknown or repeated IDs and rebuilds every digest item from the original feed title and URL. The model cannot replace the source link.
The workflow reserves the UTC day with post_pending, posts the digest to Slack, confirms the returned message timestamp, and records posted. A second run for the same UTC day skips the existing reservation in normal serial operation. If a run stops at post_pending, check Slack before releasing the reservation.
Validation scope
The supplied report confirms the isolated n8n 2.47.4 import, inactive state, and sample path. It also covers structural checks, duplicate and old-item filtering, and source-link preservation. Live RSS, OpenAI, Data Table, and Slack calls require a staging test with your accounts. The digest summarizes headlines and feed excerpts; open each linked story for full context before sharing or citing it publicly.
How to use
Before you start
- A current n8n instance with Data Table support.
- One to five approved public HTTPS RSS feeds.
- An OpenAI API key and a JSON-mode model.
- A Slack bot token with
chat:writeand access to the destination channel. - A private test channel for staging.
1. Import and run the sample
Download the complete package, extract the ZIP, and read the full setup guide. Import industry-news-digest.n8n.json and keep it inactive.
Open Run with sample data and choose Test workflow. Verify news digest sources should return the sample stories with their source links and short summaries.
2. Create the Data Table
Create an n8n Data Table with text columns event_key, status, detail, and result_id. Enter its ID in Setup. The workflow uses the UTC date as event_key, post_pending or posted as status, and the Slack timestamp as result_id.
3. Configure feeds and Slack
In Setup, set tableId, slackChannelId, model, lookbackHours, and a focus statement for the digest. Add one to five approved HTTPS feed URLs.
Add an OpenAI bearer Header Auth credential on Prioritize news with OpenAI. Add a separate Slack bearer credential on Post news digest to Slack with a bot token that has chat:write and access to the channel. Set the workflow timezone for the daily 09:00 schedule.
4. Test the digest
Use the supplied test payloads to check the feed and model shapes. In staging, set dryRun to false, point the channel at a private test channel, and temporarily schedule a run. Check the publication date and destination link for each story.
Duplicate URLs are removed after stripping the fragment, but distinct coverage of the same story can still appear. Empty feeds or a run with no relevant stories produce no message. A broken feed fails the run so the team can fix the source or remove it.
5. Operate the daily digest
Keep the schedule inactive until the test channel is accepted. A daily run with an existing reservation or post does not send a second digest in normal serial operation. If a run stops at post_pending, check Slack for the message before releasing the reservation.
Related automations
Use the Company Positioning Brief System to keep the digest focused on the audience and claims that matter. The Source-Backed WordPress Draft System turns selected news into an article, and the Article-to-Social Draft System adapts approved content for social channels. The Search Content Decay Detection System highlights pages that may need a content refresh. Read the Content Publishing & Newsletter Intelligence blueprint for the wider content process. For recurring revenue reporting, use the HubSpot Weekly Sales Pipeline Digest.