anaksor-ocr
Sokheng · Kit
Reads Khmer and English text from documents, receipts and photos of signs, using a detector for text lines and a recogniser for each line. Suits developers who…
An n8n workflow that turns a niche or an article link into a Facebook, an Instagram and a LinkedIn post, each with an OpenAI picture, filed in Google Sheets as a draft. A switched-off half posts the rows you approve.
Facebook, Instagram and LinkedIn drafts with images 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.
Content form
It starts when someone sends the Social Media Auto Publish Agent form with:
Three posts written for their networks, each with its own picture, waiting in your sheet as a draft
What you need before you start.
Text and images
Runs the chat models that suggest ideas, summarize and write the three posts, and the image model that draws one picture per network.
NeedsOpenAI API key
Web search
Runs an advanced search on the idea you pick and returns the full text of five pages for the summary.
NeedsTavily API key, in a Header Auth credential
Picture storage
Keeps the three pictures of each run, and hands them back to the posting half.
NeedsGoogle account with Drive access, and a folder
Content log
Gets one row per run with the summary, the posts, the picture links and the status the posting half reads.
NeedsGoogle account with Sheets access, and a Social Media Post tab with eleven columns
Page posts
Posts the picture and the Facebook text to your Page through the Graph API, once the posting half is on.
NeedsFacebook Graph API credential and your Page ID
Feed posts
Makes a media container from the picture’s public link and publishes it with the caption, through the Graph API.
NeedsInstagram business account linked to the Page, and its ID
Profile posts
Shares the LinkedIn text with its picture as you, once the posting half is on.
NeedsLinkedIn credential and your person ID
Public picture links
Holds a copy of the Instagram picture and makes the public link Instagram fetches it from.
NeedsDropbox credential and an access token
Checked by Mindket on 13 Nov 2026
This n8n workflow writes posts for Facebook, Instagram and LinkedIn, draws a picture for each, and files them in Google Sheets as drafts. A form asks how to start. With a niche, a model suggests five post ideas, you pick one on the next page, and Tavily brings back five pages on it. With an article link, the workflow fetches the page and strips it to text. Either way, a model writes a title and summary, the three posts and a picture brief per network. OpenAI’s image model draws the pictures, Google Drive keeps them, and a new sheet row holds it all with the status Draft.
A second half that posts what you approve comes switched off.
Small businesses, creators and social media managers who share the same news on three networks and want each version written for its audience, with a picture, before anyone approves it. Skip it for a quick single post. The drafting half alone takes four services and ten nodes to set up, and posting needs Meta, LinkedIn and Dropbox access on top.
| Industry | Who uses it | How they use it | Example |
|---|---|---|---|
| Small business | Shop and café owners | Paste a link to their own blog post and get three posts that point back to it | A bakery pastes its new recipe post and gets a Facebook post that links to it. |
| Agencies | Social media managers | Draft for a client, then share the sheet for approval before the posting half goes on | A manager sends the client the sheet and marks the rows the client likes Approved. |
| Coaching and courses | Coaches | Enter a niche and a view of their own, so the posts carry it | A fitness coach enters strength training and a line on why rest days matter. |
| B2B and software | Marketing teams | Turn an industry article into a LinkedIn post with a picture in the brand color | A software team enters its hex color and gets three pictures built around it. |
| Media and newsletters | Editors | Turn each story into three posts with a picture each | An editor pastes the day’s main story and has three drafts from one form. |
Any n8n that can reach OpenAI, Tavily and Google will run the drafting half. The posting half also needs Meta, LinkedIn and Dropbox.
Get it saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. Its author puts setup at about 28 minutes.
| Need | Detail |
|---|---|
| n8n | On n8n Cloud or on a server of your own |
| OpenAI | An API key for the chat models and an image model |
| Tavily | An API key, kept in a Header Auth credential |
| An account for Drive and Sheets credentials | |
| A spreadsheet | A tab named Social Media Post with the eleven columns the README lists in row 1 |
| A Drive folder | Where the pictures go |
| For posting | A Facebook Page with a linked Instagram business account, a LinkedIn account and a Dropbox account |
workflow.json.OpenAI Chat Model1, OpenAI Chat Model2, Content Writer and Content Writer1, select it and pick a current chat model.Tavily, add a Header Auth credential named Authorization with the value Bearer and your key, select it, and delete the header row that holds <YOUR_TAVILY_API_KEY>.Update Copy Content and Update Copy Content1, and replace YOUR_SHEET_ID in both.Upload Image nodes, and replace YOUR_FOLDER_ID in each.On form submission1 and send it once each way.Steps 2 and 3 are there because of the models in the file. OpenAI’s deprecations page, read on 2 November 2026, lists chatgpt-4o-latest as removed on 17 February 2026 and gpt-image-1 as shut down on 23 October 2026. The image nodes are version 1.8 of n8n’s OpenAI node, whose model list stops at gpt-image-1, so a fresh node is the way to a newer model.
Open the form, choose Topic or Niche or Article URL, and fill in the next page. Brand color and your view are optional. A niche run shows one more page with five ideas to pick from. The run then goes on behind the form. When it ends, a new row reads Draft. Edit the posts in the sheet if you like.
Posting is the switched-off half, started by a Schedule Trigger. Each run posts the first row marked Approved to all three networks and marks it Published. To use it:
Facebook Publish, Create IG Container and Post to IG, then replace YOUR_PAGE_ID and YOUR_INSTAGRAM_IDLinkedIn Publish and replace YOUR_LINKEDIN_PERSON_IDUpload Image to Dropbox, and put an access token in place of <YOUR_DROPBOX_ACCESS_TOKEN> in Create Shared LinkGet Copy Contents, Update Status and the three Download Image nodes, and replace YOUR_SHEET_IDSchedule Trigger and publish the workflow| To change | Where |
|---|---|
| Number of ideas | The prompt of Generate Post Ideas and the five options in Form |
| Search | search_depth, max_results and include_raw_content in the body of Tavily |
| Tone per network | The system message of Content Writer and Content Writer1 |
| Picture style | The messages of the Copy Image Prompt Generator nodes |
| Picture size and quality | The image nodes’ options, 1024x1024 at high in the file |
| Posting pace | Schedule Trigger, and Limit1, which lets one row through |
A niche run, with this on the form’s second page:
Enter your niche/topic: home coffee brewing Brand color (name or hex code): #6F4E37 Share your personal insights or opinion: Grinding fresh beats any machine upgrade
The next page offers five ideas, and you pick one. After the summary, posts and pictures, Update Copy Content appends a row in this shape:
Niche: home coffee brewing Idea: <the idea you picked> Source Article: N/A Summary: <a summary of five pages> Facebook Copy, Instagram Copy, LinkedIn Copy: <three posts> Facebook Image, Instagram Image, LinkedIn Image: <three Drive links> Status: Draft
An article run puts the link in Source Article and N/A under Niche and Idea. Its Facebook and LinkedIn posts end by pointing readers to the article.
If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. A credential is a key n8n keeps for you and hands to the node you pick it in. This file has two halves. The top runs when the form is sent. The bottom stays grey until you switch it on. Start with one niche run of the top half. Each node then shows what it received and sent, which is where a missing column or a wrong model name turns up.
For experts. Two chat model nodes feed most steps, and each half ends in a merge by position.
| Step | Model | What to know |
|---|---|---|
Generate Post Ideas, WebSearch Summary and three prompt nodes | OpenAI Chat Model2 | Structured Output Parser holds the summary to a title and a summary |
Article Summary and its three prompt nodes | OpenAI Chat Model1 | Structured Output Parser1 holds the same two fields |
Content Writer, Content Writer1 | Set in the node, JSON output on | Returns facebook, instagram and linkedin |
| Six image nodes | gpt-image-1 in the file, high quality, 1024x1024 | Retry on failure is on |
Each half’s Merge takes four inputs, the three uploads and the writer, and combines them by position into one row. Instagram needs a public address for its picture. Its branch copies the picture from Drive to Dropbox, asks for a shared link and swaps dl=0 for raw=1. Facebook and LinkedIn take the file itself.
A run costs real money, and the posting half needs more setup than the drafting one.
Clean HTML code and the file name in Upload Image to Dropbox had lost their backslashes. This one has them backAn n8n workflow. Start it from a form with a niche or an article link. It writes a Facebook, an Instagram and a
LinkedIn post, draws a picture for each with OpenAI, keeps the pictures in Google Drive and files everything in Google
Sheets as a draft. A second half that posts the rows you approve comes switched off.
workflow.json: the workflow as n8n exports it, 72 nodes, six of them sticky notes. 27 nodes, the whole postingREADME.md: these notes.Social Media Post and these eleven column names in row 1: Niche, Idea,Source Article, Summary, Facebook Copy, Facebook Image, Instagram Copy, Instagram Image,LinkedIn Copy, LinkedIn Image and Status.workflow.json.OpenAI Chat Model1, OpenAI Chat Model2, Content Writer andContent Writer1, and in each of those four pick a current chat model in place of chatgpt-4o-latest.FB Image Generation, IG Image Generation, Li Image Generation and the same threeTavily. Its Authentication is set to a Header Auth credential, so add one with the name AuthorizationBearer , a space, then your key. Select it, and delete the header row that holds<YOUR_TAVILY_API_KEY>./d/ and /edit. Add a Google Sheets OAuth2Update Copy Content and Update Copy Content1, and replace YOUR_SHEET_ID in both.Upload Image to Upload Image5, and replace YOUR_FOLDER_ID in all six.On form submission1 and send it once each way.OpenAI's deprecations page, read on 2 November 2026, lists chatgpt-4o-latest as removed from the API on 17 February
2026 and gpt-image-1 as shut down on 23 October 2026. The image nodes are version 1.8 of n8n's OpenAI node, whose
model list stops at gpt-image-1. It also sends response_format with any other model, a field n8n's newer node
leaves out for every GPT image model. That is why step 3 swaps the nodes rather than the model name.
On form submission1, titled Social Media Auto Publish Agent, asks one question: Topic or Niche, or Article URL.If1 sends the answer to Form1 or Form2.Form1 asks for a niche, a brand color and your own view, the last two optional.Generate Post Ideas asks the model for five ideas, Code splits them into a list, and Form shows them asTavily runs an advanced search on the one you pick and returns five pages with their full text,WebSearch Summary writes a title of up to six words and a summary.Form2 asks for the link, a brand color and your view. Then Scrape the Source URL fetches the pageExtract Content keeps the text and drops menus, ads and comments, and Clean HTMLArticle Summary writes the title and summary.Content Writer (or Content Writer1) writes the three posts as JSON,<title>_Facebook Copy and so on.Update Copy Content (or Update Copy Content1) appends one row withStatus set to Draft. The article path writes the link in Source Article and N/A under Niche and Idea.The switched-off nodes sit under the note Publish to Social Media. A Schedule Trigger starts them, and on each run
they post the first row whose Status is Approved to all three networks and set it to Published.
Facebook Publish, Create IG Container and Post to IG.YOUR_PAGE_ID with your Page's ID and YOUR_INSTAGRAM_ID in both Instagram nodes with the ID of theLinkedIn Publish, pick a new LinkedIn OAuth2 credential, then put your person ID in place ofYOUR_LINKEDIN_PERSON_ID.Upload Image to Dropbox. In Create Shared Link, replace<YOUR_DROPBOX_ACCESS_TOKEN> in the Authorization header with a Dropbox access token.Get Copy Contents, Update Status, Download Image, Download Image2 andDownload Image3, and replace YOUR_SHEET_ID in the two Sheets nodes.Schedule Trigger, then press Publish at the top of the canvas (or Shift+P).Facebook and LinkedIn get the picture as a file, downloaded from Drive. Instagram needs a public address, so its
branch copies the picture to Dropbox under /instagram_copy_image/, asks Dropbox for a shared link, turns dl=0 intoraw=1, then creates a media container and publishes it.
Generate Post Ideas and the five options in Form.search_depth, max_results and include_raw_content in the body of Tavily. The summary prompt readsmax_results only together with that prompt.Content Writer and Content Writer1. Facebook gets up to two hashtags,Copy Image Prompt Generator nodes.Schedule Trigger, and the one-row Limit1 after Get Copy Contents.Approved. It then posts one approved row perClean HTML code had lost the backslashes of its three regexes, and the file name expressionUpload Image to Dropbox had lost the one in /\s+/. This one has them back.README.md 8 KB workflow.json 84 KB
Sokheng · Kit
Reads Khmer and English text from documents, receipts and photos of signs, using a detector for text lines and a recogniser for each line. Suits developers who…
Qwen · Kit
Qwen2.5-7B-Instruct as GGUF files in eight quantization sizes, to chat with locally through llama.cpp. For people who want a capable 7.6B model on their own co…
ACE-Step · Kit
Generates music from text with a 4B diffusion decoder, 50 steps and guidance control, aiming for higher audio quality than the base. For creators with a GPU of…
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…
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…
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…