{
  "name": "Handle clinic WhatsApp support with GPT-4o-mini, Pinecone RAG and Gmail alerts",
  "nodes": [
    {
      "id": "a1bb9718-a390-4b5f-8534-b8a973ce8695",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -3104,
        1984
      ]
    },
    {
      "id": "33e9808c-510f-4b1c-883e-f0a569248ab7",
      "name": "Append or update slot",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -2496,
        1696
      ]
    },
    {
      "id": "fdd67b6a-4301-4fff-bf04-5fd448f768db",
      "name": "Get lead",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        -2704,
        1888
      ]
    },
    {
      "id": "a96ea4f0-f1c0-42c3-813b-7fc6ac28ac0d",
      "name": "Append or update lead",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -2496,
        1888
      ]
    },
    {
      "id": "8bf64824-9d63-4c35-a9ff-0a23fd927bb7",
      "name": "Get human call",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        -2704,
        2064
      ]
    },
    {
      "id": "aa6042af-187c-4326-bfe5-d46e783acdfa",
      "name": "Append or update human call",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -2496,
        2064
      ]
    },
    {
      "id": "9f4c7fec-7444-4b95-aa2c-0cfc70903c1c",
      "name": "Get human appointment",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        -2688,
        2240
      ]
    },
    {
      "id": "9ae86536-5815-4b76-bc4d-e1371866bcda",
      "name": "Append or update appointment",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -2496,
        2240
      ]
    },
    {
      "id": "7685907b-6ffe-43f2-8963-eac68e4ff6f4",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -3248,
        1456
      ],
      "parameters": {
        "width": 1296,
        "height": 1168,
        "content": "## SENDING new rows to google sheet"
      }
    },
    {
      "id": "5577ae1c-5d66-4905-8fa3-71d4d7d2e283",
      "name": "Booked Appointment",
      "type": "n8n-nodes-base.dataTableTool",
      "position": [
        -864,
        880
      ]
    },
    {
      "id": "1e612891-e43a-4153-8098-22f0326a3883",
      "name": "AI Summarizer1",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        128,
        1264
      ]
    },
    {
      "id": "c0e92bbc-42cb-4a40-b403-27150e290bb2",
      "name": "Check Appointment1",
      "type": "n8n-nodes-base.if",
      "position": [
        304,
        352
      ]
    },
    {
      "id": "98e8a42a-9e2c-4468-87f4-8f7b441a94d3",
      "name": "AI Data Extractor",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -208,
        352
      ]
    },
    {
      "id": "56670131-4402-4ae7-ad14-22f67064e4b6",
      "name": "Send via WhatsApp",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -80,
        48
      ]
    },
    {
      "id": "44b6b15f-d026-4710-8e2a-0878df5a6aa6",
      "name": "Pinecone Vector Store",
      "type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
      "position": [
        -1328,
        2016
      ]
    },
    {
      "id": "4bdb5738-0c36-40cb-ae81-315d54320894",
      "name": "Default Data Loader",
      "type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
      "position": [
        -1168,
        2240
      ]
    },
    {
      "id": "d31374e1-7546-4dbb-8df8-50e88ae64338",
      "name": "Recursive Character Text Splitter",
      "type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
      "position": [
        -1184,
        2448
      ]
    },
    {
      "id": "1d149211-15e0-4925-aeb7-5a946fbe24ce",
      "name": "Get a document",
      "type": "n8n-nodes-base.googleDocs",
      "position": [
        -1552,
        2016
      ]
    },
    {
      "id": "07700abc-c2bd-44a1-8188-3d51a4022d9e",
      "name": "When clicking ‘Execute workflow’",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -1744,
        2016
      ]
    },
    {
      "id": "80e81e5e-e2f0-4bbc-80dc-02dbf0b2bca4",
      "name": "Embeddings OpenAI",
      "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
      "position": [
        -1504,
        2256
      ]
    },
    {
      "id": "ffa2a0af-0af3-4466-a009-2ab4522bb72e",
      "name": "Vector Store Tool",
      "type": "@n8n/n8n-nodes-langchain.toolVectorStore",
      "position": [
        -1248,
        976
      ]
    },
    {
      "id": "80bd0f37-5df9-4430-adb8-253585287dbb",
      "name": "Pinecone Vector Store (Retrieval)",
      "type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
      "position": [
        -1344,
        1152
      ]
    },
    {
      "id": "e60712a2-3949-4719-8ac1-a4b218f1f192",
      "name": "Embeddings OpenAI1",
      "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
      "position": [
        -1280,
        1376
      ]
    },
    {
      "id": "6b947bca-a0ec-486e-b483-f9e239987032",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1888,
        1952
      ],
      "parameters": {
        "width": 1024,
        "height": 656,
        "content": "## RAG System\n"
      }
    },
    {
      "id": "e78bf1f5-33f0-409a-901d-d7f8257e32ae",
      "name": "Verify • WA (hub.challenge)",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        -3824,
        272
      ]
    },
    {
      "id": "e13b4e56-2078-4a94-8b6a-c3e4cd1080f5",
      "name": "filter text messages",
      "type": "n8n-nodes-base.if",
      "position": [
        -3136,
        256
      ]
    },
    {
      "id": "f43e83f8-161b-4231-9dbc-79962676b2d5",
      "name": "If Audio",
      "type": "n8n-nodes-base.if",
      "position": [
        -3552,
        464
      ]
    },
    {
      "id": "13e1d14a-d5ed-4d42-b437-ff3de78ed653",
      "name": "Get Audio",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -3328,
        448
      ]
    },
    {
      "id": "8e96d4bb-2210-44c6-a28d-6bcb780bf1f9",
      "name": "Download Audio",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -3136,
        448
      ]
    },
    {
      "id": "1da24395-e5e2-4b21-8629-11a63baab66f",
      "name": "Transcribe Audio",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        -2928,
        448
      ]
    },
    {
      "id": "1ebf7b18-abb1-44cf-8638-36dca9cf28c5",
      "name": "If Image",
      "type": "n8n-nodes-base.if",
      "position": [
        -3536,
        704
      ]
    },
    {
      "id": "2105b13a-d511-4626-bc32-019d94e63749",
      "name": "If Video/PDF",
      "type": "n8n-nodes-base.if",
      "position": [
        -3520,
        880
      ]
    },
    {
      "id": "0d717c38-68da-47a7-a79f-7caac828e8aa",
      "name": "Get Image",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -3296,
        688
      ]
    },
    {
      "id": "1f019d11-f137-4fce-983e-8940de919d2b",
      "name": "Download Image",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -3072,
        688
      ]
    },
    {
      "id": "4c2cf8bd-065a-4320-8e79-770d7cc9e4c2",
      "name": "Get file",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -3296,
        864
      ]
    },
    {
      "id": "b6ebf3af-7914-4962-84d5-a883507b3111",
      "name": "Download file",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -3088,
        864
      ]
    },
    {
      "id": "2d8c8b15-7149-4904-8368-b2c04423001b",
      "name": "Prepare Email With Attachment",
      "type": "n8n-nodes-base.code",
      "position": [
        -2864,
        864
      ]
    },
    {
      "id": "f197f696-3c15-4bdf-aa64-15a87523b055",
      "name": "Send Email with attachment",
      "type": "n8n-nodes-base.gmail",
      "position": [
        -2640,
        864
      ]
    },
    {
      "id": "49ed334f-d0dd-43ac-90aa-0ad08d9f6ead",
      "name": "Edit Fields",
      "type": "n8n-nodes-base.set",
      "position": [
        -2640,
        688
      ]
    },
    {
      "id": "4055776e-6283-472a-bfbc-374ad20cc555",
      "name": "Analyze image",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        -2848,
        688
      ]
    },
    {
      "id": "98fa0d1d-cea9-4f2f-a8dc-4cd997ebb1ce",
      "name": "Prepare Text Data",
      "type": "n8n-nodes-base.code",
      "position": [
        -2112,
        576
      ]
    },
    {
      "id": "4f37fbd4-21f2-4f31-ae58-8774cf8c21bc",
      "name": "Insert Row Memory",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        -1920,
        576
      ]
    },
    {
      "id": "3ed7200b-b2d4-490c-b26d-92fbebc6c607",
      "name": "Get History",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        -1728,
        576
      ]
    },
    {
      "id": "5f0569e7-dde9-41ed-9b16-544a7b7013b8",
      "name": "Format Context",
      "type": "n8n-nodes-base.code",
      "position": [
        -1360,
        576
      ]
    },
    {
      "id": "ac272c74-a855-4a88-ae47-71b12ef39ab2",
      "name": "Main AI Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -1120,
        576
      ]
    },
    {
      "id": "7ff93428-5292-47ec-8084-c56bd2ccd6ec",
      "name": "Simple Memory",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        -1264,
        784
      ]
    },
    {
      "id": "bc33c7ae-22a5-417f-bc02-e4e59cc96eb6",
      "name": "save appointment - different service",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        1024,
        320
      ]
    },
    {
      "id": "96690897-ea79-4060-b288-f532b516a0af",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -4688,
        96
      ],
      "parameters": {
        "width": 480,
        "height": 704,
        "content": "## 🏥🤖 Medical Clinic WhatsApp Agent + CRM Sync\n\nThis workflow receives WhatsApp Cloud API messages via a Webhook and processes them based on message type (📝 Text / 🎙️ Audio / 🖼️ Image / 📎 Document).  "
      }
    },
    {
      "id": "e5d403fa-47d3-4d8f-a4f5-96c7feb21782",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -4016,
        48
      ],
      "parameters": {
        "width": 400,
        "height": 208,
        "content": "## Section 1 — Webhook & Verification\nReceives WhatsApp webhooks, responds to `hub.challenge` verification, and routes incoming messages by type.\n"
      }
    },
    {
      "id": "ad430754-6c6a-4838-ad0e-52b3d367977d",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -368,
        -256
      ],
      "parameters": {
        "width": 1552,
        "height": 752,
        "content": "## Section 5 — Extraction + Appointment Save\n\n- **AI Data Extractor**: reads the agent output and extracts strict JSON fields (date/day/time/service, booking vs reschedule, needs_human, lead_category)"
      }
    },
    {
      "id": "82315f3e-7edb-4ece-a709-2dc2b12782ac",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -384,
        736
      ],
      "parameters": {
        "width": 1568,
        "height": 736,
        "content": "## Section 6 — Leads + Human Escalation + Logging\n\n- **Get leads**: fetches existing lead rows for this phone to prevent duplicates.\n- **Check if Lead**: decides if a new lead should be created (based"
      }
    },
    {
      "id": "378909c2-d5e4-42eb-9272-07885946c4c3",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2336,
        320
      ],
      "parameters": {
        "width": 1152,
        "height": 400,
        "content": "## Section 3 — Memory & Context Builder\n\n- **Prepare Text Data (Code):** merges message sources into `finalText` (voice → image → text) + adds `phone`, `source`, `timestamp`.\n- **Insert Row Memory (Da"
      }
    },
    {
      "id": "323bf31d-8d4d-486a-b5b9-0e2934be1f2c",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -3888,
        1456
      ],
      "parameters": {
        "width": 624,
        "height": 240,
        "content": "## Section 7 — CRM Sync to Google Sheets\nScheduled job that syncs n8n Data Tables (slots/leads/human/appointments) into a Google Sheets CRM every minute.\n\nFollow this like for the google sheets sheet:"
      }
    },
    {
      "id": "bd14901c-b388-48b7-9d23-229494a98d78",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -3584,
        -96
      ],
      "parameters": {
        "width": 1088,
        "height": 1152,
        "content": "## Section 2 — Media Handling (Audio / Image / File)\nFetches media metadata from Graph API, downloads files, transcribes audio, analyzes images, and emails staff when a document/PDF is received.\n\n- De"
      }
    },
    {
      "id": "fe6c6619-55d4-4ad5-8eb1-2f6bfb1816da",
      "name": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -848,
        1952
      ],
      "parameters": {
        "width": 400,
        "height": 192,
        "content": "## Section 8 — RAG Knowledge Base (Manual Run)\nLoads a Google Doc, splits it into chunks, generates embeddings, and inserts them into Pinecone for retrieval (RAG).\n"
      }
    },
    {
      "id": "d4396a87-8377-4f3f-9628-791ed648e6f4",
      "name": "Sticky Note12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1952,
        800
      ],
      "parameters": {
        "width": 624,
        "height": 416,
        "content": "## Section 4 — AI Agent + Tools (RAG + Appointments + Memory)\n\n- **OpenAI Chat Model**: the LLM that powers the agent responses.\n- **Main AI Agent**: orchestrates the conversation, enforces rules, and"
      }
    },
    {
      "id": "da9b02bf-731c-40aa-a518-d3cef220f116",
      "name": "WhatsApp Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -4096,
        528
      ]
    },
    {
      "id": "c2e8fd84-9286-4f9e-8387-910e400f96d7",
      "name": "Get only users appointment",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        -1520,
        576
      ]
    },
    {
      "id": "a436cab9-3496-4c75-8943-2b48df24c9a9",
      "name": "Get leads",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        -320,
        1280
      ]
    },
    {
      "id": "75465bfb-f042-4d82-bf84-a4b316188926",
      "name": "Send Email Notification If Human is called",
      "type": "n8n-nodes-base.gmail",
      "position": [
        176,
        1072
      ]
    },
    {
      "id": "fd2b5e7e-fed0-4157-94c4-f2c92fe324f5",
      "name": "Add row for Human Call",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        384,
        1072
      ]
    },
    {
      "id": "f7b05031-28df-4e57-8974-a79adbe55168",
      "name": "If Appointment is ready",
      "type": "n8n-nodes-base.if",
      "position": [
        752,
        336
      ]
    },
    {
      "id": "a7599be1-1a29-4fe8-b051-adb3b4792450",
      "name": "save appointment - same service",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        592,
        336
      ]
    },
    {
      "id": "3de13584-3543-4ffc-9d3d-8a07bb9c0180",
      "name": "Check Human is called",
      "type": "n8n-nodes-base.if",
      "position": [
        -48,
        1088
      ]
    },
    {
      "id": "a903f878-9619-4f5e-8b6a-cd2d5cd6dd81",
      "name": "Check if Lead",
      "type": "n8n-nodes-base.if",
      "position": [
        -112,
        1280
      ]
    },
    {
      "id": "8b4f5ac0-4358-47df-a009-7f7c14c219a0",
      "name": "Insert Lead",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        624,
        1264
      ]
    },
    {
      "id": "314743b6-dd00-46e6-b7bc-25f5f994312b",
      "name": "Update Row",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        -80,
        192
      ]
    },
    {
      "id": "d514e95e-b150-4291-8a6c-f93abfcb871a",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -704,
        1232
      ]
    },
    {
      "id": "2c70c555-a008-4e5b-a955-5ddd78ffd054",
      "name": "Output Format Text",
      "type": "n8n-nodes-base.code",
      "position": [
        80,
        352
      ]
    },
    {
      "id": "06ff90e2-b5bd-46aa-9d31-78bed0257dba",
      "name": "Format output",
      "type": "n8n-nodes-base.code",
      "position": [
        432,
        1264
      ]
    },
    {
      "id": "505865d1-a9bd-40a9-90bb-246de0e44704",
      "name": "Get slots",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        -2704,
        1696
      ]
    }
  ],
  "connections": {
    "Get file": {
      "main": [
        [
          {
            "node": "Download file",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get lead": {
      "main": [
        [
          {
            "node": "Append or update lead",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If Audio": {
      "main": [
        [
          {
            "node": "Get Audio",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If Image": {
      "main": [
        [
          {
            "node": "Get Image",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Audio": {
      "main": [
        [
          {
            "node": "Download Audio",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Image": {
      "main": [
        [
          {
            "node": "Download Image",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get leads": {
      "main": [
        [
          {
            "node": "Check if Lead",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get slots": {
      "main": [
        [
          {
            "node": "Append or update slot",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Edit Fields": {
      "main": [
        [
          {
            "node": "Prepare Text Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get History": {
      "main": [
        [
          {
            "node": "Get only users appointment",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If Video/PDF": {
      "main": [
        [
          {
            "node": "Get file",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Analyze image": {
      "main": [
        [
          {
            "node": "Edit Fields",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check if Lead": {
      "main": [
        [
          {
            "node": "AI Summarizer1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download file": {
      "main": [
        [
          {
            "node": "Prepare Email With Attachment",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Format output": {
      "main": [
        [
          {
            "node": "Insert Lead",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Main AI Agent": {
      "main": [
        [
          {
            "node": "Send via WhatsApp",
            "type": "main",
            "index": 0
          },
          {
            "node": "Update Row",
            "type": "main",
            "index": 0
          },
          {
            "node": "AI Data Extractor",
            "type": "main",
            "index": 0
          },
          {
            "node": "Get leads",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Simple Memory": {
      "ai_memory": [
        [
          {
            "node": "Main AI Agent",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "AI Summarizer1": {
      "main": [
        [
          {
            "node": "Format output",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download Audio": {
      "main": [
        [
          {
            "node": "Transcribe Audio",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download Image": {
      "main": [
        [
          {
            "node": "Analyze image",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Format Context": {
      "main": [
        [
          {
            "node": "Main AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get a document": {
      "main": [
        [
          {
            "node": "Pinecone Vector Store",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get human call": {
      "main": [
        [
          {
            "node": "Append or update human call",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Get slots",
            "type": "main",
            "index": 0
          },
          {
            "node": "Get lead",
            "type": "main",
            "index": 0
          },
          {
            "node": "Get human call",
            "type": "main",
            "index": 0
          },
          {
            "node": "Get human appointment",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Transcribe Audio": {
      "main": [
        [
          {
            "node": "Prepare Text Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "WhatsApp Webhook": {
      "main": [
        [
          {
            "node": "Verify • WA (hub.challenge)",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "If Audio",
            "type": "main",
            "index": 0
          },
          {
            "node": "filter text messages",
            "type": "main",
            "index": 0
          },
          {
            "node": "If Image",
            "type": "main",
            "index": 0
          },
          {
            "node": "If Video/PDF",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI Data Extractor": {
      "main": [
        [
          {
            "node": "Output Format Text",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Embeddings OpenAI": {
      "ai_embedding": [
        [
          {
            "node": "Pinecone Vector Store",
            "type": "ai_embedding",
            "index": 0
          }
        ]
      ]
    },
    "Insert Row Memory": {
      "main": [
        [
          {
            "node": "Get History",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Summarizer1",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "AI Data Extractor",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "Main AI Agent",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "Vector Store Tool",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Prepare Text Data": {
      "main": [
        [
          {
            "node": "Insert Row Memory",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Vector Store Tool": {
      "ai_tool": [
        [
          {
            "node": "Main AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Booked Appointment": {
      "ai_tool": [
        [
          {
            "node": "Main AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Check Appointment1": {
      "main": [
        [
          {
            "node": "save appointment - same service",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Embeddings OpenAI1": {
      "ai_embedding": [
        [
          {
            "node": "Pinecone Vector Store (Retrieval)",
            "type": "ai_embedding",
            "index": 0
          }
        ]
      ]
    },
    "Output Format Text": {
      "main": [
        [
          {
            "node": "Check Appointment1",
            "type": "main",
            "index": 0
          },
          {
            "node": "Check Human is called",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Default Data Loader": {
      "ai_document": [
        [
          {
            "node": "Pinecone Vector Store",
            "type": "ai_document",
            "index": 0
          }
        ]
      ]
    },
    "filter text messages": {
      "main": [
        [
          {
            "node": "Prepare Text Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check Human is called": {
      "main": [
        [
          {
            "node": "Send Email Notification If Human is called",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get human appointment": {
      "main": [
        [
          {
            "node": "Append or update appointment",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If Appointment is ready": {
      "main": [
        [
          {
            "node": "save appointment - different service",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get only users appointment": {
      "main": [
        [
          {
            "node": "Format Context",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Prepare Email With Attachment": {
      "main": [
        [
          {
            "node": "Send Email with attachment",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "save appointment - same service": {
      "main": [
        [
          {
            "node": "If Appointment is ready",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Pinecone Vector Store (Retrieval)": {
      "ai_vectorStore": [
        [
          {
            "node": "Vector Store Tool",
            "type": "ai_vectorStore",
            "index": 0
          }
        ]
      ]
    },
    "Recursive Character Text Splitter": {
      "ai_textSplitter": [
        [
          {
            "node": "Default Data Loader",
            "type": "ai_textSplitter",
            "index": 0
          }
        ]
      ]
    },
    "When clicking ‘Execute workflow’": {
      "main": [
        [
          {
            "node": "Get a document",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send Email Notification If Human is called": {
      "main": [
        [
          {
            "node": "Add row for Human Call",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}