{
  "name": "Real estate property matching & lead management with Airtable, Gmail and Slack",
  "nodes": [
    {
      "id": "64d1ae53-8868-4b7f-8e9b-68626d15aef3",
      "name": "Capture Lead",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -1392,
        288
      ]
    },
    {
      "id": "3bdb4234-d07e-43ae-9aac-d1c1eb5d7d8f",
      "name": "Structure & Clean Data",
      "type": "n8n-nodes-base.set",
      "position": [
        -1200,
        288
      ]
    },
    {
      "id": "fc5fd614-c9c4-4dcb-9e77-7f7a647c85cf",
      "name": "Formula Creation",
      "type": "n8n-nodes-base.code",
      "position": [
        -992,
        288
      ]
    },
    {
      "id": "172dc29f-ee03-4c5f-b58d-f103fbb23d0a",
      "name": "Check Match Availability",
      "type": "n8n-nodes-base.if",
      "position": [
        -512,
        288
      ]
    },
    {
      "id": "36fc778c-c07c-478a-8843-e72a3db96374",
      "name": "Generate Email Template",
      "type": "n8n-nodes-base.code",
      "position": [
        -288,
        208
      ]
    },
    {
      "id": "dcb25710-b773-4081-96f9-c6183cf08a4f",
      "name": "Send Property Details",
      "type": "n8n-nodes-base.gmail",
      "position": [
        0,
        304
      ]
    },
    {
      "id": "72c5e30d-ebf1-4632-a555-2ee4c07d394f",
      "name": "Append Lead Data",
      "type": "n8n-nodes-base.airtable",
      "position": [
        320,
        208
      ]
    },
    {
      "id": "36ef382d-1993-4ea7-9357-156fdde59faf",
      "name": "Notify Sales Agent",
      "type": "n8n-nodes-base.slack",
      "position": [
        320,
        368
      ]
    },
    {
      "id": "9d189a53-c713-4823-9f09-b6c722bf371e",
      "name": "Send Lead Confirmation Message",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        320,
        528
      ]
    },
    {
      "id": "9875183f-c879-4036-b048-531dcab34af9",
      "name": "No Properties Found Respond",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        -288,
        352
      ]
    },
    {
      "id": "bf56b3b0-9c66-47ff-86d7-76be428ec26f",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1888,
        480
      ],
      "parameters": {
        "width": 432,
        "height": 352,
        "content": "## Sample Data & Resources\n\nhttps://airtable.com/appe77qnWMLUWfKEe/shrQ9t6tboCuNkswq\n\n### Webhook Payload:\n\n{\n    \"name\":\"Suresh\",\n    \"email\":\"johndeo@gmail.com\",\n    \"city\": \"Delhi\",\n    \"phone\":\"98"
      }
    },
    {
      "id": "5f7bfac5-2d21-4c20-9f01-828291f39b86",
      "name": "Fetch Properties Required & ± 5% budget range",
      "type": "n8n-nodes-base.airtable",
      "position": [
        -736,
        288
      ]
    },
    {
      "id": "c8209aa6-488f-4606-9b9f-89b3472cacf3",
      "name": "Workflow Overview",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1888,
        96
      ],
      "parameters": {
        "width": 436,
        "height": 368,
        "content": "## How it works\n1. Captures and structures the lead data\n2. Builds a dynamic Airtable formula to search properties matching their criteria (exact budget or ±5% range)\n3. Fetches matching properties fr"
      }
    },
    {
      "id": "07fbbd79-70f4-4d3a-8f17-f25cd876be78",
      "name": "Lead Intake Section",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1440,
        96
      ],
      "parameters": {
        "width": 600,
        "height": 412,
        "content": "## Lead Intake\nCaptures incoming lead data via webhook and structures it for processing (budget, city, property type)."
      }
    },
    {
      "id": "d270e4b8-61f5-43da-872f-060000b53db3",
      "name": "Property Search Section",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -832,
        96
      ],
      "parameters": {
        "width": 712,
        "height": 412,
        "content": "## Property Search Engine\nBuilds Airtable formula with ±5% budget flexibility, searches properties database, and validates if matches exist."
      }
    },
    {
      "id": "444b2b72-c453-4dc8-8a5f-dac5996acd97",
      "name": "Success Response Section",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -112,
        96
      ],
      "parameters": {
        "width": 816,
        "height": 604,
        "content": "## Success Flow\nGenerates HTML email with property cards, sends to lead, logs in Airtable, notifies sales team, and respond to webhook."
      }
    }
  ],
  "connections": {
    "Capture Lead": {
      "main": [
        [
          {
            "node": "Structure & Clean Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Formula Creation": {
      "main": [
        [
          {
            "node": "Fetch Properties Required & ± 5% budget range",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send Property Details": {
      "main": [
        [
          {
            "node": "Append Lead Data",
            "type": "main",
            "index": 0
          },
          {
            "node": "Notify Sales Agent",
            "type": "main",
            "index": 0
          },
          {
            "node": "Send Lead Confirmation Message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Structure & Clean Data": {
      "main": [
        [
          {
            "node": "Formula Creation",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate Email Template": {
      "main": [
        [
          {
            "node": "Send Property Details",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check Match Availability": {
      "main": [
        [
          {
            "node": "Generate Email Template",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "No Properties Found Respond",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch Properties Required & ± 5% budget range": {
      "main": [
        [
          {
            "node": "Check Match Availability",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}