AutomationFlowsAI & RAG › AI Icebreaker Builder: Scrape Sites with Dumpling AI and Save to Airtable

AI Icebreaker Builder: Scrape Sites with Dumpling AI and Save to Airtable

ByYang @yang on n8n.io

This workflow is ideal for sales teams, marketers, and virtual assistants who manage outbound campaigns and want to improve their cold outreach personalization. It helps automate the research and writing process for each lead, saving time while improving quality.

Cron / scheduled trigger★★★★☆ complexityAI-powered9 nodesAirtableHTTP RequestOpenAI
AI & RAG Trigger: Cron / scheduled Nodes: 9 Complexity: ★★★★☆ AI nodes: yes Added:

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

This workflow follows the Airtable → HTTP Request 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
{
  "id": "FQ3d3ucbw3NXgnUo",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "AI Icebreaker Builder: Scrape Sites with Dumpling AI and Save to Airtable",
  "tags": [],
  "nodes": [
    {
      "id": "40c158ab-6e9c-4296-873c-c879714b65a6",
      "name": "No Operation, do nothing",
      "type": "n8n-nodes-base.noOp",
      "position": [
        100,
        -140
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "d63720a5-9785-45d1-a8ba-a9c961031095",
      "name": "Run Daily to Process New Leads",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -560,
        60
      ],
      "parameters": {
        "rule": {
          "interval": [
            {}
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "e5804c37-2a8d-4574-852a-f885c6941e31",
      "name": "Search Cold Leads Without Icebreaker",
      "type": "n8n-nodes-base.airtable",
      "position": [
        -340,
        60
      ],
      "parameters": {
        "base": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "https://airtable.com/appPSvSKdA6075xJC",
          "cachedResultName": "Testing n8n"
        },
        "table": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "https://airtable.com/appPSvSKdA6075xJC/tbl1KgkRF2EEMc2Fq",
          "cachedResultName": "cold leads"
        },
        "options": {},
        "operation": "search",
        "filterByFormula": "{Ice breaker} = ''"
      },
      "credentials": {
        "airtableTokenApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "839fd20b-5a5d-4419-85b0-9b82223c8b95",
      "name": "Loop Through Each Lead",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        -120,
        60
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "78b197e2-6028-49a0-9100-5cc44838a9cd",
      "name": "Wait Before Making Request",
      "type": "n8n-nodes-base.wait",
      "position": [
        100,
        60
      ],
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "de96d330-006b-4410-8b75-83c3b9658045",
      "name": "Scrape Lead Website with Dumpling AI",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        320,
        60
      ],
      "parameters": {
        "url": "https://app.dumplingai.com/api/v1/scrape",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"url\": \"{{ $json.Website }}\"\n}\n",
        "sendBody": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {
        "httpHeaderAuth": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "5d5675b6-4245-4562-a9d2-7cf54fe20b75",
      "name": "Generate Icebreaker, Summary & Email (GPT-4o)",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        540,
        60
      ],
      "parameters": {
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "chatgpt-4o-latest",
          "cachedResultName": "CHATGPT-4O-LATEST"
        },
        "options": {},
        "messages": {
          "values": [
            {
              "role": "system",
              "content": "=You are a smart assistant helping write personalized outreach. Below is content scraped from a lead\u2019s website, along with the lead\u2019s name.\n\nUsing this, please generate the following:\n\nIcebreaker: A short, friendly opening line that shows we took time to look at their business.\n\nEmail Body: A short cold outreach email that introduces what we do and how we can help, referencing their business or needs where relevant.\n\nWebsite Summary: A short summary (2 or 3 lines) of what their website is about, written in plain English.\n\nPlease return your response in this JSON format:\n\n{\n  \"icebreaker\": \"string\",\n  \"email_body\": \"string\",\n  \"website_summary\": \"string\"\n}"
            },
            {
              "content": "=Lead Name: {{ $('Search Cold Leads Without Icebreaker').item.json.Name }}\nScraped Website Content:{{ $json.content }}"
            }
          ]
        },
        "jsonOutput": true
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "05a2b673-8e2a-41cf-9a01-eb19b2e584ea",
      "name": "Save AI Output Back to Airtable",
      "type": "n8n-nodes-base.airtable",
      "position": [
        960,
        60
      ],
      "parameters": {
        "base": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "https://airtable.com/appPSvSKdA6075xJC",
          "cachedResultName": "Testing n8n"
        },
        "table": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultUrl": "https://airtable.com/appPSvSKdA6075xJC/tbl1KgkRF2EEMc2Fq",
          "cachedResultName": "cold leads"
        },
        "columns": {
          "value": {
            "id": "={{ $('Search Cold Leads Without Icebreaker').item.json.id }}",
            "Name": "={{ $('Search Cold Leads Without Icebreaker').item.json.Name }}",
            "Phone": "={{ $('Search Cold Leads Without Icebreaker').item.json.Phone }}",
            "Website": "={{ $('Search Cold Leads Without Icebreaker').item.json.Website }}",
            "Email body": "={{ $json.message.content.email_body }}",
            "Ice breaker": "={{ $json.message.content.icebreaker }}",
            "website summary": "={{ $json.message.content.website_summary }}"
          },
          "schema": [
            {
              "id": "id",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": true,
              "required": false,
              "displayName": "id",
              "defaultMatch": true
            },
            {
              "id": "Name",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Website",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Website",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Phone",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Phone",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Ice breaker",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Ice breaker",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "website summary",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "website summary",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Email body",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Email body",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "id"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update"
      },
      "credentials": {
        "airtableTokenApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "cd8dac4b-6575-45fc-95fd-3052b244b0a2",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -640,
        -260
      ],
      "parameters": {
        "width": 810,
        "height": 480,
        "content": "### \ud83d\udd04 Automated Cold Email Writing from Lead Websites\n\nThis workflow runs on a schedule and pulls new cold leads from Airtable that have no \"Ice breaker\" yet. For each lead, it waits briefly to prevent API overuse, then sends the lead\u2019s website URL to Dumpling AI's scraping endpoint.\n\nThe scraped content is passed to GPT-4o to generate:\n- A personalized icebreaker\n- A website summary\n- A tailored cold email body\n\nFinally, all generated results are saved back into Airtable for each lead record.\n"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "710a2065-24ec-4681-aaa4-43028ec8acee",
  "connections": {
    "Loop Through Each Lead": {
      "main": [
        [
          {
            "node": "No Operation, do nothing",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Wait Before Making Request",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait Before Making Request": {
      "main": [
        [
          {
            "node": "Scrape Lead Website with Dumpling AI",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Run Daily to Process New Leads": {
      "main": [
        [
          {
            "node": "Search Cold Leads Without Icebreaker",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Save AI Output Back to Airtable": {
      "main": [
        [
          {
            "node": "Loop Through Each Lead",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Scrape Lead Website with Dumpling AI": {
      "main": [
        [
          {
            "node": "Generate Icebreaker, Summary & Email (GPT-4o)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Search Cold Leads Without Icebreaker": {
      "main": [
        [
          {
            "node": "Loop Through Each Lead",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate Icebreaker, Summary & Email (GPT-4o)": {
      "main": [
        [
          {
            "node": "Save AI Output Back to Airtable",
            "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.

Pro

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

About this workflow

This workflow is ideal for sales teams, marketers, and virtual assistants who manage outbound campaigns and want to improve their cold outreach personalization. It helps automate the research and writing process for each lead, saving time while improving quality.

Source: https://n8n.io/workflows/4885/ — 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

This workflow automatically fetches product reviews from your WooCommerce store, analyzes the sentiment of each review using AI, stores the results in Airtable and sends a summary of positive, neutral

HTTP Request, OpenAI, Airtable +1
AI & RAG

This template is perfect for TikTok creators, content marketers, and social media teams who want to turn viral comments into engaging short-form videos without manually scripting, recording, or editin

Data Table, HTTP Request, OpenAI +1
AI & RAG

AI Institutional Stock Valuation Engine with Risk Scoring & Scenario Targets

Google Sheets, XML, HTTP Request +3
AI & RAG

Overview This is a production-grade, fully automated stock analysis system built entirely in n8n. It combines institutional-level financial analysis, dual AI model consensus, and a self-improving back

Google Sheets, XML, HTTP Request +3
AI & RAG

This powerful n8n automation workflow is designed to execute advanced B2B lead enrichment and hyper-personalization for cold email outreach. By orchestrating a complex chain of data scraping, AI analy

OpenAI, HTTP Request, Airtable