This workflow corresponds to n8n.io template #4650 — we link there as the canonical source.
This workflow follows the Airtable → Chainllm recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"nodes": [
{
"id": "9c883c20-184a-498e-a24f-163523edf0d8",
"name": "Workflow Instructions",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1080,
40
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "e84e7d78-e7c6-42bf-9f9b-8e0fac56f083",
"name": "Data Collection Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-360,
-80
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "423bf7af-022e-4def-8fea-5db171c0eb5e",
"name": "Analysis Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
780,
-80
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "b26ff4b3-a8eb-48ed-b51c-b593f9e240c6",
"name": "Storage Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
1760,
-80
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "9cfd5500-7a05-4c79-9db4-e4e52471d170",
"name": "1) Fetch LinkedIn Posts",
"type": "n8n-nodes-base.httpRequest",
"position": [
-320,
100
],
"parameters": {},
"typeVersion": 4.2
},
{
"id": "8622cc69-0a6f-40b9-8fc2-185b4d105e50",
"name": "2) Wait for Scraping",
"type": "n8n-nodes-base.wait",
"position": [
-100,
100
],
"parameters": {},
"typeVersion": 1.1
},
{
"id": "f040331c-3b69-4fc2-a436-38053057536b",
"name": "3) Check Scraping Status",
"type": "n8n-nodes-base.httpRequest",
"position": [
120,
100
],
"parameters": {},
"typeVersion": 4.2
},
{
"id": "3ce89941-3ce7-440d-919d-e908edb5ef4b",
"name": "4) Verify Completion",
"type": "n8n-nodes-base.if",
"position": [
340,
100
],
"parameters": {},
"typeVersion": 2.2
},
{
"id": "7d93a9f8-c960-4913-9402-bbbc42483529",
"name": "5) Get LinkedIn Data",
"type": "n8n-nodes-base.httpRequest",
"position": [
580,
40
],
"parameters": {},
"typeVersion": 4.2
},
{
"id": "ec535456-a7e1-4fe7-9c1a-5271742b6367",
"name": "6) Combine Posts",
"type": "n8n-nodes-base.aggregate",
"position": [
800,
40
],
"parameters": {},
"typeVersion": 1
},
{
"id": "07f350d6-6d33-4a44-b23e-1d6a113a75cc",
"name": "7) Analyze Writing Style",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
1020,
40
],
"parameters": {},
"typeVersion": 1.6
},
{
"id": "a1dcbc0e-5f1c-4e7c-a655-b24bdf496890",
"name": "8) Generate Style Prompt",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
1440,
40
],
"parameters": {},
"typeVersion": 1.6
},
{
"id": "fca4fd7a-976d-4c4b-8e69-a4652393bd72",
"name": "0) Start LinkedIn Analysis",
"type": "n8n-nodes-base.formTrigger",
"position": [
-540,
100
],
"parameters": {},
"typeVersion": 2.2
},
{
"id": "8501ebd2-608c-4e24-90f1-72bde8d00930",
"name": "Style Analysis Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
"position": [
940,
280
],
"parameters": {},
"typeVersion": 1
},
{
"id": "f58af411-dbb2-4c93-a49a-e2cee8253258",
"name": "Prompt Creation Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
"position": [
1400,
280
],
"parameters": {},
"typeVersion": 1
},
{
"id": "ad4d26bc-cd2a-4d08-9737-c2da1a77dc0f",
"name": "9) Save to Airtable",
"type": "n8n-nodes-base.airtable",
"position": [
1800,
40
],
"parameters": {},
"typeVersion": 2.1
}
],
"connections": {
"6) Combine Posts": {
"main": [
[
{
"node": "7) Analyze Writing Style",
"type": "main",
"index": 0
}
]
]
},
"2) Wait for Scraping": {
"main": [
[
{
"node": "3) Check Scraping Status",
"type": "main",
"index": 0
}
]
]
},
"4) Verify Completion": {
"main": [
[
{
"node": "5) Get LinkedIn Data",
"type": "main",
"index": 0
}
],
[
{
"node": "2) Wait for Scraping",
"type": "main",
"index": 0
}
]
]
},
"5) Get LinkedIn Data": {
"main": [
[
{
"node": "6) Combine Posts",
"type": "main",
"index": 0
}
]
]
},
"Style Analysis Model": {
"ai_languageModel": [
[
{
"node": "7) Analyze Writing Style",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Prompt Creation Model": {
"ai_languageModel": [
[
{
"node": "8) Generate Style Prompt",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"1) Fetch LinkedIn Posts": {
"main": [
[
{
"node": "2) Wait for Scraping",
"type": "main",
"index": 0
}
]
]
},
"3) Check Scraping Status": {
"main": [
[
{
"node": "4) Verify Completion",
"type": "main",
"index": 0
}
]
]
},
"7) Analyze Writing Style": {
"main": [
[
{
"node": "8) Generate Style Prompt",
"type": "main",
"index": 0
}
]
]
},
"8) Generate Style Prompt": {
"main": [
[
{
"node": "9) Save to Airtable",
"type": "main",
"index": 0
}
]
]
},
"0) Start LinkedIn Analysis": {
"main": [
[
{
"node": "1) Fetch LinkedIn Posts",
"type": "main",
"index": 0
}
]
]
}
}
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Are you tired of spending HOURS crafting the perfect LinkedIn posts? This revolutionary n8n workflow is changing the game for content creators, marketing agencies, and business leaders worldwide.
Source: https://n8n.io/workflows/4650/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Nova AI Content Marketing Agent - LinkedIn & Facebook Automation This n8n template demonstrates how to create a complete AI-powered social media content creation and scheduling system that generates p
Automatically scrape LinkedIn posts with Apify, transform them into optimized tweets and threads using Claude AI, store them in Airtable for approval, and publish to X on a daily schedule.
This workflow provides a powerful AI assistant for content creators, book editors, and marketers. It automates the collection and analysis of trending discussions from Reddit, YouTube, and X (Twitter)
This n8n workflow lets you effortlessly tailor your resume for any job using Telegram and LinkedIn. Simply send a LinkedIn job URL or paste a job description to the Telegram bot, and the workflow will
AI Social Media Publisher from WordPress. Uses manualTrigger, googleSheets, lmChatOpenRouter, outputParserStructured. Event-driven trigger; 20 nodes.