Mindket

Blog post repurposed into four social posts with GPT

Newversion 1 · updated

Overview

An n8n workflow with a webhook that takes a blog post and turns it into four social posts. OpenAI finds the key points and writes an X thread, a LinkedIn post, an Instagram caption and a Facebook post, which a Google Sheet keeps.

Blog post repurposed into four social posts with GPT is an n8n workflow in the Marketing & SEO category, listed by Mindket. It is free. This is version 1, last updated on . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.

At a glance

Runs in
  • n8n Cloud: import the file and publish it, then use the production webhook address
  • Your own n8n server: the same file and steps, with the webhook reachable from the internet
  • Google Sheets: one tab called Posts with seven column names in row 1
  • OpenAI: the model that analyses the post and writes the drafts

Platform

Connects 2 apps

How it works

Trigger

A blog post arrives

It starts when something posts a blog post to the webhook. It brings:

  • The title and the text of the post
  • An optional brand voice

Actions

  1. Checks that the text has at least 50 characters and gives the request an id
  2. Has OpenAI find the key points, the core message, hashtags and SEO keywords
  3. Writes an X thread, a LinkedIn post, an Instagram caption and a Facebook post, one after another
  4. Adds one row with the four drafts to your Google Sheet and answers the caller

Result

One row of four drafts in a Google Sheet, and a short JSON reply to whoever called the webhook

Integrations

What you need before you start.

OpenAI

Analyst and writer

Finds the key points and writes the four posts.

NeedsAn OpenAI API key

Google Sheets

Draft storage

Keeps one row for each blog post.

NeedsA Google Sheets OAuth2 credential and a tab called Posts with seven columns

Workflow check

Checked by Mindket on 13 Nov 2026

Steps
11 steps, starting when its webhook is called
AI
5 steps call an AI model: AI: Quick Analysis, Generate: Twitter Thread, Generate: LinkedIn Post, Generate: Instagram Caption and Generate: Facebook Post
Sign-ins
Signs in to: Google Sheets
API keys
No API key is left in the file
Step types
Mindket’s checker reads all 5 of its step types

Read from the workflow’s file, not from a run.

About

What it is

This n8n workflow turns one blog post into drafts for four networks. A webhook receives the post as JSON with a title, the text and an optional brand voice. A Code step checks that the text has at least 50 characters and gives the request an id. An OpenAI step reads the post and returns the key points, the core message, hashtags and SEO keywords. Four more OpenAI steps then write an X thread, a LinkedIn post, an Instagram caption and a Facebook post, one after another. A last Code step gathers them, and the result is added to a Google Sheet. The caller gets a short JSON reply. Eleven nodes run it, beside one sticky note.

Who it suits

Writers, marketers and small teams who publish long posts and want a first draft for each network. Skip it if you want posts published for you, because it only writes drafts into a sheet. Each run makes five OpenAI calls.

Who uses it, and how
IndustryWho uses itHow they use itExample
BloggingIndependent writersTurn each new article into four draftsA writer posts the article text and finds four drafts in the sheet.
MarketingContent teamsFill a posting calendar from one sourceA team sends every published post to the webhook and edits the drafts on Monday.
AgenciesSocial media managersGive a client one place to find ready draftsA manager points a form at the webhook and shares the sheet.
NewslettersPublishersReuse an issue as posts on other networksA publisher sends the issue text and reuses the best lines.

You need to know n8n’s settings: import a file, add two credentials, make a sheet and call a webhook.

Where to use it

Any n8n that can reach OpenAI and Google Sheets will run it, and the tool that sends the blog post must reach the webhook.

  • n8n Cloud: import the file and publish it, then use the production webhook address
  • Your own n8n server: the same file and steps, with the webhook reachable from the internet
  • Google Sheets: one tab called Posts with seven column names in row 1
  • OpenAI: the model that analyses the post and writes the drafts

Setup

Download saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. Setup is two credentials and one sheet.

What you need first
NeedDetail
n8nOn n8n Cloud or on a server of your own
OpenAIAn API key, added in n8n as an OpenAI credential
Google SheetsAn OAuth2 credential and a tab called Posts with the headers Request ID, Title, Completed At, Twitter Thread, LinkedIn Post, Instagram Caption and Facebook Post
A senderAnything that can post JSON, such as a form tool or a script
  1. In n8n, create a workflow, open its menu, choose Import from File and pick workflow.json.
  2. Add an OpenAI credential and select it in AI: Quick Analysis and in the four Generate steps.
  3. In your Google Sheet, make a tab called Posts and type the seven headers in row 1.
  4. Add a Google Sheets credential and select it in Save to Google Sheets. Replace <YOUR_SHEET_ID> with your sheet’s id.
  5. Publish the workflow, then post a test blog post as JSON to the production address of Receive Content.

How to use it

Post each new article to the webhook. Read the four drafts in the sheet, edit them and publish them yourself.

What to change for a different result
To changeWhere
The style of each postThe instruction in the matching Generate step
The brand voiceThe brand_voice field you send, or the default in Validate Input
The minimum lengthThe 50 in Validate Input
The modelThe five OpenAI steps
The columns of the sheetSave to Google Sheets, and row 1 of your tab

Example

You post a blog post with a title, its text and a brand voice.

{"title": "Why we moved to self-hosting", "content": "The full text of the post, at least 50 characters", "brand_voice": "plain and friendly"}

The caller gets a JSON reply that says four drafts were made and to check the sheet. The sheet gets one new row with the X thread, the LinkedIn post, the Instagram caption and the Facebook post.

For newcomers and experts

If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. This one receives an article, asks an AI to find its main points and then asks it four times to write a post. Test with a short article first.

For experts. The four writers run in a chain, and each reads its facts from Merge Data.

Where to look closer
NodeWhat it doesWhat to know
Receive ContentTakes a POST and waits for a reply nodeAnyone who knows the address can post, and each call costs five OpenAI requests
Validate InputChecks the text and sets an idIt stops with an error under 50 characters
AI: Quick AnalysisAsks for key points, a core message, hashtags and keywordsJSON output is on, and the model is gpt-6-luna
Merge DataAdds the analysis to the original requestIt reads the answer whether it arrives as text or as an object
Generate: Twitter ThreadWrites the X threadThe other three writers follow it in a chain
Collect ResultsBuilds one object with the four resultsA bad answer from one step becomes an error field and does not stop the run
Save to Google SheetsAppends one rowThe thread is saved as JSON text in one cell

Good to know

The webhook is open, and every call spends your OpenAI credit.

  • Safety: anyone who finds the address can post to it. Switch the webhook’s authentication to a header check if the address leaves your own team
  • Fixes: the original used an OpenAI node version that n8n does not have, so the five OpenAI steps are rewritten as the current OpenAI node on gpt-6-luna with JSON output. The temperature and the token limits are dropped, because small limits can cut a reasoning model’s answer short
  • Order: the four writers now run one after another. In the original they all fed one Code step, which would have run once for each arriving branch
  • Id: the original asked for a random id with a function that n8n’s Code node refuses by default. It now uses the time and a random string
  • Sheet: the sheet id is a placeholder, the tab is called Posts, and the column list is spelled out so that n8n can write the row
  • Quality: each writer asks for a length, such as under 280 characters for each tweet. Models can miss it, so check the drafts. Mindket did not check each network’s current length or hashtag rules
  • Not run: Mindket did not run it against OpenAI or Google Sheets. The Code steps were tested only on sample data on a local computer
  • Credentials: the JSON holds none

README and files

README

Blog post repurposed into four social posts with GPT

An n8n workflow with a webhook that takes a blog post and turns it into drafts for four networks. OpenAI first finds the key
points. It then writes an X thread, a LinkedIn post, an Instagram caption and a Facebook post. A Google Sheet keeps them.

What is inside

  • workflow.json: the workflow as n8n exports it, twelve nodes. One is a sticky note. It holds no credential.
  • README.md: these notes.

What we changed from the original copy

  • The five OpenAI steps used an OpenAI node version that n8n does not have. They are now the current OpenAI node in its
    message mode, on gpt-6-luna, with JSON output. The temperature and the token limits are dropped, because small limits
    can cut a reasoning model's answer short.
  • The four writers used to feed one Code step directly. A node with four parents runs once for each arriving branch, so the
    four writers now run one after another, and each reads its facts from Merge Data.
  • The id was made with a random-id function that n8n's Code node refuses by default. It is now built from the time and a random
    string.
  • The sheet id came from a setting on the author's server. It is now the placeholder <YOUR_SHEET_ID>. The tab has a
    neutral name, Posts, and the column list is spelled out so that n8n can write the row.
  • The webhook path is neutral, and the hidden webhook id from the original is gone.
  • The code that reads the model's answer accepts it as text or as an object.
  • The sticky note is rewritten in plain words.

Before you start

  • An OpenAI API key.
  • A Google Sheet with a tab called Posts and these headers in row 1: Request ID, Title, Completed At, Twitter Thread,
    LinkedIn Post, Instagram Caption and Facebook Post.
  • Something that can post JSON to a webhook.

Set it up

  1. In n8n, create a workflow, open its menu and choose Import from File. Pick workflow.json.
  2. Add an OpenAI credential and select it in AI: Quick Analysis and in the four Generate steps.
  3. In your sheet, make the Posts tab and type the seven headers in row 1.
  4. Add a Google Sheets credential and select it in Save to Google Sheets. Replace <YOUR_SHEET_ID> with your sheet's id.
  5. Publish the workflow, then post a test blog post as JSON to the production address of Receive Content.

How a run goes

  1. Receive Content takes a POST with a title, a content and an optional brand_voice.
  2. Validate Input stops with an error if the text is under 50 characters. Otherwise it keeps the three fields and adds an
    id and a time.
  3. AI: Quick Analysis returns the key points, the core message, hashtags and SEO keywords as JSON. Merge Data adds them
    to the request.
  4. Generate: Twitter Thread, Generate: LinkedIn Post, Generate: Instagram Caption and Generate: Facebook Post run in
    that order. Each one reads the title, the key points and the voice from Merge Data.
  5. Collect Results builds one object with the four results.
  6. Save to Google Sheets adds one row, and Respond: Success tells the caller that four drafts were made.

Change the result

  • The style of each post: the instruction in the matching Generate step.
  • The brand voice: the brand_voice field you send, or the default in Validate Input.
  • The minimum length: the 50 in Validate Input.
  • The model: the five OpenAI steps.
  • The sheet columns: Save to Google Sheets and row 1 of your tab.

Good to know

  • The webhook is open. Anyone who finds the address can post to it, and every call makes five OpenAI requests. Switch the
    webhook's authentication to a header check if the address leaves your own team.
  • Each writer asks for a length, such as under 280 characters for a tweet. A model can miss it, so check the drafts.
  • Mindket did not check each network's current length or hashtag rules.
  • A bad answer from one writer becomes an error field in the result and does not stop the run.
  • The X thread is saved as JSON text in one cell.
  • Mindket did not run this workflow against OpenAI or Google Sheets. The Code steps were tested only on sample data on a
    local computer.
Files
NOTICE.md  645 B
README.md  4 KB
workflow.json  14 KB

3 files, 19 KB, downloaded as a zip.

What’s new

  • Version 1 · 2026-11-12

Reviews

No ratings yet

Write a review

No reviews yet.

More from Mindket

See all from Mindket

Huashu Design

alchaincyf · Skill

Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…

New29.4k

Guizang PPT Skill

op7418 · Skill

Skill that makes single-file HTML slide decks, slide illustrations and platform covers in two visual styles, with a presenter mode for rehearsal. For speakers…

New29.8k

Claude Code Skills & Plugins

alirezarezvani · Skill

Adds 411 ready-made skills for Claude Code and other coding agents, grouped by role from engineering and product to marketing, finance and compliance. Installs…

New29.8k

Similar in Marketing & SEO

See all in Marketing & SEO

Pixel Art XL

nerijs · Kit

A pixel art style add-on for Stable Diffusion XL that turns text prompts into pixel-style images, with an optional LCM LoRA for faster runs. For game makers, d…

New

Licon MSR for LTX-2.5

LiconStudio · Kit

Keeps characters, clothing, objects and backgrounds consistent in generated video by feeding the model up to five reference images. A LoRA for LTX-2.5 in Comfy…

New

Flux.2-Klein-9B-MatchingPose

nhathoangfoto · Kit

A LoRA for FLUX.2 Klein 9B that puts a character into the pose shown by a mannequin reference while keeping the character's face and style. For artists and des…

New