{
  "name": "Lead Automation - Ace Plumbing",
  "nodes": [
    {
      "parameters": {
        "httpMethod": "POST",
        "path": "lead-automation",
        "options": {}
      },
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 2.1,
      "position": [
        -704,
        608
      ],
      "id": "3dfb5843-8100-4039-a2b4-ad4a55035104",
      "name": "Receive Leads"
    },
    {
      "parameters": {
        "operation": "appendOrUpdate",
        "documentId": {
          "__rl": true,
          "value": "1wVU0fCuQBeTpRxk5SMH16jQqVayXHc1ziOYiXoBlNBE",
          "mode": "list",
          "cachedResultName": "Leads 2.0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1wVU0fCuQBeTpRxk5SMH16jQqVayXHc1ziOYiXoBlNBE/edit?usp=drivesdk"
        },
        "sheetName": {
          "__rl": true,
          "value": "gid=0",
          "mode": "list",
          "cachedResultName": "Sheet1",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1wVU0fCuQBeTpRxk5SMH16jQqVayXHc1ziOYiXoBlNBE/edit#gid=0"
        },
        "columns": {
          "mappingMode": "defineBelow",
          "value": {
            "Name": "={{ $json.name }}",
            "Phone": "={{ $json.phone }}",
            "Email": "={{ $json.email }}",
            "Address": "={{ $json.address }}",
            "Problem": "={{ $json.problem }}",
            "Urgency": "={{ $json.urgency }}",
            "Summary": "={{ $json.summary }}",
            "Status": "={{ $json.status }}",
            "Timestamp": "={{ $json.SubmittedAt.toDateTime().toFormat('LLL d, yyyy, h:mm a')}}"
          },
          "matchingColumns": [
            "Timestamp"
          ],
          "schema": [
            {
              "id": "Name",
              "displayName": "Name",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            },
            {
              "id": "Phone",
              "displayName": "Phone",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "Email",
              "displayName": "Email",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "Address",
              "displayName": "Address",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "Problem",
              "displayName": "Problem",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "Urgency",
              "displayName": "Urgency",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "Summary",
              "displayName": "Summary",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "Status",
              "displayName": "Status",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true
            },
            {
              "id": "Timestamp",
              "displayName": "Timestamp",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "canBeUsedToMatch": true,
              "removed": false
            }
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {}
      },
      "type": "n8n-nodes-base.googleSheets",
      "typeVersion": 4.7,
      "position": [
        -256,
        608
      ],
      "id": "e57f07ef-0967-4671-8d12-da30fca79df5",
      "name": "Update database",
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "sendTo": "={{ $json.Email }}",
        "subject": "=We got your message, {{ $json.Name.split(' ')[0] }}!",
        "emailType": "text",
        "message": "={{ $('Prepare Messages').item.json.customerMessage }}\n\nAce Plumbing.",
        "options": {
          "appendAttribution": false,
          "senderName": "Ace Plumbing"
        }
      },
      "type": "n8n-nodes-base.gmail",
      "typeVersion": 2.2,
      "position": [
        -32,
        608
      ],
      "id": "0fe2ce15-6678-4ce6-b7c1-8a22f31d1c28",
      "name": "Update customer message recieved",
      "credentials": {
        "gmailOAuth2": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "sendTo": "mashalonzo741@gmail.com",
        "subject": "=New Lead,  {{ $('Update database').item.json.Name }}, Emergency : {{ $('Update database').item.json.Urgency === 'emergency' }}",
        "emailType": "text",
        "message": "={{ $('Prepare Messages').item.json.ownerMessage }}",
        "options": {
          "appendAttribution": false,
          "senderName": "Ace Plumbing"
        }
      },
      "type": "n8n-nodes-base.gmail",
      "typeVersion": 2.2,
      "position": [
        176,
        608
      ],
      "id": "640789fb-b710-4bff-84e6-c48330194c63",
      "name": "Inform Owner New Lead",
      "credentials": {
        "gmailOAuth2": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "bca74ee1-e4fa-48db-b125-7c2db4837dfd",
              "name": "=ownerMessage",
              "value": "=New lead : {{ $json.body.name }}, {{ $json.body.phone }}. \n\nEmergency : {{ $json.body.urgency === 'emergency' }}\n\n{{ $json.body.summary }}\n\nAddress: {{ $json.body.address }}\n",
              "type": "string"
            },
            {
              "id": "cd804c25-1e99-4f5d-9961-574930be14dd",
              "name": "=customerMessage",
              "value": "=Hi {{ $json.body.name.split(' ')[0] }}, thanks for reaching out to Ace Plumbing! \n\nWe'll be in touch shortly. Book a time that works for you here: https://calendly.com/ace-plumbing/job",
              "type": "string"
            },
            {
              "id": "dff9e8f8-a1f2-4b7f-92c5-a283ec7ad828",
              "name": "isEmergency",
              "value": "={{ $json.body.urgency === 'emergency' }}",
              "type": "string"
            },
            {
              "id": "fe0cf002-5301-456d-9a7c-ae155465f577",
              "name": "name",
              "value": "={{ $json.body.name }}",
              "type": "string"
            },
            {
              "id": "6b6e558e-975f-4103-a7dc-e4d1c7fe4778",
              "name": "phone",
              "value": "={{ $json.body.phone }}",
              "type": "string"
            },
            {
              "id": "f288a976-8054-446d-8741-0326b4c99875",
              "name": "email",
              "value": "={{ $json.body.email }}",
              "type": "string"
            },
            {
              "id": "2ce7d1d3-171c-4119-9f51-3ec632bcd88f",
              "name": "address",
              "value": "={{ $json.body.address }}",
              "type": "string"
            },
            {
              "id": "819112be-17ae-4f11-af28-59252f26b696",
              "name": "problem",
              "value": "={{ $json.body.problem }}",
              "type": "string"
            },
            {
              "id": "4d3cd36d-7b24-4423-bb7c-1c872ce7f0e6",
              "name": "urgency",
              "value": "={{ $json.body.urgency }}",
              "type": "string"
            },
            {
              "id": "aab422d7-b047-4087-9038-1ed72de4ba73",
              "name": "summary",
              "value": "={{ $json.body.summary }}",
              "type": "string"
            },
            {
              "id": "e58b0a7d-83fe-4d8d-ab07-d17005351c38",
              "name": "status",
              "value": "New",
              "type": "string"
            },
            {
              "id": "766bedba-688f-4b6d-a9e1-abd67a637887",
              "name": "SubmittedAt",
              "value": "={{ $json.body.submittedAt }}",
              "type": "string"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        -480,
        608
      ],
      "id": "f1b14fe9-1a67-449f-98bd-33cee6756764",
      "name": "Prepare Messages"
    }
  ],
  "connections": {
    "Receive Leads": {
      "main": [
        [
          {
            "node": "Prepare Messages",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update database": {
      "main": [
        [
          {
            "node": "Update customer message recieved",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update customer message recieved": {
      "main": [
        [
          {
            "node": "Inform Owner New Lead",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Prepare Messages": {
      "main": [
        [
          {
            "node": "Update database",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "active": true,
  "settings": {
    "executionOrder": "v1",
    "binaryMode": "separate"
  },
  "versionId": "0b115908-d949-4bb9-b6bd-4c87def382a9",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "id": "PQq7mkLvgSUCDseZ",
  "tags": []
}