AutomationFlowsAI & RAG › Qualify and Draft Linkedin Outreach Sequences for Airtable Leads with Claude

Qualify and Draft Linkedin Outreach Sequences for Airtable Leads with Claude

ByAllan Vaccarizi @growthai on n8n.io

> ⚠️ Self-hosted only — This template uses a community node () and cannot run on n8n Cloud.

Event trigger★★★★★ complexityAI-powered38 nodesAirtableHTTP Request@Mendable/N8N Nodes FirecrawlAgentAnthropic ChatOutput Parser Structured
AI & RAG Trigger: Event Nodes: 38 Complexity: ★★★★★ AI nodes: yes Added:

This workflow corresponds to n8n.io template #15657 — we link there as the canonical source.

This workflow follows the Agent → Airtable 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 →

Download .json
{
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "f10da737-ffef-48a1-a614-90aede712228",
      "name": "Sticky Note13",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        720,
        -32
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "d7eb872e-0a8f-452b-8304-9f3972f8a5af",
      "name": "Sticky Note16",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        720,
        -448
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "970107dd-b3c6-4875-9410-36808bd3c9f7",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1088,
        368
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "0ff81d9e-62a1-4932-896d-cd5b9bd754b4",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -528,
        448
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "5633bcc8-110e-43b9-81de-43a427d939e1",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        32,
        448
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "73abc3ad-0aca-4d11-a379-e5fec46fd53c",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        432,
        432
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "fe168792-06ae-4f80-bbe6-04e896bc0cb2",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        976,
        368
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "7ba39197-1bfe-4a92-83d5-1927d60cdf7f",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1664,
        368
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "6832d84f-ac98-4a9a-b665-bdbdd7d16d59",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2112,
        448
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "53e2b70e-0919-4c76-bfb0-a8adc9294539",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2512,
        368
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "507baf19-c296-498f-862b-c3ed49875a66",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2784,
        448
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "81e3a5b6-0296-4bfc-a257-4dc7afade9bc",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3376,
        464
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "41dbeb87-a372-433c-a675-7c2f7d295157",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3648,
        464
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "be63ea27-5a03-41de-9f3f-948fcb4af4f6",
      "name": "Fetch Leads from Airtable",
      "type": "n8n-nodes-base.airtable",
      "position": [
        80,
        608
      ],
      "parameters": {},
      "executeOnce": true,
      "typeVersion": 2.2
    },
    {
      "id": "ab1d8c0e-dc0c-453a-b13b-7c7bdce2d91a",
      "name": "Loop Over Leads",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        256,
        608
      ],
      "parameters": {},
      "typeVersion": 3
    },
    {
      "id": "d3b1708d-93e4-4b15-be7d-7c27b8343c97",
      "name": "Fetch LinkedIn Profile Info",
      "type": "n8n-nodes-base.httpRequest",
      "maxTries": 5,
      "position": [
        480,
        608
      ],
      "parameters": {},
      "executeOnce": false,
      "retryOnFail": true,
      "typeVersion": 4.4,
      "alwaysOutputData": false,
      "waitBetweenTries": 5000
    },
    {
      "id": "1665c254-8fc2-4c63-ae6b-28006d3a2e89",
      "name": "Fetch LinkedIn Posts",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2160,
        624
      ],
      "parameters": {},
      "retryOnFail": true,
      "typeVersion": 4.2,
      "alwaysOutputData": true,
      "waitBetweenTries": 5000
    },
    {
      "id": "3d1d55db-b88a-4f7a-8919-86c00cc56333",
      "name": "Fetch LinkedIn Company Info",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1264,
        528
      ],
      "parameters": {},
      "executeOnce": true,
      "retryOnFail": true,
      "typeVersion": 4.2,
      "alwaysOutputData": true
    },
    {
      "id": "e760d500-6684-4c2d-98b2-976e35511095",
      "name": "If Company LinkedIn URL Exists",
      "type": "n8n-nodes-base.if",
      "position": [
        1024,
        608
      ],
      "parameters": {},
      "typeVersion": 2.3
    },
    {
      "id": "5d88ef0a-d27a-4f73-a893-ed8a8eefd044",
      "name": "If Company Website Exists",
      "type": "n8n-nodes-base.if",
      "position": [
        1488,
        528
      ],
      "parameters": {},
      "typeVersion": 2.3
    },
    {
      "id": "46642393-39c6-4f96-a395-0a3b6e15dce4",
      "name": "Scrape Company Homepage",
      "type": "@mendable/n8n-nodes-firecrawl.firecrawl",
      "onError": "continueErrorOutput",
      "maxTries": 5,
      "position": [
        1712,
        528
      ],
      "parameters": {},
      "executeOnce": false,
      "retryOnFail": false,
      "typeVersion": 1,
      "waitBetweenTries": 5000
    },
    {
      "id": "f9ede814-e9bb-4937-a0ae-da27f02af46b",
      "name": "Clean Scraped Markdown",
      "type": "n8n-nodes-base.code",
      "onError": "continueRegularOutput",
      "position": [
        1936,
        528
      ],
      "parameters": {},
      "typeVersion": 2,
      "alwaysOutputData": false
    },
    {
      "id": "8d22a547-bba7-458f-8891-9b15dd56fde6",
      "name": "Lead Qualification Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        2832,
        624
      ],
      "parameters": {},
      "typeVersion": 3.1
    },
    {
      "id": "4c5034aa-9c91-49c4-a3c8-a2b0ad90ab31",
      "name": "Message Drafting Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        3696,
        624
      ],
      "parameters": {},
      "typeVersion": 3.1
    },
    {
      "id": "0332aef5-20b9-437e-858e-33a41e8a5292",
      "name": "If Lead Qualifies",
      "type": "n8n-nodes-base.if",
      "position": [
        3200,
        624
      ],
      "parameters": {},
      "typeVersion": 2.3
    },
    {
      "id": "c23bffd7-cf56-402e-a92f-f74f45112eac",
      "name": "Mark Lead as Not Qualified",
      "type": "n8n-nodes-base.airtable",
      "position": [
        3424,
        704
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "70593513-a8ce-46f7-be70-513c0f15d12d",
      "name": "Save Message to Airtable",
      "type": "n8n-nodes-base.airtable",
      "position": [
        4208,
        704
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "37f3788a-cc17-44a6-bea7-058a3789509a",
      "name": "Mark LinkedIn Unavailable",
      "type": "n8n-nodes-base.airtable",
      "position": [
        800,
        704
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "8c205c76-16a6-4734-bac3-acb7ae6b1df0",
      "name": "If LinkedIn Profile Available",
      "type": "n8n-nodes-base.if",
      "position": [
        640,
        608
      ],
      "parameters": {},
      "typeVersion": 2.3
    },
    {
      "id": "167a3ded-91ed-4863-b39f-e5fedb327f7b",
      "name": "Sort LinkedIn Posts",
      "type": "n8n-nodes-base.code",
      "position": [
        2336,
        624
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "30301fbe-3b99-43f3-ad68-68e102c8b812",
      "name": "Build Lead Profile Data",
      "type": "n8n-nodes-base.set",
      "position": [
        2560,
        624
      ],
      "parameters": {},
      "executeOnce": true,
      "typeVersion": 3.4
    },
    {
      "id": "b4fd3165-3f98-4b99-9712-9b1a1bf4b947",
      "name": "Set Airtable Base and Table",
      "type": "n8n-nodes-base.set",
      "position": [
        -304,
        608
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "3096d324-5367-4380-aed1-0d82d92e7621",
      "name": "Fetch Prompt from Airtable",
      "type": "n8n-nodes-base.airtable",
      "position": [
        -144,
        608
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "2dd8b7a6-9aa0-4cf8-80ca-db9b56efb471",
      "name": "Claude Sonnet - Qualification",
      "type": "@n8n/n8n-nodes-langchain.lmChatAnthropic",
      "position": [
        2832,
        800
      ],
      "parameters": {},
      "typeVersion": 1.3
    },
    {
      "id": "22365d28-20a4-4abd-b91d-6819d404755b",
      "name": "Claude Sonnet - Redaction",
      "type": "@n8n/n8n-nodes-langchain.lmChatAnthropic",
      "position": [
        3696,
        800
      ],
      "parameters": {},
      "typeVersion": 1.3
    },
    {
      "id": "887dece7-6268-48fb-a9e0-599f43139bc3",
      "name": "Parse Qualification Output",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        2976,
        800
      ],
      "parameters": {},
      "typeVersion": 1.3
    },
    {
      "id": "897e142f-dc5a-4194-8188-a310491afd7d",
      "name": "Parse Redaction Output",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        3840,
        800
      ],
      "parameters": {},
      "typeVersion": 1.3
    },
    {
      "id": "0bc431a9-9ea1-4aef-9fe5-4d357c7cca41",
      "name": "When clicking \u2018Execute workflow\u2019",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -496,
        608
      ],
      "parameters": {},
      "typeVersion": 1
    }
  ],
  "connections": {
    "Loop Over Leads": {
      "main": [
        [],
        [
          {
            "node": "Fetch LinkedIn Profile Info",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If Lead Qualifies": {
      "main": [
        [
          {
            "node": "Message Drafting Agent",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Mark Lead as Not Qualified",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Sort LinkedIn Posts": {
      "main": [
        [
          {
            "node": "Build Lead Profile Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch LinkedIn Posts": {
      "main": [
        [
          {
            "node": "Sort LinkedIn Posts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Clean Scraped Markdown": {
      "main": [
        [
          {
            "node": "Fetch LinkedIn Posts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Message Drafting Agent": {
      "main": [
        [
          {
            "node": "Save Message to Airtable",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Parse Redaction Output": {
      "ai_outputParser": [
        [
          {
            "node": "Message Drafting Agent",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Build Lead Profile Data": {
      "main": [
        [
          {
            "node": "Lead Qualification Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Scrape Company Homepage": {
      "main": [
        [
          {
            "node": "Clean Scraped Markdown",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Fetch LinkedIn Posts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Lead Qualification Agent": {
      "main": [
        [
          {
            "node": "If Lead Qualifies",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Save Message to Airtable": {
      "main": [
        [
          {
            "node": "Loop Over Leads",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Claude Sonnet - Redaction": {
      "ai_languageModel": [
        [
          {
            "node": "Message Drafting Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Fetch Leads from Airtable": {
      "main": [
        [
          {
            "node": "Loop Over Leads",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If Company Website Exists": {
      "main": [
        [
          {
            "node": "Scrape Company Homepage",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Fetch LinkedIn Posts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Mark LinkedIn Unavailable": {
      "main": [
        [
          {
            "node": "Loop Over Leads",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch Prompt from Airtable": {
      "main": [
        [
          {
            "node": "Fetch Leads from Airtable",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Mark Lead as Not Qualified": {
      "main": [
        [
          {
            "node": "Loop Over Leads",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Parse Qualification Output": {
      "ai_outputParser": [
        [
          {
            "node": "Lead Qualification Agent",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Fetch LinkedIn Company Info": {
      "main": [
        [
          {
            "node": "If Company Website Exists",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch LinkedIn Profile Info": {
      "main": [
        [
          {
            "node": "If LinkedIn Profile Available",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Airtable Base and Table": {
      "main": [
        [
          {
            "node": "Fetch Prompt from Airtable",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Claude Sonnet - Qualification": {
      "ai_languageModel": [
        [
          {
            "node": "Lead Qualification Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "If LinkedIn Profile Available": {
      "main": [
        [
          {
            "node": "If Company LinkedIn URL Exists",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Mark LinkedIn Unavailable",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If Company LinkedIn URL Exists": {
      "main": [
        [
          {
            "node": "Fetch LinkedIn Company Info",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Fetch LinkedIn Posts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When clicking \u2018Execute workflow\u2019": {
      "main": [
        [
          {
            "node": "Set Airtable Base and Table",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

> ⚠️ Self-hosted only — This template uses a community node () and cannot run on n8n Cloud.

Source: https://n8n.io/workflows/15657/ — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

⚠️ Self-hosted only — This template uses a community node (Firecrawl) and cannot run on n8n Cloud.

Airtable, @Mendable/N8N Nodes Firecrawl, Output Parser Structured +3
AI & RAG

RESUME SCREENER. Uses agent, outputParserStructured, lmChatOpenAi, gmailTrigger. Event-driven trigger; 37 nodes.

Agent, Output Parser Structured, OpenAI Chat +7
AI & RAG

This workflow is for SEO managers, content strategists, and digital agencies who need to produce optimised meta tags, H1s, and full content briefs at scale — one per keyword — without doing manual com

Google Sheets, Agent, @Mendable/N8N Nodes Firecrawl +3
AI & RAG

The AI-Powered Shopify SEO Content Automation is an enterprise-grade workflow that transforms product content creation for e-commerce stores. This sophisticated multi-agent system integrates GPT-4o, C

Perplexity Tool, Memory Buffer Window, Agent +15
AI & RAG

Typeform IA - YT. Uses typeformTrigger, agent, lmChatOpenAi, toolWorkflow. Event-driven trigger; 75 nodes.

Typeform Trigger, Agent, OpenAI Chat +7