AI, 소셜 미디어 및 WhatsApp 링크 기반 자동화된 로컬 비즈니스 리드 생성기
고급
이것은Lead Generation, Multimodal AI분야의자동화 워크플로우로, 29개의 노드를 포함합니다.주로 If, Code, Limit, SplitOut, Telegram 등의 노드를 사용하며. AI, 소셜 미디어 및 WhatsApp 링크를 사용한 지역 비즈니스 리드 자동 생성
사전 요구사항
- •Telegram Bot Token
- •대상 API의 인증 정보가 필요할 수 있음
- •Google Sheets API 인증 정보
사용된 노드 (29)
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"id": "4Gt0UvB5ArkeE7Hi",
"meta": {
"instanceId": "0d045f8fe3802ff2be0bb9a9ea445ee6c9ed61973377effe00767e483681e2f4",
"templateCredsSetupCompleted": true
},
"name": "Automated Local Business Lead Generator with AI, Social Media & WhatsApp Links",
"tags": [],
"nodes": [
{
"id": "e1e728f2-c48b-493b-8d73-0f72993083cd",
"name": "HTTP 요청",
"type": "n8n-nodes-base.httpRequest",
"position": [
420,
0
],
"parameters": {
"url": "https://serpapi.com/search",
"options": {},
"sendQuery": true,
"queryParameters": {
"parameters": [
{
"name": "api_key",
"value": "YOUR_SERPAPI_KEY"
},
{
"name": "engine",
"value": "google_maps"
},
{
"name": "type",
"value": "search"
},
{
"name": "google_domain",
"value": "google.com"
},
{
"name": "q",
"value": "={{ $json.keyword }} {{ $json['city or specific location'] }}"
},
{
"name": "gl",
"value": "={{ $json['country code'] }}"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "efd6137c-6c9a-482c-92e4-e4691361be26",
"name": "기본 LLM 체인",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
1720,
-100
],
"parameters": {
"text": "=Business Information:\n\nName: {{ $json.title }}\nAddress: {{ $json.address }}\nRating: {{ $json.rating }} (based on {{ $json.reviews }} reviews)\nTypes: {{ $json.types }}\nPhone: {{ $json.phone }}\nWebsite: {{ $json.website }}\nReviews Link: {{ $json.reviews_link }}",
"batching": {},
"messages": {
"messageValues": [
{
"message": "=You are a digital business consultant. Based on the business information below, write a professional message directly addressed to the business owner.\nThe message should include:\n\nA brief summary of how the business is currently positioned (based on business type and typical customers)\nWhat customers likely appreciate most about the business\nAreas that could be improved for better visibility, engagement, or conversions\nOne actionable suggestion or opportunity for growth\nA short, persuasive closing line or CTA inviting them to improve their online presence or marketing strategy\nUse a helpful and respectful tone as if offering a free evaluation. Write in the language corresponding to the country code: {{ $('Get row(s) in sheet').item.json['country code'] }}."
}
]
},
"promptType": "define"
},
"typeVersion": 1.7
},
{
"id": "933599b0-9cd8-4719-8c58-d3c6bae7c720",
"name": "시트에 행 추가 또는 업데이트",
"type": "n8n-nodes-base.googleSheets",
"position": [
860,
0
],
"parameters": {
"columns": {
"value": {
"phone": "={{ \"https://wa.me/\" + $json.phone.replace(/\\D/g, \"\") }}",
"title": "={{ $json.title }}",
"types": "={{ $json.types }}",
"rating": "={{ $json.rating }}",
"address": "={{ $json.address }}",
"data_id": "={{ $json.data_id }}",
"reviews": "={{ $json.reviews }}",
"website": "={{ $json.website }}",
"reviews_link": "={{ $json.reviews_link }}"
},
"schema": [
{
"id": "data_id",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "data_id",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "title",
"type": "string",
"display": true,
"required": false,
"displayName": "title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "address",
"type": "string",
"display": true,
"required": false,
"displayName": "address",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "rating",
"type": "string",
"display": true,
"required": false,
"displayName": "rating",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "reviews",
"type": "string",
"display": true,
"required": false,
"displayName": "reviews",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "reviews_link",
"type": "string",
"display": true,
"required": false,
"displayName": "reviews_link",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "types",
"type": "string",
"display": true,
"required": false,
"displayName": "types",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "phone",
"type": "string",
"display": true,
"required": false,
"displayName": "phone",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "website",
"type": "string",
"display": true,
"required": false,
"displayName": "website",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "review_summary",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "review_summary",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_1",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_1",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_1_status",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_1_status",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "instagram",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "instagram",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "tiktok",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "tiktok",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "web_summary",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "web_summary",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_2",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_2",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_2_status",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_2_status",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"data_id"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1321933612,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit#gid=1321933612",
"cachedResultName": "results"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "YOUR_GOOGLE_SHEET_ID",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit?usp=drivesdk",
"cachedResultName": "Automated Local Business Lead Generator using AI, Gmail & Telegram"
}
},
"typeVersion": 4.6
},
{
"id": "9eb71830-c068-4121-98fb-2fea45840451",
"name": "문자 메시지 전송",
"type": "n8n-nodes-base.telegram",
"position": [
2540,
160
],
"webhookId": "73212779-f86d-4e82-bdd2-605adac6069f",
"parameters": {
"text": "=----\n\nLatest Data for Follow Up\n\nBusiness Name: {{ $('Limit').item.json.title }}\nBusiness Types : {{ $('Limit').item.json.types }}\nLocation: {{ $('Limit').item.json.address }}\n\nWhatsapp Link: \n{{ $('Limit').item.json.phone }}\n\n----",
"chatId": "YOUR_TELEGRAM_CHAT_ID",
"additionalFields": {
"appendAttribution": false
}
},
"typeVersion": 1.2
},
{
"id": "692059f0-ee24-409e-8f0c-1169404e4831",
"name": "일정 트리거",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
20,
0
],
"parameters": {
"rule": {
"interval": [
{}
]
}
},
"typeVersion": 1.2
},
{
"id": "bfbc2bdb-f14a-4788-8775-2459caae979d",
"name": "시트에서 행 가져오기",
"type": "n8n-nodes-base.googleSheets",
"position": [
220,
0
],
"parameters": {
"options": {},
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit#gid=0",
"cachedResultName": "data"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "YOUR_GOOGLE_SHEET_ID",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit?usp=drivesdk",
"cachedResultName": "Automated Local Business Lead Generator using AI, Gmail & Telegram"
}
},
"typeVersion": 4.6
},
{
"id": "0ece857b-9e1e-4dc2-b368-71226683bd70",
"name": "OpenRouter 채팅 모델",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
"position": [
1720,
80
],
"parameters": {
"model": "google/gemini-2.0-flash-exp:free",
"options": {}
},
"typeVersion": 1
},
{
"id": "71fea344-66b3-4042-aa2b-424b6d50bfb5",
"name": "웹사이트 보유 여부 확인",
"type": "n8n-nodes-base.if",
"position": [
2260,
-100
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "6a19bdfe-33c6-4786-897a-1d292f647db6",
"operator": {
"type": "string",
"operation": "notEmpty",
"singleValue": true
},
"leftValue": "={{ $('Limit').item.json.website }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "0a4385ce-7460-43eb-99ba-2552e90f2b7f",
"name": "시트1에 행 추가 또는 업데이트",
"type": "n8n-nodes-base.googleSheets",
"position": [
2960,
-680
],
"parameters": {
"columns": {
"value": {
"tiktok": "={{ $json.tiktok }}",
"data_id": "={{ $('Limit').item.json.data_id }}",
"instagram": "={{ $json.instagram }}"
},
"schema": [
{
"id": "data_id",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "data_id",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "title",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "address",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "address",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "rating",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "rating",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "reviews",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "reviews",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "reviews_link",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "reviews_link",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "types",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "types",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "phone",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "phone",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "website",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "website",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "review_summary",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "review_summary",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_1",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_1",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_1_status",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_1_status",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "instagram",
"type": "string",
"display": true,
"required": false,
"displayName": "instagram",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "tiktok",
"type": "string",
"display": true,
"required": false,
"displayName": "tiktok",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "web_summary",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "web_summary",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_2",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_2",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_2_status",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_2_status",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"data_id"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1321933612,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit#gid=1321933612",
"cachedResultName": "results"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "YOUR_GOOGLE_SHEET_ID",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit?usp=drivesdk",
"cachedResultName": "Automated Local Business Lead Generator using AI, Gmail & Telegram"
}
},
"typeVersion": 4.6
},
{
"id": "ff892256-4826-4d6b-a467-c25ac1feed85",
"name": "기본 LLM 체인1",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
2960,
-220
],
"parameters": {
"text": "=Business name: {{ $('Limit').item.json.title }}\nWebsite URL: {{ $('Limit').item.json.website }}\nWebsite content: {{ $('HTTP Request1').item.json.data }}\n",
"batching": {},
"messages": {
"messageValues": [
{
"message": "=Please help create a professional message to the business owner based on the following website content. Focus on a brief analysis and improvement suggestions, and conclude with an invitation to discuss with our digital agency.\n\nFormat the message like this:\n---\n\nWe visited [business name]'s website and found that [...].\n[Paragraph 2: Suggested technical/UX/SEO improvements in a polite and professional manner.]\n[Paragraph 3: Suggestion from the agency, including name and CTA.]\n\nUse a polite, clear, and concise style. Use emoji to make more interactive. Write in country code {{ $('Get row(s) in sheet').item.json['country code'] }} language."
}
]
},
"promptType": "define"
},
"typeVersion": 1.7
},
{
"id": "d721c358-0fa8-4b76-ad68-81871439f497",
"name": "시트2에 행 추가 또는 업데이트",
"type": "n8n-nodes-base.googleSheets",
"position": [
3300,
-220
],
"parameters": {
"columns": {
"value": {
"data_id": "={{ $('Limit').item.json.data_id }}",
"web_summary": "={{ $json.text }}"
},
"schema": [
{
"id": "data_id",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "data_id",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "title",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "address",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "address",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "rating",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "rating",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "reviews",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "reviews",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "reviews_link",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "reviews_link",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "types",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "types",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "phone",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "phone",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "website",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "website",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "review_summary",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "review_summary",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_1",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_1",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_1_status",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_1_status",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "instagram",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "instagram",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "tiktok",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "tiktok",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "web_summary",
"type": "string",
"display": true,
"required": false,
"displayName": "web_summary",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_2",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_2",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_2_status",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_2_status",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"data_id"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1321933612,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit#gid=1321933612",
"cachedResultName": "results"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "YOUR_GOOGLE_SHEET_ID",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit?usp=drivesdk",
"cachedResultName": "Automated Local Business Lead Generator using AI, Gmail & Telegram"
}
},
"typeVersion": 4.6
},
{
"id": "da07d108-1e9a-4165-a00c-46a34ab0ef98",
"name": "문자 메시지 전송1",
"type": "n8n-nodes-base.telegram",
"position": [
3520,
-220
],
"webhookId": "6f77a0b9-23cb-4a4b-8f23-c47f816e4fde",
"parameters": {
"text": "=----\n\nLatest Data for Follow Up\n\nBusiness Name: {{ $('Limit').item.json.title }}\nBusiness Types : {{ $('Limit').item.json.types }}\nLocation: {{ $('Limit').item.json.address }}\n\nWhatsapp Link: \n{{ $('Limit').item.json.phone }}\n\n----",
"chatId": "=YOUR_TELEGRAM_CHAT_ID",
"additionalFields": {
"appendAttribution": false
}
},
"typeVersion": 1.2
},
{
"id": "ed94c401-a892-44a4-ae30-7e15a23acfcc",
"name": "분할 출력",
"type": "n8n-nodes-base.splitOut",
"position": [
640,
0
],
"parameters": {
"options": {},
"fieldToSplitOut": "local_results"
},
"executeOnce": true,
"typeVersion": 1
},
{
"id": "f9817682-0399-4635-82ba-9f9e9f8c1ddd",
"name": "시트1에서 행 가져오기",
"type": "n8n-nodes-base.googleSheets",
"position": [
1080,
0
],
"parameters": {
"options": {},
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1321933612,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit#gid=1321933612",
"cachedResultName": "results"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "YOUR_GOOGLE_SHEET_ID",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit?usp=drivesdk",
"cachedResultName": "Automated Local Business Lead Generator using AI, Gmail & Telegram"
}
},
"executeOnce": true,
"typeVersion": 4.6
},
{
"id": "dcbf3521-62f1-4ece-b590-d018fa18fc56",
"name": "조건문",
"type": "n8n-nodes-base.if",
"position": [
1300,
0
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "febcf30b-1a4b-4ac3-971a-dcb5f471dee0",
"operator": {
"type": "string",
"operation": "empty",
"singleValue": true
},
"leftValue": "={{ $json.review_summary }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "373f6a6f-4bf1-4403-8ba2-01d7cd3bebd5",
"name": "제한",
"type": "n8n-nodes-base.limit",
"position": [
1520,
-100
],
"parameters": {
"maxItems": 5
},
"typeVersion": 1
},
{
"id": "e2a8be2e-1476-491c-97c2-48a80d65006c",
"name": "시트3에 행 추가 또는 업데이트",
"type": "n8n-nodes-base.googleSheets",
"position": [
2060,
-100
],
"parameters": {
"columns": {
"value": {
"data_id": "={{ $('Limit').item.json.data_id }}",
"review_summary": "={{ $json.text }}"
},
"schema": [
{
"id": "data_id",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "data_id",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "title",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "title",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "address",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "address",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "rating",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "rating",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "reviews",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "reviews",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "reviews_link",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "reviews_link",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "types",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "types",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "phone",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "phone",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "website",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "website",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "review_summary",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "review_summary",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_1",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_1",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_1_status",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_1_status",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "instagram",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "instagram",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "tiktok",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "tiktok",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "web_summary",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "web_summary",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_2",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_2",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "whatsapp_link_2_status",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "whatsapp_link_2_status",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"data_id"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1321933612,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit#gid=1321933612",
"cachedResultName": "results"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "YOUR_GOOGLE_SHEET_ID",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit?usp=drivesdk",
"cachedResultName": "Automated Local Business Lead Generator using AI, Gmail & Telegram"
}
},
"typeVersion": 4.6
},
{
"id": "65bea1ea-2295-4e6d-8c63-4fbde97d1d1e",
"name": "HTTP 요청1",
"type": "n8n-nodes-base.httpRequest",
"position": [
2540,
-220
],
"parameters": {
"url": "={{ $('Limit').item.json.website }}",
"options": {}
},
"executeOnce": true,
"typeVersion": 4.2
},
{
"id": "b9c345c3-f9ca-4620-85e5-fea50f92192e",
"name": "코드",
"type": "n8n-nodes-base.code",
"position": [
2740,
-680
],
"parameters": {
"jsCode": "const html = $json[\"data\"];\nconst ig = html.match(/https?:\\/\\/(www\\.)?instagram\\.com\\/[^\\s\"']+/i);\nconst tiktok = html.match(/https?:\\/\\/(www\\.)?tiktok\\.com\\/[^\\s\"']+/i);\n\nreturn [{\n json: {\n instagram: ig ? ig[0] : null,\n tiktok: tiktok ? tiktok[0] : null\n }\n}];\n"
},
"typeVersion": 2
},
{
"id": "f2d95980-fb2c-4d47-ac8a-cbd7d81e09cb",
"name": "OpenRouter 채팅 모델1",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
"position": [
2960,
-40
],
"parameters": {
"model": "google/gemini-2.0-flash-exp:free",
"options": {}
},
"typeVersion": 1
},
{
"id": "e540d2bc-d534-44ac-9367-7c3c847fdc86",
"name": "작업 없음",
"type": "n8n-nodes-base.noOp",
"position": [
1520,
280
],
"parameters": {},
"typeVersion": 1
},
{
"id": "27a67c3f-249b-44c5-b500-e77812bf3369",
"name": "코드1",
"type": "n8n-nodes-base.code",
"position": [
2740,
-220
],
"parameters": {
"jsCode": "const html = $json[\"data\"] || \"\";\n\n// Fungsi bantu untuk ekstrak teks antar tag\nfunction extractTag(tag, html) {\n const regex = new RegExp(`<${tag}[^>]*>(.*?)<\\\\/${tag}>`, 'gis');\n const matches = [];\n let match;\n while ((match = regex.exec(html)) !== null) {\n const clean = match[1].replace(/<[^>]*>/g, '').trim();\n if (clean.length > 5) matches.push(clean);\n }\n return matches;\n}\n\n// Fungsi untuk ambil meta tag\nfunction extractMeta(name, html) {\n const regex = new RegExp(`<meta[^>]+name=[\"']${name}[\"'][^>]+content=[\"']([^\"']+)[\"']`, 'i');\n const match = regex.exec(html);\n return match ? match[1].trim() : '';\n}\n\n// Ambil bagian penting\nconst title = extractTag('title', html)[0] || '';\nconst description = extractMeta('description', html);\nconst keywords = extractMeta('keywords', html);\nconst headings = extractTag('h1', html).concat(extractTag('h2', html), extractTag('h3', html), extractTag('h4', html));\nconst paragraphs = extractTag('p', html).filter(p => p.length > 30 && p.length < 300);\nconst buttons = extractTag('button', html).concat(extractTag('a', html)).filter(t => /order|buy|join|shop|sign|book|start|contact|subscribe/i.test(t));\n\n// Hasil akhir\nconst summary = [\n `🔹 Title:\\n${title}`,\n `🔹 Description:\\n${description}`,\n `🔹 Keywords:\\n${keywords}`,\n `🔹 Headings:\\n${headings.slice(0, 5).join('\\n') || '(Tidak ditemukan)'}`,\n `🔹 Paragraf Penting:\\n${paragraphs.slice(0, 3).join('\\n\\n') || '(Tidak ditemukan)'}`,\n `🔹 CTA / Tombol:\\n${buttons.slice(0, 5).join('\\n') || '(Tidak ditemukan)'}`\n].join('\\n\\n');\n\nreturn [{ json: { simplified_summary: summary } }];\n"
},
"typeVersion": 2
},
{
"id": "f2af7012-3463-4e49-aa21-7c18625026c5",
"name": "스티커 노트",
"type": "n8n-nodes-base.stickyNote",
"position": [
-600,
-540
],
"parameters": {
"width": 540,
"height": 1240,
"content": "# Automated Local Business Lead Generator with AI, Social Media & WhatsApp Links\n\nThis workflow automates the process of generating and managing local business leads by scraping Google Maps data, analyzing business information with AI, and creating personalized outreach messages. The system searches for local businesses based on keywords and locations, extracts their contact information and reviews, then generates professional outreach messages tailored to each business. Results are stored in Google Sheets and notifications are sent via Telegram.\n\n\n📊 **Google Sheets Template**\nUse this template: [Local Business Lead Generator](https://docs.google.com/spreadsheets/d/1s1N_cAFoKtCsolQh4v3QZpqr8KmVzi7agKHr5MdBEBs/edit?usp=sharing)\n\n\n## 🔑 Key Features\n- 🔍 Searches Google Maps for local businesses using SerpAPI based on keywords and location parameters \n- 📋 Collects comprehensive business information including name, address, rating, reviews, phone numbers, and websites \n- 🤖 Uses OpenRouter's LLM to analyze business data and generate personalized outreach messages \n- 🌐 Analyzes business websites to provide targeted improvement suggestions \n- 📱 Automatically detects Instagram and TikTok profiles from business websites \n- 🗣️ Generates messages in the local language based on country code settings \n- 📊 Organizes and stores all collected data in Google Sheets with proper categorization \n- 🚀 Sends real-time updates and lead summaries via Telegram bot \n- 💬 Automatically creates WhatsApp links for easy business communication \n\n---\n\n## 🔧 Requirements\n- ✅ **SerpAPI Account + API Key** – For Google Maps business data extraction \n- ✅ **OpenRouter Account + API Key** – For AI-powered message generation and analysis \n- ✅ **Telegram Bot + API Token** – For notifications and bot interactions \n- ✅ **Google Sheets** – Connected to n8n for data storage \n- ✅ **Google Sheets Template** – Pre-configured with proper column structure \n\n---\n\n## 🎁 Benefits\n- Fully automated lead generation and outreach system \n- Saves time and increases efficiency for local business marketing \n- High personalization improves engagement and response rate \n- Scalable for any niche or location \n"
},
"typeVersion": 1
},
{
"id": "ee7d5e30-8c35-4278-96f9-97a31a3b3204",
"name": "스티커 노트1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-20,
-200
],
"parameters": {
"color": 2,
"width": 580,
"height": 380,
"content": "- Run workflows automatically based on a specified schedule.\n- Fetch data from a Google Sheet containing a list of keywords and search locations.\n- Send requests to SerpAPI to retrieve business data from Google Maps based on input from the Sheet."
},
"typeVersion": 1
},
{
"id": "cfacf4f1-b561-4e48-8306-63567d337f30",
"name": "스티커 노트2",
"type": "n8n-nodes-base.stickyNote",
"position": [
620,
-200
],
"parameters": {
"color": 4,
"width": 800,
"height": 380,
"content": "- Break the local results array from the SerpAPI JSON output into individual items for individual processing.\n- Save each business result to a Google Sheet (results tab), using the ID data as the matching column.\n- Retrieve data from the results sheet for further analysis or processing.\n- Filter unsummarized data for further processing."
},
"typeVersion": 1
},
{
"id": "82526c8d-2ff1-42b9-9de7-b3c56d49d96e",
"name": "스티커 노트3",
"type": "n8n-nodes-base.stickyNote",
"position": [
1480,
-340
],
"parameters": {
"color": 5,
"width": 920,
"height": 560,
"content": "- Limit the number of items submitted to LLM for efficiency (e.g., only 5 businesses per batch)\n- Generate a review summary using a business information-based prompt.\n- The AI model used by the LLM Chain node above.\n- Save the review_summary results to Google Sheets (results tab), matching based on ID data.\n- Check if the business has a website for further processing."
},
"typeVersion": 1
},
{
"id": "3ed718a5-eab3-4bee-a114-14248fcb3f99",
"name": "스티커 노트4",
"type": "n8n-nodes-base.stickyNote",
"position": [
2720,
-400
],
"parameters": {
"color": 6,
"width": 500,
"height": 500,
"content": "- Fetch HTML content from a business website.\n- Extract important elements from the HTML using Regex, then organize them into a ready to use summary.\n- Provide an AI model for generating summaries."
},
"typeVersion": 1
},
{
"id": "4a093569-46b8-4066-ba07-b751f2003419",
"name": "스티커 노트5",
"type": "n8n-nodes-base.stickyNote",
"position": [
3260,
-400
],
"parameters": {
"color": 7,
"width": 500,
"height": 500,
"content": "- Save analysis results to Google Sheets.\n- Send automatic notifications to Telegram once data is processed and saved."
},
"typeVersion": 1
},
{
"id": "b138f46b-a0bd-43e0-89b6-b51e76178082",
"name": "스티커 노트6",
"type": "n8n-nodes-base.stickyNote",
"position": [
2720,
-840
],
"parameters": {
"color": 7,
"width": 500,
"height": 400,
"content": "- Find Instagram and TikTok account links from business website pages.\n- Save Instagram and TikTok extraction results to Google Sheets."
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "d17193ca-d795-492a-985a-4183538f81ab",
"connections": {
"dcbf3521-62f1-4ece-b590-d018fa18fc56": {
"main": [
[
{
"node": "373f6a6f-4bf1-4403-8ba2-01d7cd3bebd5",
"type": "main",
"index": 0
}
],
[
{
"node": "e540d2bc-d534-44ac-9367-7c3c847fdc86",
"type": "main",
"index": 0
}
]
]
},
"b9c345c3-f9ca-4620-85e5-fea50f92192e": {
"main": [
[
{
"node": "0a4385ce-7460-43eb-99ba-2552e90f2b7f",
"type": "main",
"index": 0
}
]
]
},
"27a67c3f-249b-44c5-b500-e77812bf3369": {
"main": [
[
{
"node": "ff892256-4826-4d6b-a467-c25ac1feed85",
"type": "main",
"index": 0
}
]
]
},
"373f6a6f-4bf1-4403-8ba2-01d7cd3bebd5": {
"main": [
[
{
"node": "efd6137c-6c9a-482c-92e4-e4691361be26",
"type": "main",
"index": 0
}
]
]
},
"ed94c401-a892-44a4-ae30-7e15a23acfcc": {
"main": [
[
{
"node": "933599b0-9cd8-4719-8c58-d3c6bae7c720",
"type": "main",
"index": 0
}
]
]
},
"e1e728f2-c48b-493b-8d73-0f72993083cd": {
"main": [
[
{
"node": "ed94c401-a892-44a4-ae30-7e15a23acfcc",
"type": "main",
"index": 0
}
]
]
},
"71fea344-66b3-4042-aa2b-424b6d50bfb5": {
"main": [
[
{
"node": "65bea1ea-2295-4e6d-8c63-4fbde97d1d1e",
"type": "main",
"index": 0
}
],
[
{
"node": "9eb71830-c068-4121-98fb-2fea45840451",
"type": "main",
"index": 0
}
]
]
},
"65bea1ea-2295-4e6d-8c63-4fbde97d1d1e": {
"main": [
[
{
"node": "27a67c3f-249b-44c5-b500-e77812bf3369",
"type": "main",
"index": 0
},
{
"node": "b9c345c3-f9ca-4620-85e5-fea50f92192e",
"type": "main",
"index": 0
}
]
]
},
"efd6137c-6c9a-482c-92e4-e4691361be26": {
"main": [
[
{
"node": "e2a8be2e-1476-491c-97c2-48a80d65006c",
"type": "main",
"index": 0
}
]
]
},
"ff892256-4826-4d6b-a467-c25ac1feed85": {
"main": [
[
{
"node": "d721c358-0fa8-4b76-ad68-81871439f497",
"type": "main",
"index": 0
}
]
]
},
"692059f0-ee24-409e-8f0c-1169404e4831": {
"main": [
[
{
"node": "bfbc2bdb-f14a-4788-8775-2459caae979d",
"type": "main",
"index": 0
}
]
]
},
"bfbc2bdb-f14a-4788-8775-2459caae979d": {
"main": [
[
{
"node": "e1e728f2-c48b-493b-8d73-0f72993083cd",
"type": "main",
"index": 0
}
]
]
},
"f9817682-0399-4635-82ba-9f9e9f8c1ddd": {
"main": [
[
{
"node": "dcbf3521-62f1-4ece-b590-d018fa18fc56",
"type": "main",
"index": 0
}
]
]
},
"0ece857b-9e1e-4dc2-b368-71226683bd70": {
"ai_languageModel": [
[
{
"node": "efd6137c-6c9a-482c-92e4-e4691361be26",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"f2d95980-fb2c-4d47-ac8a-cbd7d81e09cb": {
"ai_languageModel": [
[
{
"node": "ff892256-4826-4d6b-a467-c25ac1feed85",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"933599b0-9cd8-4719-8c58-d3c6bae7c720": {
"main": [
[
{
"node": "f9817682-0399-4635-82ba-9f9e9f8c1ddd",
"type": "main",
"index": 0
}
]
]
},
"d721c358-0fa8-4b76-ad68-81871439f497": {
"main": [
[
{
"node": "da07d108-1e9a-4165-a00c-46a34ab0ef98",
"type": "main",
"index": 0
}
]
]
},
"e2a8be2e-1476-491c-97c2-48a80d65006c": {
"main": [
[
{
"node": "71fea344-66b3-4042-aa2b-424b6d50bfb5",
"type": "main",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
고급 - 리드 생성, 멀티모달 AI
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
YouTube 댓글 감정 및 키워드 추출기
Gemini AI를 사용하여 YouTube 댓글 감성 및 키워드 분석 및 Telegram으로 보고
Set
Code
Telegram
+
Set
Code
Telegram
20 노드Budi SJ
시장 조사
매일 WhatsApp 그룹 지능형 분석: GPT-4.1 분석 및 음성 메시지 변환
매일 WhatsApp 그룹 지능 분석: GPT-4.1 분석 및 음성 메시지 트랜스크립션
If
Set
Code
+
If
Set
Code
52 노드Daniel Lianes
기타
AI 기반 리드 생성 시스템 (이메일 개인화 및 LinkedIn)
AI 기반 리드 생성 시스템: 이메일 개인화 및 LinkedIn 기능 포함
If
Code
Limit
+
If
Code
Limit
51 노드Matthieu
리드 생성
LinkedIn, OpenAI, Sales Navigator를 사용하여 적합한 유저와 콜 스크립트 생성
LinkedIn, OpenAI 및 Sales Navigator를 사용하여 적格 리드 및 콜 스크립트 생성
If
Code
Limit
+
If
Code
Limit
47 노드Matthieu
리드 생성
회사 ID 기반 Apollo 데이터 풍부화
Apollo, Google 시트, Telegram을 통해 회사 ID를 기반으로 구매 연락처를 풍부화
If
Set
Code
+
If
Set
Code
27 노드Khaisa Studio
리드 생성
Vision API와 LLM을 사용하여 자동화된发票 수집 및 데이터 추출
Google Vision OCR, Gemini LLM, Google Sheets를 사용하여 청구서 데이터를 추출하고 구조화합니다.
Set
Code
Telegram
+
Set
Code
Telegram
17 노드Budi SJ
청구서 처리
워크플로우 정보
난이도
고급
노드 수29
카테고리2
노드 유형12
저자
Budi SJ
@budisjI’m a Product Designer who also works as an Automation Developer. With a background in product design and systems thinking, I build user-centered workflows. My focus is on helping teams and businesses work more productively through impactful automation systems.
외부 링크
n8n.io에서 보기 →
이 워크플로우 공유