{
  "name": "Qualify insurance leads using Vapi, GPT-4 proposals and Airtable",
  "nodes": [
    {
      "id": "a02b2c97-e7d1-4315-afec-dd4228f8b15a",
      "name": "On form submission",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        -1424,
        -704
      ]
    },
    {
      "id": "9127768b-f7ae-469c-8437-971c58ecf614",
      "name": "Create a record",
      "type": "n8n-nodes-base.airtable",
      "position": [
        -1136,
        -704
      ]
    },
    {
      "id": "0e4ef931-ae4e-4647-868c-d0c6e3b46cd6",
      "name": "Vapi call",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -800,
        -704
      ]
    },
    {
      "id": "1e838f66-e4fa-46e5-82b2-133aeb2da118",
      "name": "Post call",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -1648,
        -192
      ]
    },
    {
      "id": "12df5994-b37f-416d-9365-a2efef290d54",
      "name": "Is Qualified ?",
      "type": "n8n-nodes-base.if",
      "position": [
        -1232,
        -192
      ]
    },
    {
      "id": "455936e5-9174-4298-a101-eaea08aa27d0",
      "name": "Update record1",
      "type": "n8n-nodes-base.airtable",
      "position": [
        -1024,
        -256
      ]
    },
    {
      "id": "e230a822-80be-45e3-b129-8de107d43c85",
      "name": "Send a message",
      "type": "n8n-nodes-base.gmail",
      "position": [
        -464,
        -256
      ]
    },
    {
      "id": "d44d2932-c1c1-4abf-94b9-07e2c2ca34e2",
      "name": "Send a message1",
      "type": "n8n-nodes-base.slack",
      "position": [
        -656,
        112
      ]
    },
    {
      "id": "6602b532-0c3a-4cb1-bded-a341f9534f64",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1488,
        -848
      ],
      "parameters": {
        "width": 864,
        "height": 304,
        "content": "## Lead Ingestion & Voice Trigger\nCaptures the lead from the form submitted then logs the data  in Airtable  followed by  the  phone call via Vapi."
      }
    },
    {
      "id": "3b3ad935-f422-4c66-aed9-f468cb7ac194",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1712,
        -320
      ],
      "parameters": {
        "width": 592,
        "height": 272,
        "content": "## Call Processing & Logic\nReceives the call summary and entity data from Vapi. It determines if the lead provided enough information to be considered as  \"Qualified.\""
      }
    },
    {
      "id": "5c7fa027-2707-4da0-9fc4-5252e9ffc4d6",
      "name": "Prepare Blueprint",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        -816,
        -256
      ]
    },
    {
      "id": "bf44a008-0f2b-4b6b-8d82-eb965a6804ae",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2496,
        -880
      ],
      "parameters": {
        "width": 656,
        "height": 880,
        "content": "## Qualify Insurance Leads using Vapi, GPT-4 Proposals and Airtable\n## What this workflow does\n\nThis workflow automates the \"speed-to-lead\" process for insurance brokers. When a prospective client sub"
      }
    },
    {
      "id": "0044ea00-671d-44ef-b7bc-948d5c43211f",
      "name": "Error Handling",
      "type": "n8n-nodes-base.slack",
      "position": [
        -160,
        -160
      ]
    },
    {
      "id": "93786273-3ce2-4ed7-b60b-38a04219f3f7",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1040,
        -384
      ],
      "parameters": {
        "width": 752,
        "height": 304,
        "content": "## Qualified Lead Actions \nIf the lead is  qualified,  the CRM is updated by qualifying the person and  GPT-4 is used to draft a custom insurance blueprint. This blueprint is sent to the qualified lea"
      }
    },
    {
      "id": "2bfc95eb-8abc-4156-8686-447eeb4cc4e4",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1040,
        0
      ],
      "parameters": {
        "width": 592,
        "height": 240,
        "content": "## Unqualified Lead Actions\nIf the lead is unqualified the CRM updates and alerts the team via Slack with the reason for disqualification."
      }
    },
    {
      "id": "cf5c856f-2ab4-4282-93d4-f76317fc4474",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -192,
        -16
      ],
      "parameters": {
        "width": 304,
        "height": 128,
        "content": "## Error Handling\nIf the email fails to send, this alerts the team via Slack with the generated proposal text so it can be sent manually."
      }
    },
    {
      "id": "6e792749-4302-494f-979e-cea409a3f17a",
      "name": "Update record",
      "type": "n8n-nodes-base.airtable",
      "position": [
        -1008,
        112
      ]
    },
    {
      "id": "11fd4232-d010-4a82-8441-87d931a87a5c",
      "name": "Clean data",
      "type": "n8n-nodes-base.set",
      "position": [
        -1440,
        -192
      ]
    }
  ],
  "connections": {
    "Post call": {
      "main": [
        [
          {
            "node": "Clean data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Clean data": {
      "main": [
        [
          {
            "node": "Is Qualified ?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update record": {
      "main": [
        [
          {
            "node": "Send a message1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Is Qualified ?": {
      "main": [
        [
          {
            "node": "Update record1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Update record",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send a message": {
      "main": [
        [],
        [
          {
            "node": "Error Handling",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update record1": {
      "main": [
        [
          {
            "node": "Prepare Blueprint",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create a record": {
      "main": [
        [
          {
            "node": "Vapi call",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Prepare Blueprint": {
      "main": [
        [
          {
            "node": "Send a message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "On form submission": {
      "main": [
        [
          {
            "node": "Create a record",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}