See llms.txt for all machine-readable content.

Back to Templates

Create and publish AI news LinkedIn posts from RSS with OpenAI and Airtable

Created by

Created by: Craig  || craigio
Craig

Last update

Last update 2 days ago

Categories

Share


Quick overview

This workflow runs on a daily schedule, reads AI-related articles from multiple RSS feeds, uses OpenAI to select and draft a LinkedIn company-page post, stores the editorial pack in Airtable, generates and QA-checks an image, and then publishes the image post to LinkedIn in production mode.

How it works

  1. Runs each day on a scheduled trigger and applies a posting-day cadence plus a safety gate that blocks publishing during manual/test executions.
  2. Loads recent publishing history from Airtable and pulls fresh articles from TechCrunch AI, The Verge AI, and the OpenAI Blog RSS feeds.
  3. Cleans, deduplicates, and balances the RSS articles, then sends the candidates plus recent history to OpenAI to select one publishable editorial signal.
  4. If the selected signal meets the quality threshold, OpenAI drafts the LinkedIn post, a second OpenAI pass tightens it, and the workflow appends 2–3 relevant hashtags.
  5. Creates an editorial record in Airtable with the final copy, source URL, and metadata.
  6. Generates a square editorial image using either an optional HTML screenshot service or OpenAI image generation, then uses OpenAI to QA the image and retries generation if it fails.
  7. In production mode, registers and uploads the image to LinkedIn and publishes the post to a LinkedIn organization page, then writes the posting result back to Airtable.

Setup

  1. Add OpenAI credentials (for chat completions and image generation) and update any model choices if needed.
  2. Add Airtable credentials (Airtable Personal Access Token) and set your Airtable base ID and table ID in the publishing configuration.
  3. Add LinkedIn Community Management OAuth2 credentials and set your LinkedIn organization ID in the publishing configuration.
  4. Review and adjust the timezone, posting days, and history limit in the publishing configuration, then run once manually to confirm it stops at the test-preview stage.
  5. Optional: configure an HTML screenshot service URL/token for deterministic rendering and enable the Gmail credential if you want the disabled email execution log.