AutomationFlowsAI & RAG › AI Chat Agent: Dumpling AI + Gpt-4o to Auto-save Local Business Data to Airtable

AI Chat Agent: Dumpling AI + Gpt-4o to Auto-save Local Business Data to Airtable

ByYang @yang on n8n.io

This workflow is for digital marketers, small business owners, lead generation agencies, and VAs who need a scalable way to find and store local business leads using AI. It’s especially useful for teams that want to enrich leads with real-time news insights and save the…

Chat trigger trigger★★★☆☆ complexityAI-powered8 nodesChat TriggerTool Http RequestMemory Buffer WindowAgentOpenAI ChatAirtable Tool
AI & RAG Trigger: Chat trigger Nodes: 8 Complexity: ★★★☆☆ AI nodes: yes Added:

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

This workflow follows the Agent → Airtabletool 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": "MyJ84ASqWdHGYuy0",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "AI Chat Agent: Dumpling AI + GPT-4o to Auto-Save Local Business Data to Airtable",
  "tags": [
    {
      "id": "TlcNkmb96fUfZ2eA",
      "name": "Tutorials",
      "createdAt": "2025-04-15T17:02:00.249Z",
      "updatedAt": "2025-04-15T17:02:00.249Z"
    }
  ],
  "nodes": [
    {
      "id": "1617006d-20d8-44da-8410-1fbbd6bc317e",
      "name": "When chat message received",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        -480,
        -40
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 1.1
    },
    {
      "id": "ccb3073d-4c39-44bf-bd7f-05a6ae0550cb",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1200,
        -220
      ],
      "parameters": {
        "width": 660,
        "height": 900,
        "content": "#### \ud83e\udde0 Workflow Purpose\nAn interactive chat assistant that listens for incoming messages, processes them with AI, and uses Dumpling AI to fetch external information or complete tasks \u2014 with memory tracking.\n\n## \ud83d\udd04 Workflow Steps\n\n### 1. Chat Trigger\n- Listens for chat messages (e.g., from a web app or messaging platform).\n\n### 2. OpenAI Chat Model\n- Processes the user's input using GPT-4o mini.\n\n### 3. Simple Memory Buffer\n- Keeps context from the last 10 exchanges to maintain a conversational flow.\n\n### 4. DumplingAI- News Agent and Local Business Finder Agent\n- Makes an external API call to Dumpling AI\u2019s agent endpoint to search or generate responses based on user intent.\n\n### 5. AI Agent Node\n- Connects all components: language model, memory, and external tools.\n\n### 6. Airtable Tool \u2013 Dynamic Business Data Storage\n\n-This Airtable node auto-populates and updates a \u201cLocal Business\u201d table using data returned from Dumpling AI\u2019s Local Business Finder Agent. It maps essential fields such as:\n\n\n## \u2699\ufe0f Notes\n- Dumpling AI agent ID is pre-configured.\n- JSON response from Dumpling is parsed as usable data.\n- You can add routing or fallback logic based on Dumpling's results.\n\n##### \ud83d\udca1 Tip\nTo customize it for a specific domain (e.g., real estate, restaurant finder, course assistant), adjust the agent prompt or plug in a domain-specific tool module.\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "266e0454-5133-4287-a449-2eb1d3d00485",
      "name": "News Agent",
      "type": "@n8n/n8n-nodes-langchain.toolHttpRequest",
      "position": [
        -20,
        180
      ],
      "parameters": {
        "url": "https://app.dumplingai.com/api/v1/agents/generate-completion",
        "method": "POST",
        "jsonBody": "={\n  \"messages\": [\n    {\n      \"role\": \"user\",\n      \"content\":\"{{ $json.chatInput}}\"\n    }\n  ],\n  \"agentId\": \"\",\n  \"parseJson\": \"True\"\n  }",
        "sendBody": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "optimizeResponse": true
      },
      "credentials": {
        "httpHeaderAuth": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "b3d834d7-eeb5-4ce8-bb45-2d6b58f8c0a9",
      "name": "Local Business Finder Agent",
      "type": "@n8n/n8n-nodes-langchain.toolHttpRequest",
      "position": [
        100,
        180
      ],
      "parameters": {
        "url": "https://app.dumplingai.com/api/v1/agents/generate-completion",
        "method": "POST",
        "jsonBody": "={\n  \"messages\": [\n    {\n      \"role\": \"user\",\n      \"content\":\"{{ $json.chatInput}}\"\n    }\n  ],\n  \"agentId\": \"\",\n  \"parseJson\": \"false\"\n  }",
        "sendBody": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "optimizeResponse": true
      },
      "credentials": {
        "httpHeaderAuth": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "bc75a2b5-8d99-487a-a9fc-12045b555207",
      "name": "Track Last 10 Messages ",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        -160,
        180
      ],
      "parameters": {
        "contextWindowLength": 10
      },
      "typeVersion": 1.3
    },
    {
      "id": "0eb2b921-360e-4043-8a2f-301d10113dfc",
      "name": "Route AI Tasks with Dumpling + GPT + Memory",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -108,
        -40
      ],
      "parameters": {
        "options": {
          "systemMessage": "You are a helpful assistant\nUse the Local Business Finder Agent HTTP request tool to find local business\n\nUse the News agent HTTP request tool to get get news\n\nUse the Create and update Airtable tool to send results from the Local Business Finder Agent HTTP request tool"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "948fafa9-6b4c-4656-b27f-ce5b1eb0d363",
      "name": "Process Input with GPT-4o Mini",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -320,
        180
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "4a07cedd-f40e-4123-a894-c53da751263f",
      "name": "Save Business Results",
      "type": "n8n-nodes-base.airtableTool",
      "position": [
        240,
        180
      ],
      "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/tblgxhdRFc2fGLV9o",
          "cachedResultName": "Local business"
        },
        "columns": {
          "value": {
            "id": "=",
            "Rating": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Rating', ``, 'number') }}",
            "Address": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Address', ``, 'string') }}",
            "Website": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Website', ``, 'string') }}",
            "Category": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Category', ``, 'string') }}",
            "Phone Number": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Phone_Number', ``, 'string') }}",
            "Total Reviews": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Total_Reviews', ``, 'number') }}",
            "Name of Restaurant": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Name_of_Restaurant', ``, 'string') }}"
          },
          "schema": [
            {
              "id": "id",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": true,
              "required": false,
              "displayName": "id",
              "defaultMatch": true
            },
            {
              "id": "Name of Restaurant",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Name of Restaurant",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Rating",
              "type": "number",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Rating",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Total Reviews",
              "type": "number",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Total Reviews",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Address",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Address",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Phone Number",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Phone Number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Website",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Website",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Category",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Category",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "id"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "upsert"
      },
      "credentials": {
        "airtableTokenApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.1
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "57c6329e-df0b-4eb4-9837-643c7de85e5e",
  "connections": {
    "News Agent": {
      "ai_tool": [
        [
          {
            "node": "Route AI Tasks with Dumpling + GPT + Memory",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Save Business Results": {
      "ai_tool": [
        [
          {
            "node": "Route AI Tasks with Dumpling + GPT + Memory",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Track Last 10 Messages ": {
      "ai_memory": [
        [
          {
            "node": "Route AI Tasks with Dumpling + GPT + Memory",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "When chat message received": {
      "main": [
        [
          {
            "node": "Route AI Tasks with Dumpling + GPT + Memory",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Local Business Finder Agent": {
      "ai_tool": [
        [
          {
            "node": "Route AI Tasks with Dumpling + GPT + Memory",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Process Input with GPT-4o Mini": {
      "ai_languageModel": [
        [
          {
            "node": "Route AI Tasks with Dumpling + GPT + Memory",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Route AI Tasks with Dumpling + GPT + Memory": {
      "main": [
        []
      ]
    }
  }
}

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 for digital marketers, small business owners, lead generation agencies, and VAs who need a scalable way to find and store local business leads using AI. It’s especially useful for teams that want to enrich leads with real-time news insights and save the…

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

ModelRouter. Uses chatTrigger, agent, modelSelector, httpRequest. Chat trigger; 28 nodes.

Chat Trigger, Agent, Model Selector +8
AI & RAG

Chat with an AI and ask questions about your Meta Ads metrics.

Agent, OpenAI Chat, Chat Trigger +8
AI & RAG

✨ Intro This workflow shows how to go beyond a “plain” AI chatbot by:

Telegram, OpenAI, OpenAI Chat +13
AI & RAG

🤖 Facebook MCP AI Agent – Read, Reply & Manage Comments with GPT-4o. Uses chatTrigger, agent, memoryBufferWindow, mcpTrigger. Chat trigger; 17 nodes.

Chat Trigger, Agent, Memory Buffer Window +4
AI & RAG

I build intelligent automations with n8n and Make. This powerful workflow was designed to help teams automatically handle Instagram interactions with AI. Using Meta Graph API, LangChain, MCP Server, a

Chat Trigger, Agent, Memory Buffer Window +4