π± Create daily AI news LinkedIn posts using OpenAI, NewsAPI, Gmail and Google Sheets
β‘ 52 views Β· π± Social Media & Email Marketing
π‘ Pro Tip β If youβre pulling LinkedIn data through HTTP requests or dealing with API restrictions, thereβs a community node called ScraperNode that handles this natively. It has dedicated scrapers for profiles, companies, jobs, and people search β you just pass a URL and get structured data back.
Description
Quick overview
This workflow runs nightly, pulls AI news from NewsAPI, uses OpenAI to summarize and select a top story, generates a LinkedIn post and image, and emails you for approval before publishing to LinkedIn and logging the result to Google Sheets.
How it works
- Runs every night at 8 PM using a schedule trigger.
- Fetches the last dayβs AI-related articles from NewsAPI, splits them into items, and keeps the top five most recent.
- Uses OpenAI (gpt-4o-mini) to generate a strict two-sentence summary for each article and compiles a digest of the summarized articles.
- Uses OpenAI (gpt-4o-mini) to choose the single best article for LinkedIn engagement from the digest and produce a post draft based on the selected story.
- Uses OpenAI image generation (gpt-image-1-mini) to create a news-style square image to accompany the post, then emails a preview and sends an approval email that waits for your Approve/Reject response in Gmail.
- If approved, publishes the post to LinkedIn, appends the approved content to a Google Sheets tab, and emails a success notification.
- If rejected, appends the rejected content to a separate Google Sheets tab and emails a rejection notification.
Setup
- Add a NewsAPI.org API key as an HTTP Query Auth credential and ensure itβs used by the NewsAPI request.
- Add an OpenAI API credential with access to gpt-4o-mini (text) and gpt-image-1-mini (image).
- Connect Gmail via OAuth2 and replace the recipient email address in the Gmail nodes with your own.
- Connect LinkedIn via OAuth2 and set the correct LinkedIn person identifier for posting.
- Connect Google Sheets, set the target spreadsheet and ensure it contains
ApprovedandRejectedtabs with the columns Date, Title, Summary, LinkedIn Post, and Status.
π Nodes Used
Google Sheets, HTTP Request, Gmail, LinkedIn, Schedule Trigger, OpenAI
π₯ Import
Download workflow.json and import into n8n:
Workflow menu β Import from File