{
  "name": "Website lead → Google Sheets + Telegram alert",
  "nodes": [
    {
      "parameters": {
        "content": "## Website lead → Google Sheets + Telegram alert\n\nCatches a form submission from any site (Webflow, Tilda, WordPress, custom), cleans the fields, saves the lead to Google Sheets and pings your sales chat in Telegram within seconds.\n\n**Setup (5 min)**\n1. Copy the Webhook URL into your form's action / webhook setting.\n2. Connect Google Sheets and pick your sheet (columns: date, name, contact, message, source).\n3. Connect a Telegram bot and set your chat ID.\n\nNeed it adapted to your CRM (HubSpot, Pipedrive, amoCRM, Xano) or with AI lead scoring? Email **igoshevmax@gmail.com**",
        "height": 380,
        "width": 460
      },
      "id": "8ff174e7-7ed2-41ac-8c67-8d2577fc8209",
      "name": "About",
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        -460,
        -120
      ]
    },
    {
      "parameters": {
        "httpMethod": "POST",
        "path": "website-lead",
        "responseMode": "onReceived",
        "options": {}
      },
      "id": "52b08ea9-0bd3-49e8-8233-989c9aeed7d9",
      "name": "Form webhook",
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 2,
      "position": [
        0,
        0
      ]
    },
    {
      "parameters": {
        "jsCode": "const b = $json.body ?? $json;\nconst pick = (...keys) => keys.map(k => b[k]).find(v => typeof v === 'string' && v.trim()) ?? '';\nreturn [{ json: {\n  date: new Date().toISOString(),\n  name: pick('name', 'Name', 'full_name'),\n  contact: pick('email', 'Email', 'phone', 'Phone', 'telegram'),\n  message: pick('message', 'Message', 'comment', 'text'),\n  source: pick('utm_source', 'source') || 'website',\n} }];"
      },
      "id": "426b668f-f857-4b54-9478-503c4d6058ad",
      "name": "Clean fields",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        240,
        0
      ]
    },
    {
      "parameters": {
        "operation": "append",
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": ""
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": ""
        },
        "columns": {
          "mappingMode": "autoMapInputData",
          "value": {}
        },
        "options": {}
      },
      "id": "fca456a6-090e-409d-8ebf-3df84be3438d",
      "name": "Save to sheet",
      "type": "n8n-nodes-base.googleSheets",
      "typeVersion": 4.5,
      "position": [
        480,
        0
      ]
    },
    {
      "parameters": {
        "chatId": "YOUR_CHAT_ID",
        "text": "=🆕 New lead\n{{ $('Clean fields').item.json.name }} · {{ $('Clean fields').item.json.contact }}\n{{ $('Clean fields').item.json.message }}\nSource: {{ $('Clean fields').item.json.source }}",
        "additionalFields": {}
      },
      "id": "5fd41787-bd76-4803-bf3f-23ae70a06d0c",
      "name": "Alert in Telegram",
      "type": "n8n-nodes-base.telegram",
      "typeVersion": 1.2,
      "position": [
        720,
        0
      ]
    }
  ],
  "connections": {
    "Form webhook": {
      "main": [
        [
          {
            "node": "Clean fields",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Clean fields": {
      "main": [
        [
          {
            "node": "Save to sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Save to sheet": {
      "main": [
        [
          {
            "node": "Alert in Telegram",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {
    "executionOrder": "v1"
  }
}