This workflow corresponds to n8n.io template #16846 — we link there as the canonical source.
This workflow follows the Agent → Datatable 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 →
{
"id": "hxu9YYPPE0MRPAz7",
"name": "LinkedIn Profile \u2192 Content Intelligence",
"tags": [],
"nodes": [
{
"id": "01582e64-a72b-4ae3-80d1-960ecbd1e90b",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
272,
656
],
"parameters": {
"width": 480,
"height": 528,
"content": "## LinkedIn Profile \u2192 Content Intelligence\n\n### How it works\n\n1. Trigger workflow via the Profile Input Form.\n2. Extract the LinkedIn username from the form input.\n3. Use the username to retrieve LinkedIn data through an Actor.\n4. Analyze profile-level details and individual post insights using AI models.\n5. Save and organize the analyzed data into respective database tables.\n\n### Setup steps\n\n- [ ] Set up the Profile Input Form with fields for LinkedIn data entry.\n- [ ] Configure Access credentials for the Apify API node.\n- [ ] Ensure database tables are ready to store profile summaries and post insights.\n"
},
"typeVersion": 1
},
{
"id": "fc2c4648-acab-4b46-bdd3-35d9aaf8ae42",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
816,
800
],
"parameters": {
"color": 7,
"width": 416,
"height": 304,
"content": "## Profile input and extraction\n\nHandles input from the user and extracts the username for further processing."
},
"typeVersion": 1
},
{
"id": "8bb485a9-3be2-44c1-94d1-b41bfa608714",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
1264,
816
],
"parameters": {
"color": 7,
"width": 1456,
"height": 400,
"content": "## Data acquisition and looping\n\nUses extracted username to get LinkedIn data and cycles through posts for detailed analysis."
},
"typeVersion": 1
},
{
"id": "a5e738da-369d-4518-930b-8786124a98e4",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
1776,
272
],
"parameters": {
"color": 7,
"width": 640,
"height": 512,
"content": "## Profile analysis and storage\n\nAnalyzes overall LinkedIn profile details and stores the summarized data."
},
"typeVersion": 1
},
{
"id": "92a0f12b-4b69-443d-8bca-98a554b1ede5",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
2752,
816
],
"parameters": {
"color": 7,
"width": 400,
"height": 544,
"content": "## Post insight extraction\n\nExtracts insights from individual posts and saves them for further analysis."
},
"typeVersion": 1
},
{
"id": "a4e224c0-82df-4c8d-90c9-15079a1a405e",
"name": "When Form Submitted",
"type": "n8n-nodes-base.formTrigger",
"position": [
864,
928
],
"parameters": {
"options": {},
"formTitle": "LinkedIn Content Intelligence",
"formFields": {
"values": [
{
"fieldName": "profile_url",
"fieldLabel": "LinkedIn Profile URL",
"placeholder": "https://www.linkedin.com/in/username/",
"requiredField": true
}
]
},
"formDescription": "Paste any LinkedIn profile URL. All posts will be scraped and analyzed."
},
"typeVersion": 2.6
},
{
"id": "bf04d3da-07e8-41e9-b98d-3bca3d480ff6",
"name": "Set Username Field",
"type": "n8n-nodes-base.set",
"position": [
1088,
928
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "username",
"name": "username",
"type": "string",
"value": "={{ $json.profile_url.match(/linkedin\\.com\\/in\\/([^\\/?#]+)/) ? $json.profile_url.match(/linkedin\\.com\\/in\\/([^\\/?#]+)/)[1] : $json.profile_url.trim() }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "f354e8bf-ab72-4fc4-9603-ddb8278e1147",
"name": "Profile Summary Agent",
"type": "@n8n/n8n-nodes-langchain.agent",
"maxTries": 3,
"position": [
1872,
400
],
"parameters": {
"text": "=Profile headline: {{ $('Fetch Dataset with Actor').first().json.author_headline ?? \"(none)\" }}\nTotal posts analyzed: {{ $('Fetch Dataset with Actor').all().length }}\n\nRecent posts (most recent first, separated by ---):\n{{ $('Fetch Dataset with Actor').all().slice(0, 100).map(i => (i.json.text ?? \"\")).filter(t => t.length > 0).join(\"\\n---\\n\").slice(0, 150000) }}\n\nPerform deep analysis and generate the JSON output exactly per the schema.",
"options": {
"systemMessage": "You are a senior competitive intelligence analyst specializing in GTM, sales, and demand generation.\n\nYou will receive up to 100 recent LinkedIn posts from one professional. Your goal: capture ALL the valuable information they shared across this body of posts - not just a shallow excerpt.\n\nProcess:\n1. Infer the person's likely role, seniority level, and focus areas purely from post patterns, language, topics, and headline. If their domain is NOT GTM/sales/marketing, analyze their actual domain instead of forcing a GTM framing.\n2. Identify every recurring theme and every high-value claim, framework, number, playbook, or lesson. Nothing substantive from the posts should be lost.\n3. Base everything strictly on the posts. Never invent facts.\n\nOutput ONLY valid JSON with this exact schema:\n{\n \"inferred_persona\": { \"role\": \"...\", \"level\": \"...\", \"focus_areas\": [\"...\"] },\n \"top_themes\": [\"...\"],\n \"messaging_patterns\": \"How they write: hooks, structure, tone, CTA style\",\n \"key_strategic_insights\": [\"Exhaustive bullet list of the high-value takeaways across ALL posts - frameworks, numbers, playbooks, opinions\"],\n \"actionable_opportunities\": [\"Specific things the reader can do based on this intelligence\"],\n \"content_ideas\": [ { \"type\": \"Reply template | Thread idea | Counter content\", \"idea\": \"...\", \"why_it_works\": \"...\" } ],\n \"overall_summary\": \"2-3 paragraph executive summary of who this person is and what they know\"\n}",
"enableStreaming": false
},
"promptType": "define",
"hasOutputParser": true
},
"executeOnce": true,
"retryOnFail": true,
"typeVersion": 3.1,
"waitBetweenTries": 3000
},
{
"id": "5242237d-420e-44b8-9004-28ee79b18ac6",
"name": "Parse Profile Data",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
2080,
624
],
"parameters": {
"jsonSchemaExample": "{ \"inferred_persona\": { \"role\": \"GTM leader\", \"level\": \"VP / founder\", \"focus_areas\": [\"cold email\", \"outbound\"] }, \"top_themes\": [\"cold email\", \"email marketing\"], \"messaging_patterns\": \"How they write: hooks, structure, tone\", \"key_strategic_insights\": [\"Insight 1\", \"Insight 2\"], \"actionable_opportunities\": [\"Opportunity 1\"], \"content_ideas\": [ { \"type\": \"Thread idea\", \"idea\": \"...\", \"why_it_works\": \"...\" } ], \"overall_summary\": \"2-3 paragraph executive summary\" }"
},
"typeVersion": 1.3
},
{
"id": "28f5972e-d479-4861-9fa9-c7bf07231246",
"name": "Store Profile Summary",
"type": "n8n-nodes-base.dataTable",
"position": [
2272,
400
],
"parameters": {
"columns": {
"value": {
"analyzed_at": "={{ $now.toISO() }}",
"main_topics": "={{ ($json.output.top_themes ?? []).join(\", \") }}",
"total_posts": "={{ $('Fetch Dataset with Actor').all().length }}",
"content_ideas": "={{ JSON.stringify($json.output.content_ideas ?? []) }}",
"inferred_role": "={{ $json.output.inferred_persona?.role ?? \"\" }}{{ $json.output.inferred_persona?.level ? \" (\" + $json.output.inferred_persona.level + \")\" : \"\" }}",
"profile_summary": "={{ $json.output.overall_summary }}",
"profile_username": "={{ $('Set Username Field').item.json.username }}",
"messaging_patterns": "={{ $json.output.messaging_patterns }}",
"key_strategic_insights": "={{ ($json.output.key_strategic_insights ?? []).join(\"\\n- \") }}",
"actionable_opportunities": "={{ ($json.output.actionable_opportunities ?? []).join(\"\\n- \") }}"
},
"schema": [
{
"id": "profile_username",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "profile_username",
"defaultMatch": false
},
{
"id": "inferred_role",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "inferred_role",
"defaultMatch": false
},
{
"id": "main_topics",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "main_topics",
"defaultMatch": false
},
{
"id": "profile_summary",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "profile_summary",
"defaultMatch": false
},
{
"id": "total_posts",
"type": "number",
"display": true,
"readOnly": false,
"required": false,
"displayName": "total_posts",
"defaultMatch": false
},
{
"id": "analyzed_at",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "analyzed_at",
"defaultMatch": false
},
{
"id": "messaging_patterns",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "messaging_patterns",
"defaultMatch": false
},
{
"id": "key_strategic_insights",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "key_strategic_insights",
"defaultMatch": false
},
{
"id": "actionable_opportunities",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "actionable_opportunities",
"defaultMatch": false
},
{
"id": "content_ideas",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "content_ideas",
"defaultMatch": false
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"dataTableId": {
"__rl": true,
"mode": "id",
"value": "HKy2VnS8o0YH1Uj5",
"cachedResultName": "linkedin_profile_summary"
}
},
"typeVersion": 1.1
},
{
"id": "ffbc450c-cccc-4c19-90e7-bc93be8edb2e",
"name": "Store Raw Post Data",
"type": "n8n-nodes-base.dataTable",
"position": [
1824,
944
],
"parameters": {
"columns": {
"value": {
"likes": "={{ $json.reaction_like ?? 0}}",
"reposts": "={{ $json.num_reposts ?? 0}}",
"comments": "={{ $json.num_comments ?? 0}}",
"post_url": "={{ $json.url ?? $json.post_url ?? \"\" }}",
"post_text": "={{ $json.text ?? $json.post_text ?? \"\" }}",
"posted_at": "={{ $json.posted_date }}",
"processed": false,
"profile_username": "={{ $('Set Username Field').item.json.username }}"
},
"schema": [
{
"id": "profile_username",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "profile_username",
"defaultMatch": false
},
{
"id": "post_url",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "post_url",
"defaultMatch": false
},
{
"id": "post_text",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "post_text",
"defaultMatch": false
},
{
"id": "posted_at",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "posted_at",
"defaultMatch": false
},
{
"id": "likes",
"type": "number",
"display": true,
"readOnly": false,
"required": false,
"displayName": "likes",
"defaultMatch": false
},
{
"id": "comments",
"type": "number",
"display": true,
"readOnly": false,
"required": false,
"displayName": "comments",
"defaultMatch": false
},
{
"id": "reposts",
"type": "number",
"display": true,
"readOnly": false,
"required": false,
"displayName": "reposts",
"defaultMatch": false
},
{
"id": "summary",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "summary",
"defaultMatch": false
},
{
"id": "key_insights",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "key_insights",
"defaultMatch": false
},
{
"id": "tactics",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "tactics",
"defaultMatch": false
},
{
"id": "content_pillar",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "content_pillar",
"defaultMatch": false
},
{
"id": "hook_type",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "hook_type",
"defaultMatch": false
},
{
"id": "reusable_quote",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "reusable_quote",
"defaultMatch": false
},
{
"id": "processed",
"type": "boolean",
"display": true,
"readOnly": false,
"required": false,
"displayName": "processed",
"defaultMatch": false
},
{
"id": "category",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "category",
"defaultMatch": false
},
{
"id": "primary_topic",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "primary_topic",
"defaultMatch": false
},
{
"id": "key_takeaway",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "key_takeaway",
"defaultMatch": false
},
{
"id": "actionable_nugget",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "actionable_nugget",
"defaultMatch": false
},
{
"id": "topics",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "topics",
"defaultMatch": false
},
{
"id": "engagement_insight",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "engagement_insight",
"defaultMatch": false
},
{
"id": "suggested_use",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "suggested_use",
"defaultMatch": false
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"dataTableId": {
"__rl": true,
"mode": "id",
"value": "XQX7yKZ30dmjMaKr",
"cachedResultName": "linkedin_posts"
}
},
"typeVersion": 1.1
},
{
"id": "4ecbf721-18f5-44ba-9ffd-dbffcc8afafc",
"name": "Post Insights Agent",
"type": "@n8n/n8n-nodes-langchain.agent",
"onError": "continueRegularOutput",
"maxTries": 3,
"position": [
2848,
944
],
"parameters": {
"text": "=Post text: {{ $('Loop Over Posts').item.json.text ?? \"\" }}\nMedia type: {{ $('Loop Over Posts').item.json.media_type ?? \"\" }}\nEngagement: {{ $('Loop Over Posts').item.json.total_reactions ?? $('Loop Over Posts').item.json.reaction_like ?? 0 }} reactions, {{ $('Loop Over Posts').item.json.num_comments ?? 0 }} comments, {{ $('Loop Over Posts').item.json.num_reposts ?? 0 }} reposts\n\nExtract structured insights following the JSON schema exactly.",
"options": {
"batching": {
"batchSize": 1,
"delayBetweenBatches": 500
},
"systemMessage": "You are an expert GTM / sales / marketing intelligence analyst.\nYour job is to extract maximum signal from ONE LinkedIn post while staying extremely concise and structured.\n\nHard rules:\n- Extract ONLY what is actually in the post. Never invent facts, numbers, or claims.\n- If the post is low-signal fluff (pure engagement bait, congratulations, reshare with no commentary), set category to \"Other\", state that in key_takeaway, and set actionable_nugget to null.\n- If the author's domain is not GTM/sales/marketing, extract insights for their actual domain instead of forcing a GTM angle.\n\nOutput ONLY valid JSON with this exact schema:\n{\n \"category\": \"Strategy | Tactic | Example | Warning | Question | Other\",\n \"primary_topic\": \"string\",\n \"key_takeaway\": \"One clear sentence of the main point\",\n \"actionable_nugget\": \"Specific, usable insight or template the reader can apply, or null if none\",\n \"topics\": [\"array of relevant tags\"],\n \"engagement_insight\": \"Why this post performed well or what the engagement level reveals\",\n \"suggested_use\": \"How the reader could repurpose or respond to this post\"\n}",
"enableStreaming": false
},
"promptType": "define",
"hasOutputParser": true
},
"retryOnFail": true,
"typeVersion": 3.1,
"waitBetweenTries": 3000
},
{
"id": "1aa598ad-df76-4702-8edd-dfe4a0329bc7",
"name": "Parse Post Insights",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
3024,
1184
],
"parameters": {
"jsonSchemaExample": "{ \"category\": \"Tactic\", \"primary_topic\": \"cold email deliverability\", \"key_takeaway\": \"One clear sentence of the main point\", \"actionable_nugget\": \"Specific usable insight or template\", \"topics\": [\"cold email\", \"outbound\"], \"engagement_insight\": \"Why this post performed well\", \"suggested_use\": \"How to repurpose or respond\" }"
},
"typeVersion": 1.3
},
{
"id": "ea10be6f-8503-46f2-8bce-47a1a786a835",
"name": "Store Insights Per Row",
"type": "n8n-nodes-base.dataTable",
"onError": "continueRegularOutput",
"position": [
2240,
1248
],
"parameters": {
"columns": {
"value": {
"likes": 0,
"topics": "={{ ($json.output.topics ?? []).join(\", \") }}",
"reposts": 0,
"category": "={{ $json.output.category }}",
"comments": 0,
"processed": true,
"key_takeaway": "={{ $json.output.key_takeaway }}",
"primary_topic": "={{ $json.output.primary_topic }}",
"suggested_use": "={{ $json.output.suggested_use }}",
"actionable_nugget": "={{ $json.output.actionable_nugget ?? \"\" }}",
"engagement_insight": "={{ $json.output.engagement_insight }}"
},
"schema": [
{
"id": "profile_username",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "profile_username",
"defaultMatch": false
},
{
"id": "post_url",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "post_url",
"defaultMatch": false
},
{
"id": "post_text",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "post_text",
"defaultMatch": false
},
{
"id": "posted_at",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "posted_at",
"defaultMatch": false
},
{
"id": "likes",
"type": "number",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "likes",
"defaultMatch": false
},
{
"id": "comments",
"type": "number",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "comments",
"defaultMatch": false
},
{
"id": "reposts",
"type": "number",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "reposts",
"defaultMatch": false
},
{
"id": "summary",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "summary",
"defaultMatch": false
},
{
"id": "key_insights",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "key_insights",
"defaultMatch": false
},
{
"id": "tactics",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "tactics",
"defaultMatch": false
},
{
"id": "content_pillar",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "content_pillar",
"defaultMatch": false
},
{
"id": "hook_type",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "hook_type",
"defaultMatch": false
},
{
"id": "reusable_quote",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "reusable_quote",
"defaultMatch": false
},
{
"id": "processed",
"type": "boolean",
"display": true,
"readOnly": false,
"required": false,
"displayName": "processed",
"defaultMatch": false
},
{
"id": "category",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "category",
"defaultMatch": false
},
{
"id": "primary_topic",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "primary_topic",
"defaultMatch": false
},
{
"id": "key_takeaway",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "key_takeaway",
"defaultMatch": false
},
{
"id": "actionable_nugget",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "actionable_nugget",
"defaultMatch": false
},
{
"id": "topics",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "topics",
"defaultMatch": false
},
{
"id": "engagement_insight",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "engagement_insight",
"defaultMatch": false
},
{
"id": "suggested_use",
"type": "string",
"display": true,
"readOnly": false,
"required": false,
"displayName": "suggested_use",
"defaultMatch": false
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"id"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"filters": {
"conditions": [
{
"keyValue": "={{ $('Store Raw Post Data').item.json.id }}"
}
]
},
"options": {},
"matchType": "allConditions",
"operation": "update",
"dataTableId": {
"__rl": true,
"mode": "id",
"value": "XQX7yKZ30dmjMaKr",
"cachedResultName": "linkedin_posts"
}
},
"typeVersion": 1.1
},
{
"id": "fa59dcdb-288c-466c-9544-812ef8115446",
"name": "Loop Over Posts",
"type": "n8n-nodes-base.splitInBatches",
"position": [
1536,
928
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "85bbbc94-f2ed-4305-98cb-f5f1b6c0514e",
"name": "Fetch Dataset with Actor",
"type": "@apify/n8n-nodes-apify.apify",
"maxTries": 3,
"position": [
1312,
928
],
"parameters": {
"actorId": {
"__rl": true,
"mode": "list",
"value": "nIejzIcDE5QY5qgsA",
"cachedResultUrl": "https://console.apify.com/actors/nIejzIcDE5QY5qgsA/input",
"cachedResultName": "LinkedIn Profile Posts Scraper (capable_cauldron/linkedin-profile-posts-scraper)"
},
"operation": "Run actor and get dataset",
"customBody": "={\n \"usernames\": [\n \"{{ $json.username }}\"\n ],\n \"maxPostsPerProfile\": 10,\n \"maxDatasetItems\": 10000,\n \"maxRetries\": 3\n}",
"actorSource": "store"
},
"credentials": {
"apifyApi": {
"name": "<your credential>"
}
},
"retryOnFail": true,
"typeVersion": 1,
"waitBetweenTries": 5000
},
{
"id": "b9805d44-e009-4230-a9aa-ccbbd1edf3d3",
"name": "OpenAI GPT-4 Mini Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
1824,
624
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4.1-mini",
"cachedResultName": "gpt-4.1-mini"
},
"options": {},
"builtInTools": {}
},
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.3
},
{
"id": "e8f25f31-3b9e-4bae-83ef-0b1488f7110a",
"name": "OpenAI GPT-4 Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
2800,
1200
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4.1",
"cachedResultName": "gpt-4.1"
},
"options": {},
"builtInTools": {}
},
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.3
}
],
"active": false,
"settings": {
"binaryMode": "separate",
"availableInMCP": false,
"executionOrder": "v1"
},
"versionId": "2b051581-ce65-426f-aee7-d0f367224ca0",
"nodeGroups": [],
"connections": {
"Loop Over Posts": {
"main": [
[
{
"node": "Profile Summary Agent",
"type": "main",
"index": 0
}
],
[
{
"node": "Store Raw Post Data",
"type": "main",
"index": 0
}
]
]
},
"OpenAI GPT-4 Model": {
"ai_languageModel": [
[
{
"node": "Post Insights Agent",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Parse Profile Data": {
"ai_outputParser": [
[
{
"node": "Profile Summary Agent",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Set Username Field": {
"main": [
[
{
"node": "Fetch Dataset with Actor",
"type": "main",
"index": 0
}
]
]
},
"Parse Post Insights": {
"ai_outputParser": [
[
{
"node": "Post Insights Agent",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Post Insights Agent": {
"main": [
[
{
"node": "Store Insights Per Row",
"type": "main",
"index": 0
}
]
]
},
"Store Raw Post Data": {
"main": [
[
{
"node": "Post Insights Agent",
"type": "main",
"index": 0
}
]
]
},
"When Form Submitted": {
"main": [
[
{
"node": "Set Username Field",
"type": "main",
"index": 0
}
]
]
},
"Profile Summary Agent": {
"main": [
[
{
"node": "Store Profile Summary",
"type": "main",
"index": 0
}
]
]
},
"Store Insights Per Row": {
"main": [
[
{
"node": "Loop Over Posts",
"type": "main",
"index": 0
}
]
]
},
"OpenAI GPT-4 Mini Model": {
"ai_languageModel": [
[
{
"node": "Profile Summary Agent",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Fetch Dataset with Actor": {
"main": [
[
{
"node": "Loop Over Posts",
"type": "main",
"index": 0
}
]
]
}
}
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
apifyApiopenAiApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
This workflow collects a LinkedIn profile URL via an n8n form, scrapes the profile’s recent posts with Apify, analyzes the profile and each post using OpenAI models, and stores the resulting profile summary and per-post insights in n8n Data Tables. Receives a LinkedIn profile…
Source: https://n8n.io/workflows/16846/ — 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.
This workflow serves as a comprehensive "Workflow Nodes SEO & Documentation Generator". It uses AI to analyze, rename, and document n8n workflows, offering a streamlined way to optimize workflow reada
This is an automated blog post generation system that: Researches topics using AI agents and web search tools Writes complete blog posts with proper SEO structure Generates custom images for each post
This workflow automates end-to-end contract and invoice management using AI intelligence. It processes proposals through intelligent contract generation, approval workflows, and automated invoicing. O
Automates SaaS operations by consolidating user management, AI-driven support triage, analytics, and billing into one unified system. User signups flow through registration, support requests route via
Transform your manual hiring process into an intelligent evaluation system that saves 15-20 minutes per candidate! This workflow automates the entire candidate assessment pipeline - from CSV/XLSX uplo