{ "nodes": [ { "id": "1a461b8a-090e-4dc4-a3d7-bf976a49828e", "name": "Slack", "type": "n8n-nodes-base.slack", "position": [ 1660, 200 ], "parameters": { "text": "=⭐ Got a hot lead for you {{ $json.properties.first_name }} {{ $json.properties.last_name }} from {{ $json.company.properties.name }} ({{ $json.company.properties.domain }}) based out of {{ $json.company.properties.location.state }}, {{ $json.company.properties.location.country }}.\n\n\n{{ $('Score lead with MadKudu').item.json.properties.customer_fit.top_signals_formatted }}", "select": "channel", "channelId": { "__rl": true, "mode": "name", "value": "#interesting_leads" }, "otherOptions": {} }, "credentials": { "slackApi": { "id": "{{ $credentials.slackApi.id }}", "name": "Nathan Slack Bot token" } }, "typeVersion": 2.1, "notes": "This slack node performs automated tasks as part of the workflow." }, { "id": "bcd8e7dc-cb7f-4e2b-a0c6-2d154cb58938", "name": "n8n Form Trigger", "type": "n8n-nodes-base.formTrigger", "position": [ 380, 420 ], "webhookId": "0bf8840f-1cc4-46a9-86af-a3fa8da80608", "parameters": { "path": "0bf8840f-1cc4-46a9-86af-a3fa8da80608", "options": {}, "formTitle": "Contact us", "formFields": { "values": [ { "fieldLabel": "What's your business email?" } ] }, "formDescription": "We'll get back to you soon" }, "typeVersion": 2, "notes": "This formTrigger node performs automated tasks as part of the workflow." }, { "id": "c20c626f-fd58-497f-942f-5d10f198f36d", "name": "Check if the email is valid", "type": "n8n-nodes-base.if", "position": [ 800, 420 ], "parameters": { "options": {}, "conditions": { "options": { "leftValue": "", "caseSensitive": true, "typeValidation": "strict" }, "combinator": "and", "conditions": [ { "id": "54d84c8a-63ee-40ed-8fb2-301fff0194ba", "operator": { "name": "filter.operator.equals", "type": "string", "operation": "equals" }, "leftValue": "={{ $json.status }}", "rightValue": "valid" } ] } }, "typeVersion": 2, "notes": "This if node performs automated tasks as part of the workflow." }, { "id": "9c55911c-06b7-4291-a91d-30c0cb87b7f2", "name": "Sticky Note", "type": "n8n-nodes-base.stickyNote", "position": [ 380, 220 ], "parameters": { "color": 5, "width": 547, "height": 158, "content": "### 👨‍🎤 Setup\n1. Add you **MadKudu**, **Hunter**, and **Slack** credentials \n2. Set the Slack channel\n3. Click the Test Workflow button, enter your email and check the Slack channel\n4. Activate the workflow and use the form trigger production URL to collect your leads in a smart way " }, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow." }, { "id": "c96096f2-6505-4955-bb1b-c4f903428b1d", "name": "Sticky Note1", "type": "n8n-nodes-base.stickyNote", "position": [ 380, 560 ], "parameters": { "color": 7, "width": 162, "height": 139, "content": "👆 You can exchange this with any form you like (*e.g. Typeform, Google forms, Survey Monkey...*)" }, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow." }, { "id": "751458aa-7b63-48ab-881e-d68df94a3390", "name": "Sticky Note2", "type": "n8n-nodes-base.stickyNote", "position": [ 1360, 500 ], "parameters": { "color": 7, "width": 162, "height": 84, "content": "👆 Adjust the fit as you see necessary" }, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow." }, { "id": "6416c2ee-59a0-4496-bd62-0a3af06986b7", "name": "Email is not valid, do nothing", "type": "n8n-nodes-base.noOp", "position": [ 1140, 560 ], "parameters": {}, "typeVersion": 1, "notes": "This noOp node performs automated tasks as part of the workflow." }, { "id": "b9ce2ee8-b816-497a-99af-faffdc99ee5f", "name": "Score lead with MadKudu", "type": "n8n-nodes-base.httpRequest", "position": [ 1140, 320 ], "parameters": { "url": "{{ $env.BASE_URL }}", "options": {}, "authentication": "{{ $credentials.genericCredentialType }}", "genericAuthType": "httpHeaderAuth" }, "credentials": { "httpHeaderAuth": { "id": "71W5Bt9g1G9GOhVL", "name": "MadKudu Lead score" } }, "typeVersion": 4.1, "notes": "This httpRequest node performs automated tasks as part of the workflow." }, { "id": "0720ab51-5222-46fe-8a1a-31e25b81920c", "name": "Verify email with Hunter", "type": "n8n-nodes-base.hunter", "position": [ 600, 420 ], "parameters": { "email": "={{ $json['What\\'s your business email?'] }}", "operation": "emailVerifier" }, "credentials": { "hunterApi": { "id": "ecwmdHFSBU5GGnV1", "name": "Hunter account" } }, "typeVersion": 1, "notes": "This hunter node performs automated tasks as part of the workflow." }, { "id": "95ec00d2-d926-49ff-a604-1f2d0b291b6f", "name": "Not interesting enough", "type": "n8n-nodes-base.noOp", "position": [ 1660, 460 ], "parameters": {}, "typeVersion": 1, "notes": "This noOp node performs automated tasks as part of the workflow." }, { "id": "5dc270d5-29fd-4620-8ca4-84532cf49c34", "name": "if customer fit score > 60", "type": "n8n-nodes-base.if", "position": [ 1380, 320 ], "parameters": { "options": {}, "conditions": { "options": { "leftValue": "", "caseSensitive": true, "typeValidation": "strict" }, "combinator": "and", "conditions": [ { "id": "c23d7b34-a4ae-421f-bd7a-6a3ebb05aafe", "operator": { "type": "number", "operation": "gt" }, "leftValue": "={{ $json.properties.customer_fit.score }}", "rightValue": 60 } ] } }, "typeVersion": 2, "notes": "This if node performs automated tasks as part of the workflow." } ], "pinData": { "n8n Form Trigger": [ { "formMode": "test", "submittedAt": "2024-02-22T13:59:54.709Z", "What's your business email?": "jan@n8n.io" } ] }, "connections": { "b9ce2ee8-b816-497a-99af-faffdc99ee5f": { "main": [ [ { "node": "error-handler-b9ce2ee8-b816-497a-99af-faffdc99ee5f", "type": "main", "index": 0 } ], [ { "node": "error-handler-b9ce2ee8-b816-497a-99af-faffdc99ee5f-d50a752c", "type": "main", "index": 0 } ], [ { "node": "error-handler-b9ce2ee8-b816-497a-99af-faffdc99ee5f-4c47dae9", "type": "main", "index": 0 } ], [ { "node": "error-handler-b9ce2ee8-b816-497a-99af-faffdc99ee5f-1b056c2e", "type": "main", "index": 0 } ], [ { "node": "error-handler-b9ce2ee8-b816-497a-99af-faffdc99ee5f-1ab1e23a", "type": "main", "index": 0 } ], [ { "node": "error-handler-b9ce2ee8-b816-497a-99af-faffdc99ee5f-50f33fa6", "type": "main", "index": 0 } ], [ { "node": "error-handler-b9ce2ee8-b816-497a-99af-faffdc99ee5f-40f6dcd9", "type": "main", "index": 0 } ], [ { "node": "error-handler-b9ce2ee8-b816-497a-99af-faffdc99ee5f-58715ab1", "type": "main", "index": 0 } ], [ { "node": "error-handler-b9ce2ee8-b816-497a-99af-faffdc99ee5f-b85381ea", "type": "main", "index": 0 } ] ] }, "1a461b8a-090e-4dc4-a3d7-bf976a49828e": { "main": [ [ { "node": "error-handler-1a461b8a-090e-4dc4-a3d7-bf976a49828e-a5008a07", "type": "main", "index": 0 } ] ] } }, "name": "Slack Workflow", "settings": { "executionOrder": "v1", "saveManualExecutions": true, "callerPolicy": "workflowsFromSameOwner", "errorWorkflow": null, "timezone": "UTC", "executionTimeout": 3600, "maxExecutions": 1000, "retryOnFail": true, "retryCount": 3, "retryDelay": 1000 }, "description": "Automated workflow: Slack Workflow. This workflow integrates 8 different services: stickyNote, formTrigger, httpRequest, hunter, stopAndError. It contains 14 nodes and follows best practices for error handling and security.", "meta": { "instanceId": "workflow-54225e57", "versionId": "1.0.0", "createdAt": "2025-09-29T07:07:52.302098", "updatedAt": "2025-09-29T07:07:52.302125", "owner": "n8n-user", "license": "MIT", "category": "automation", "status": "active", "priority": "high", "environment": "production" }, "tags": [ "automation", "n8n", "production-ready", "excellent", "optimized" ], "notes": "Excellent quality workflow: Slack Workflow. This workflow has been optimized for production use with comprehensive error handling, security, and documentation." }