웹사이트 양식에서 Google Sheets 및 Slack으로의 잠재 리드 관리 자동화
초급
이것은Lead Generation분야의자동화 워크플로우로, 5개의 노드를 포함합니다.주로 Code, Slack, Webhook, GoogleSheets 등의 노드를 사용하며. 웹사이트 폼에서 Google Sheets 및 Slack으로의 잠재 고객 관리 자동화
사전 요구사항
- •Slack Bot Token 또는 Webhook URL
- •HTTP Webhook 엔드포인트(n8n이 자동으로 생성)
- •Google Sheets API 인증 정보
사용된 노드 (5)
카테고리
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"meta": {
"instanceId": "2000c64071c20843606b95c63795bb0797c41036047055a6586498e855b96efc",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "4cdc8f9c-6197-437d-92c3-b12100a790d9",
"name": "코드",
"type": "n8n-nodes-base.code",
"position": [
-208,
128
],
"parameters": {
"jsCode": "const items = $input.all();\n\nconst updatedItems = items.map((item) => {\n const { name, email, businessName, message, timeline, budget } =\n item.json.body;\n return {\n name,\n email,\n businessName,\n \"project intent/need\": message,\n timeline,\n budget,\n };\n});\n\nreturn updatedItems;\n"
},
"typeVersion": 2
},
{
"id": "b64a3c66-72a0-4661-84c5-27eab0af3105",
"name": "Google Sheets",
"type": "n8n-nodes-base.googleSheets",
"position": [
0,
128
],
"parameters": {
"columns": {
"value": {
"full name": "={{ $json.name }}",
"Budget Range": "={{ $json.budget }}",
"Business name": "={{ $json.businessName }}",
"Email Address": "={{ $json.email }}",
"Project Timeline": "={{ $json.timeline }}",
"Project Intent/Needs": "={{ $json['project intent/need'] }}"
},
"schema": [
{
"id": "full name",
"type": "string",
"display": true,
"required": false,
"displayName": "full name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Email Address",
"type": "string",
"display": true,
"required": false,
"displayName": "Email Address",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Project Intent/Needs",
"type": "string",
"display": true,
"required": false,
"displayName": "Project Intent/Needs",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Project Timeline",
"type": "string",
"display": true,
"required": false,
"displayName": "Project Timeline",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Budget Range",
"type": "string",
"display": true,
"required": false,
"displayName": "Budget Range",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Business name",
"type": "string",
"display": true,
"required": false,
"displayName": "Business name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Preferred Communication Channel",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "Preferred Communication Channel",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "How they heard about DAEX AI",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "How they heard about DAEX AI",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Phone Number",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "Phone Number",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1OBxt6TX3edgxiSYnsULCuSM5OL7GYlA6W3DjNYBEpfo/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1OBxt6TX3edgxiSYnsULCuSM5OL7GYlA6W3DjNYBEpfo",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1OBxt6TX3edgxiSYnsULCuSM5OL7GYlA6W3DjNYBEpfo/edit?usp=drivesdk",
"cachedResultName": "client intake form"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "b0RUCwZZREhRN85o",
"name": "Google Sheets account"
}
},
"typeVersion": 4.5
},
{
"id": "d1adffe8-b7fd-46e7-aa37-ef0d910dda0d",
"name": "웹훅",
"type": "n8n-nodes-base.webhook",
"position": [
-416,
128
],
"webhookId": "34e9fb3f-f6bd-4a44-bb58-6fe58ffe4a78",
"parameters": {
"path": "34e9fb3f-f6bd-4a44-bb58-6fe58ffe4a78",
"options": {},
"httpMethod": "POST"
},
"typeVersion": 2
},
{
"id": "4dbd211d-9db5-4567-b092-0111e9512e03",
"name": "메시지 보내기",
"type": "n8n-nodes-base.slack",
"message": "*New Website Lead Alert!* :zap:\n\nA new project inquiry has been received and logged to the Google Sheet.\n\n*Details:*\n- *Name:* {{ $('Code').item.json.name }}\n- *Email:* {{ $('Code').item.json.email }}\n- *Business Name:* {{ $('Code').item.json.businessName || 'N/A' }}\n- *Project Intent/Need:* {{ $('Code').item.json['project intent/need'] }}\n- *Timeline:* {{ $('Code').item.json.timeline || 'Not specified' }}\n- *Budget:* {{ $('Code').item.json.budget || 'Not specified' }}\n\n:clipboard: *Google Sheet Link:* https://docs.google.com/spreadsheets/d/1OBxt6TX3edgxiSYnsULCuSM5OL7GYlA6W3DjNYBEpfo/edit#gid=0\n:alarm_clock: *Received At:* {{ new Date().toLocaleString() }}\n\n:point_right: *Action:* Please review the details in the Google Sheet and follow up with the lead as soon as possible!",
"position": [
208,
128
],
"webhookId": "cd1a4d51-2ac3-4ebf-85ae-b08ef08e830f",
"parameters": {
"text": "=*New Website Lead Alert!* :zap:\\n\\nA new project inquiry has been received and logged to the Google Sheet.\\n\\n*Details:*\\n- *Name:* {{ $('Code').item.json.name }}\\n- *Email:* {{ $('Code').item.json.email }}\\n- *Business Name:* {{ $('Code').item.json.businessName || 'N/A' }}\\n- *Project Intent/Need:* {{ $('Code').item.json['project intent/need'] }}\\n- *Timeline:* {{ $('Code').item.json.timeline || 'Not specified' }}\\n- *Budget:* {{ $('Code').item.json.budget || 'Not specified' }}\\n\\n:clipboard: *Google Sheet Link:* https://docs.google.com/spreadsheets/d/1OBxt6TX3edgxiSYnsULCuSM5OL7GYlA6W3DjNYBEpfo/edit#gid=0\\n:alarm_clock: *Received At:* {{ new Date().toLocaleString() }}\\n\\n:point_right: *Action:* Please review the details in the Google Sheet and follow up with the lead as soon as possible!\" }, {",
"user": {
"__rl": true,
"mode": "list",
"value": "U08UNT9F5E2",
"cachedResultName": "daevo_workforce"
},
"select": "user",
"otherOptions": {},
"authentication": "oAuth2"
},
"credentials": {
"slackOAuth2Api": {
"id": "rCOUwK3276xqTfQi",
"name": "Slack account"
}
},
"typeVersion": 2.3
},
{
"id": "6696d004-c56f-4e9c-8f8e-9d5355561eb0",
"name": "스티커 메모",
"type": "n8n-nodes-base.stickyNote",
"position": [
-976,
-368
],
"parameters": {
"color": 7,
"width": 1056,
"height": 896,
"content": "Website Contact Form to Google Sheet & Slack Notification\n\nThis document provides a complete guide to setting up and configuring the n8n workflow that captures website contact form submissions, logs them to a Google Sheet, and sends real-time notifications to Slack.\n\n### Workflow Overview\n\nThis workflow automates lead management by:\n\n1. **Capturing Submissions:** A webhook or form trigger receives data from your website's contact form.\n\n2. **Transforming Data:** A Code node processes the incoming data into a clean, standardized format.\n\n3. **Logging to Google Sheet:** The processed data is appended as a new row in a designated Google Sheet, acting as your lead database.\n\n4. **Notifying Team on Slack:** A detailed alert message is sent to a specified Slack channel, ensuring immediate team awareness and prompt follow-up.\n\n### Step-by-Step Setup Guide\n\nFollow these steps to set up and activate your n8n workflow:\n\n#### 1. Import the Workflow\n\n* Copy the entire JSON content of your n8n workflow from the Canvas.\n\n* In your n8n instance, go to \"Workflows\" (left sidebar).\n\n* Click the \"New\" button (or \"+\" icon) and select \"Import from JSON.\"\n\n* Paste the copied JSON and click \"Import.\"\n\n#### 2. Configure Credentials\n\nBefore activating the workflow, you need to set up the necessary credentials for Google Sheets and Slack.\n\n* **Google Sheets Account:**\n\n 1. In n8n, go to \"Credentials\" (left sidebar).\n\n 2. Click \"New Credential\" and search for \"Google Sheets API.\"\n\n 3. Choose \"OAuth2\" authentication.\n\n 4. Follow the on-screen prompts to connect your Google Account and grant access to Google Sheets.\n\n 5. Once created, note down its ID (e.g., `b0RUCwZZREhRN85o`).\n\n* **Slack Account:**\n\n 1. In n8n, go to \"Credentials\" (left sidebar).\n\n 2. Click \"New Credential\" and search for \"Slack API.\"\n\n 3. Choose \"OAuth2\" authentication.\n\n 4. You will likely need to create a Slack App in your workspace (`api.slack.com/apps`).\n\n 5. Configure \"Bot Token Scopes\" (e.g., `chat:write`, `channels:read`).\n\n 6. Install the app to your workspace.\n\n 7. Follow the n8n authentication steps to connect your Slack workspace.\n\n 8. Once created, note down its ID (e.g., `rCOUwK3276xqTfQi`).\n\n#### 3. Prepare Your Google Sheet\n\nYou need a Google Sheet to store your form submissions.\n\n* **Create a New Google Sheet:** Go to Google Sheets and create a new spreadsheet.\n\n* **Name the Sheet:** Ensure the first sheet tab is named `Sheet1`.\n\n* **Add Column Headers:** In the first row of `Sheet1`, add the following column headers exactly as listed below:\n\n * `Full Name`\n\n * `Email Address`\n\n * `Business Name`\n\n * `Project Intent/Needs`\n\n * `Project Timeline`\n\n * `Budget Range`\n\n * `Received At` (This column will automatically record the submission timestamp)\n\n#### 4. Configure Each Node in n8n\n\nNow, go back to your imported workflow in n8n and configure each node:\n\n* **Webhook1 (Webhook Trigger):**\n\n * This node receives data from your website form.\n\n * **Path:** `34e9fb3f-f6bd-4a44-bb58-6fe58ffe4a78` (This is unique to your workflow; do not change it unless you intend to generate a new webhook URL).\n\n * After activating the workflow, you will get a \"Webhook URL\" from this node. This URL is what you'll use in your website's contact form submission settings (e.g., as the action URL for your HTML form, or in your form builder's webhook integration).\n\n* **Code (Code Node):**\n\n * This node transforms the incoming webhook data into a standardized JSON format.\n\n * No configuration is typically needed here unless your incoming form fields differ significantly from `name`, `email`, `businessName`, `message`, `timeline`, `budget`.\n\n * The code maps `item.json.body` fields to a cleaner output:\n\n ```\n const items = $input.all();\n const updatedItems = items.map((item) => {\n const { name, email, businessName, message, timeline, budget } = item.json.body;\n return {\n name,\n email,\n businessName,\n \"project intent/need\": message, // Renames 'message'\n timeline,\n budget,\n };\n });\n return updatedItems;\n \n ```\n\n* **Google Sheets1 (Google Sheets Node):**\n\n * **Operation:** `Append`\n\n * **Credentials:** Select your \"Google Sheets Account\" credential (e.g., `b0RUCwZZREhRN85o`).\n\n * **Spreadsheet ID:** Replace `1OBxt6TX3edgxiSYnsULCuSM5OL7GYlA6W3DjNYBEpfo` with *your actual Google Sheet ID*. You can find this in the URL of your Google Sheet.\n\n * **Sheet Name:** `Sheet1` (or your chosen sheet name).\n\n * **Columns Mapping:** Ensure the mapping is correct. It should look like this:\n\n * `full name`: `={{ $json.name }}`\n\n * `Email Address`: `={{ $json.email }}`\n\n * `Project Intent/Needs`: `={{ $json['project intent/need'] }}`\n\n * `Project Timeline`: `={{ $json.timeline }}`\n\n * `Budget Range`: `={{ $json.budget }}`\n\n * `Business name`: `={{ $json.businessName }}`\n\n * `Received At`: `={{ new Date().toLocaleString() }}` (Manually add this mapping if not present, using the expression)\n\n* **Send a message (Slack Node):**\n\n * **Operation:** `Send a message`\n\n * **Credentials:** Select your \"Slack Account\" credential (e.g., `rCOUwK3276xqTfQi`).\n\n * **Channel ID:** Replace `YOUR_SLACK_CHANNEL_ID` with the actual ID of the Slack channel where you want the alerts to appear (e.g., `C0123456789`). You can get this by right-clicking the channel in Slack and selecting \"Copy link\" - the ID is the last part of the URL.\n\n * **Message:** This is the detailed alert message:\n\n ```\n *New Website Lead Alert!* :zap:\n \n A new project inquiry has been received and logged to the Google Sheet.\n \n *Details:*\n - *Name:* {{ $('Code').item.json.name }}\n - *Email:* {{ $('Code').item.json.email }}\n - *Business Name:* {{ $('Code').item.json.businessName || 'N/A' }}\n - *Project Intent/Need:* {{ $('Code').item.json['project intent/need'] }}\n - *Timeline:* {{ $('Code').item.json.timeline || 'Not specified' }}\n - *Budget:* {{ $('Code').item.json.budget || 'Not specified' }}\n \n :clipboard: *Google Sheet Link:* [https://docs.google.com/spreadsheets/d/1OBxt6TX3edgxiSYnsULCuSM5OL7GYlA6W3DjNYBEpfo/edit#gid=0](https://docs.google.com/spreadsheets/d/1OBxt6TX3edgxiSYnsULCuSM5OL7GYlA6W3DjNYBEpfo/edit#gid=0)\n :alarm_clock: *Received At:* {{ new Date().toLocaleString() }}\n \n :point_right: *Action:* Please review the details in the Google Sheet and follow up with the lead as soon as possible!\n \n ```\n\n#### 5. Activate the Workflow\n\n* Once all credentials and node parameters are configured, click the \"Activate\" toggle in the top right corner of the n8n workflow editor.\n\n#### 6. Test the Workflow\n\n* Copy the \"Production Webhook URL\" from the \"Webhook1\" node.\n\n* Use a tool like Postman, Insomnia, or a simple HTML form on a test page to send a `POST` request to this URL with a JSON body containing your test data (e.g., `{\"name\": \"Test User\", \"email\": \"test@example.com\", \"businessName\": \"Test Co\", \"message\": \"I need automation!\", \"timeline\": \"ASAP\", \"budget\": \"$1000-$2000\"}`).\n\n* Alternatively, if you're integrating with an existing website form, submit a test entry through your website.\n\n* Verify that a new row appears in your Google Sheet and a message is posted in your designated Slack channel.\n\nThis comprehensive guide should help you and others set up this high-ROI automation efficiently"
},
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"4cdc8f9c-6197-437d-92c3-b12100a790d9": {
"main": [
[
{
"node": "b64a3c66-72a0-4661-84c5-27eab0af3105",
"type": "main",
"index": 0
}
]
]
},
"d1adffe8-b7fd-46e7-aa37-ef0d910dda0d": {
"main": [
[
{
"node": "4cdc8f9c-6197-437d-92c3-b12100a790d9",
"type": "main",
"index": 0
}
]
]
},
"b64a3c66-72a0-4661-84c5-27eab0af3105": {
"main": [
[
{
"node": "4dbd211d-9db5-4567-b092-0111e9512e03",
"type": "main",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
초급 - 리드 생성
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
Instagram 잠재 고객을 Google 스프레드시트에 자동 저장
Instagram 잠재 고객을 Google 스프레드시트에 자동 저장
Code
Webhook
Google Sheets
+
Code
Webhook
Google Sheets
4 노드David Olusola
리드 생성
LinkedIn 잠재 고객 생성 및 CRM 자동화 패키지
Apify를 사용하여 LinkedIn 개인 프로필을 추출하고 Google Sheets CRM에 자동으로 잠재 고객 데이터를 생성합니다
If
Set
Code
+
If
Set
Code
18 노드David Olusola
리드 생성
폼 제출을 Notion CRM 설정으로
웹 양식 제출을 Notion CRM 데이터베이스에捕获합니다.
Code
Notion
Webhook
+
Code
Notion
Webhook
7 노드David Olusola
리드 생성
새로운 Calendly 예약을 Google 시트에 자동 추가
새 Calendly 예약을 Google 시트에 자동 추가
Code
Webhook
Google Sheets
+
Code
Webhook
Google Sheets
5 노드David Olusola
고객관계관리
GPT-4를 사용하여 Zoom 녹화 자동 요약 및 Slack 및 이메일로 전송
GPT-4를 사용하여 Zoom 녹화 자동 요약 및 Slack 및 이메일로 전송
Code
Gmail
Slack
+
Code
Gmail
Slack
6 노드David Olusola
AI 요약
HR 날짜 관리
JavaScript를 사용한 HR 직원 날짜 추적 및 알림 자동화
Set
Code
Gmail
+
Set
Code
Gmail
18 노드David Olusola
인사
워크플로우 정보
난이도
초급
노드 수5
카테고리1
노드 유형5
저자
David Olusola
@dae221I help ambitious businesses eliminate operational bottlenecks and scale faster with AI automation. My clients typically see 40-60% efficiency gains within 90 days. Currently accepting 3 new projects this quarter - david@daexai.com
외부 링크
n8n.io에서 보기 →
이 워크플로우 공유