{
  "name": "Research and summarize B2B leads from Google Sheets to Airtable with BrowserAct",
  "nodes": [
    {
      "id": "57d15707-3da2-4ea8-9fc8-9013ff05179c",
      "name": "Loop Over Items",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        -176,
        32
      ]
    },
    {
      "id": "0372d7ec-0aa5-4a34-8ea2-6834b89e35ae",
      "name": "Structured Output Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        288,
        224
      ]
    },
    {
      "id": "e8fa3ab2-79ac-48d1-bb0b-7d8ded71ccae",
      "name": "OpenRouter Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        160,
        224
      ]
    },
    {
      "id": "a7630002-fbfa-47a7-873a-c313f0d5ec02",
      "name": "Aggregate",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        304,
        -416
      ]
    },
    {
      "id": "b09ef1d8-05d9-4350-8e66-283791b549c2",
      "name": "Structured Output Parser1",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        672,
        -192
      ]
    },
    {
      "id": "4e701483-b428-46c3-bc9d-49a929d3e7c5",
      "name": "OpenRouter Chat Model1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        496,
        -192
      ]
    },
    {
      "id": "ea6246f0-c50e-40f7-9d94-ffaa8ab1a56a",
      "name": "Create a record",
      "type": "n8n-nodes-base.airtable",
      "position": [
        864,
        -416
      ]
    },
    {
      "id": "ed390722-64d9-41bc-8b25-3824e0cb041c",
      "name": "Manual execution",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -528,
        32
      ]
    },
    {
      "id": "6a7374cc-93d2-4441-9573-4c30eaca6c0c",
      "name": "Extract Target Page Data",
      "type": "n8n-nodes-browseract.browserAct",
      "position": [
        0,
        32
      ]
    },
    {
      "id": "8119059d-5dd6-4f39-96f0-df002c610f65",
      "name": "Analyze the Company Page",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        160,
        32
      ]
    },
    {
      "id": "4e8bfa9a-d899-4436-8519-c2995a0bf231",
      "name": "Update Database",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        608,
        192
      ]
    },
    {
      "id": "f36fb29f-0fbf-4808-9202-d4e10fe2ab9a",
      "name": "Retrieve Input Data",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -368,
        32
      ]
    },
    {
      "id": "d037a078-430e-48e6-aeab-c80ae8c12e5b",
      "name": "Retrieve Stored Data",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        128,
        -416
      ]
    },
    {
      "id": "f252c0f0-263a-45cb-8b47-b36879f40d37",
      "name": "Analyze data and create an Airtable record",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        512,
        -416
      ]
    },
    {
      "id": "86957e01-814f-45be-b003-510d7946e84d",
      "name": "Documentation",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -944,
        -384
      ],
      "parameters": {
        "width": 380,
        "height": 424,
        "content": "## ⚡ Workflow Overview & Setup\n\n**Summary:** Automate B2B lead research by scraping company profiles and news from a list of URLs, synthesizing the data with AI, and organizing it into a structured Ai"
      }
    },
    {
      "id": "8f22f9ef-f27f-40d7-919b-8c310bcf2a2b",
      "name": "Step 1 Explanation",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -528,
        400
      ],
      "parameters": {
        "width": 1276,
        "height": 96,
        "content": "### 🌐 Step 1: Automated Scraping\n\nThe workflow reads a list of URLs from Google Sheets. For each URL, it triggers a BrowserAct task to scrape key company data (profile info, news, etc.) and updates th"
      }
    },
    {
      "id": "3e669c2f-1e6a-40dd-bc94-451fb6a9097e",
      "name": "Step 3 Explanation",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        128,
        -560
      ],
      "parameters": {
        "width": 904,
        "height": 120,
        "content": "### 📂 Step 3: Database Entry\n\nOnce all scraping is complete, the data is aggregated. The structured AI output is formatted into strict JSON compatible with Airtable. The workflow then creates a new re"
      }
    },
    {
      "id": "7d18a588-60e2-4ddf-8b48-bc7cb510f73e",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -544,
        -384
      ],
      "parameters": {
        "width": 496,
        "height": 288,
        "content": "@[youtube](mLCuN9Of6EM)"
      }
    }
  ],
  "connections": {
    "Aggregate": {
      "main": [
        [
          {
            "node": "Analyze data and create an Airtable record",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items": {
      "main": [
        [
          {
            "node": "Retrieve Stored Data",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Extract Target Page Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update Database": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Manual execution": {
      "main": [
        [
          {
            "node": "Retrieve Input Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Retrieve Input Data": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Retrieve Stored Data": {
      "main": [
        [
          {
            "node": "Aggregate",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenRouter Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Analyze the Company Page",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "Structured Output Parser",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "OpenRouter Chat Model1": {
      "ai_languageModel": [
        [
          {
            "node": "Analyze data and create an Airtable record",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "Structured Output Parser1",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Analyze the Company Page": {
      "main": [
        [
          {
            "node": "Update Database",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract Target Page Data": {
      "main": [
        [
          {
            "node": "Analyze the Company Page",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "Analyze the Company Page",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output Parser1": {
      "ai_outputParser": [
        [
          {
            "node": "Analyze data and create an Airtable record",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Analyze data and create an Airtable record": {
      "main": [
        [
          {
            "node": "Create a record",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}