{
  "name": "AI-Powered WhatsApp Chatbot 🤖📅: Complete Booking Assistant with Gemini & Google",
  "nodes": [
    {
      "id": "fec9d00e-0a8a-4a1f-aafe-8b30055784b5",
      "name": "Update event",
      "type": "n8n-nodes-base.googleCalendarTool",
      "position": [
        720,
        704
      ]
    },
    {
      "id": "9f76daed-9757-4886-b3d5-890b456fcbe9",
      "name": "Delete event",
      "type": "n8n-nodes-base.googleCalendarTool",
      "position": [
        592,
        704
      ]
    },
    {
      "id": "9096fdfc-4787-4598-a6f5-a477f7ace15b",
      "name": "Create event",
      "type": "n8n-nodes-base.googleCalendarTool",
      "position": [
        720,
        864
      ]
    },
    {
      "id": "f6316b89-d476-4001-9c23-f5a7e618293d",
      "name": "Get events",
      "type": "n8n-nodes-base.googleCalendarTool",
      "position": [
        592,
        848
      ]
    },
    {
      "id": "8285ba3a-5dd8-4185-ab1f-32edb374309b",
      "name": "Add client",
      "type": "n8n-nodes-base.googleSheetsTool",
      "position": [
        448,
        704
      ]
    },
    {
      "id": "25c8ddac-69ac-4ea9-90ec-65e7070154d5",
      "name": "Workflow Error Handler",
      "type": "n8n-nodes-base.errorTrigger",
      "position": [
        -2160,
        112
      ]
    },
    {
      "id": "fc9ffa55-6a99-4ed4-af4b-d12fa4e9e277",
      "name": "Notify: Workflow Error",
      "type": "n8n-nodes-base.gmail",
      "position": [
        -1056,
        112
      ]
    },
    {
      "id": "87cc75dc-c025-42e8-bb43-7257a7542054",
      "name": "Virtual Assistant",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        272,
        432
      ]
    },
    {
      "id": "84fa4817-92d9-4968-a4cb-9047c1f79bfa",
      "name": "WhatsApp Trigger",
      "type": "n8n-nodes-base.whatsAppTrigger",
      "position": [
        -2176,
        992
      ]
    },
    {
      "id": "1983a56e-4ab6-4091-b324-25a22398ef16",
      "name": "Download Audio",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1504,
        992
      ]
    },
    {
      "id": "07b0371d-57d9-4753-ad9f-8ec1b94d2a28",
      "name": "Transcribe Audio",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        -1280,
        992
      ]
    },
    {
      "id": "d4d264be-f8a3-4938-b1e9-30e2531b174a",
      "name": "Fix mimeType for Audio",
      "type": "n8n-nodes-base.code",
      "position": [
        2912,
        64
      ]
    },
    {
      "id": "9bfbcdf4-1ef4-487e-b289-5a74f790e45e",
      "name": "Send message",
      "type": "n8n-nodes-base.whatsApp",
      "position": [
        2688,
        256
      ]
    },
    {
      "id": "2bedd51f-60a0-4a8e-96d7-e2a4c298b7b4",
      "name": "Send audio",
      "type": "n8n-nodes-base.whatsApp",
      "position": [
        3136,
        64
      ]
    },
    {
      "id": "1c7ea9ac-90f7-4095-be8c-b0a3d9904925",
      "name": "Audio",
      "type": "n8n-nodes-base.set",
      "position": [
        -1056,
        992
      ]
    },
    {
      "id": "a4e3d012-43fe-4a0b-8b4a-c10f7f184304",
      "name": "Not supported",
      "type": "n8n-nodes-base.whatsApp",
      "position": [
        -1728,
        1184
      ]
    },
    {
      "id": "424fe518-bc50-4b86-9c76-2715826e9248",
      "name": "Get Audio Url",
      "type": "n8n-nodes-base.whatsApp",
      "position": [
        -1728,
        992
      ]
    },
    {
      "id": "f5347cd5-9c13-4f76-a857-3875d956b886",
      "name": "Generate Audio Response",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        2688,
        64
      ]
    },
    {
      "id": "61b74351-ea96-48f1-90f8-8529dd220667",
      "name": "From audio to audio?",
      "type": "n8n-nodes-base.if",
      "position": [
        2288,
        176
      ]
    },
    {
      "id": "7b2865c2-a532-4f99-ad5a-a1eae456f0ba",
      "name": "Input type",
      "type": "n8n-nodes-base.switch",
      "position": [
        -1952,
        976
      ]
    },
    {
      "id": "d78be069-d111-4cc3-abda-8f69faebe232",
      "name": "Calculator",
      "type": "@n8n/n8n-nodes-langchain.toolCalculator",
      "position": [
        912,
        896
      ]
    },
    {
      "id": "98bf7e36-9fd9-4e35-bdaa-90749ccfc7ff",
      "name": "Send Email",
      "type": "n8n-nodes-base.gmailTool",
      "position": [
        1296,
        1152
      ]
    },
    {
      "id": "cf918a88-9029-488a-9a3d-fd28ebc45c0a",
      "name": "Escalation",
      "type": "n8n-nodes-base.whatsAppHitlTool",
      "position": [
        1360,
        912
      ]
    },
    {
      "id": "4bfdb216-a855-4ea0-a472-d3051525d199",
      "name": "New client",
      "type": "n8n-nodes-base.googleSheetsTool",
      "position": [
        448,
        848
      ]
    },
    {
      "id": "18e664b8-032c-48ba-89a6-e57f7404b5bb",
      "name": "Google Gemini Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        192,
        704
      ]
    },
    {
      "id": "ba2c4744-1188-4843-9998-9daf945380fd",
      "name": "Guardrails",
      "type": "@n8n/n8n-nodes-langchain.guardrails",
      "position": [
        -464,
        768
      ]
    },
    {
      "id": "73b085f8-a9cf-4303-b57b-cc8c330db2e5",
      "name": "Google Gemini Chat Model1",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        -528,
        1024
      ]
    },
    {
      "id": "96c7f79b-d17b-44b7-b626-e3d917514b38",
      "name": "Send message1",
      "type": "n8n-nodes-base.whatsApp",
      "position": [
        -176,
        1120
      ]
    },
    {
      "id": "24bc71fb-c49a-468a-8665-707aff2a08b2",
      "name": "When chat message received",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        -2160,
        480
      ]
    },
    {
      "id": "a7f4878a-e5be-4b64-81f0-d0f9d432cca0",
      "name": "Postgres Chat Memory",
      "type": "@n8n/n8n-nodes-langchain.memoryPostgresChat",
      "position": [
        320,
        704
      ]
    },
    {
      "id": "e91c8d86-3fc8-406a-9c2b-fd0d2656b8bd",
      "name": "Normalize",
      "type": "n8n-nodes-base.set",
      "position": [
        -736,
        768
      ]
    },
    {
      "id": "24f137f3-973b-4be8-a811-ab889f516c55",
      "name": "Switch",
      "type": "n8n-nodes-base.switch",
      "position": [
        1872,
        432
      ]
    },
    {
      "id": "839acb59-e122-4f64-aa6b-d24bcbb9d3d1",
      "name": "Escalation1",
      "type": "@n8n/n8n-nodes-langchain.chatHitlTool",
      "position": [
        1088,
        912
      ]
    },
    {
      "id": "c474e2dd-44c7-477d-8b66-24d196723a4d",
      "name": "Chat",
      "type": "@n8n/n8n-nodes-langchain.chat",
      "position": [
        2272,
        640
      ]
    },
    {
      "id": "77313555-74a2-452e-86a5-8580627314dd",
      "name": "Chat1",
      "type": "@n8n/n8n-nodes-langchain.chat",
      "position": [
        -176,
        944
      ]
    },
    {
      "id": "ba8be3a0-deb5-4452-9c04-5cabbdcaacc2",
      "name": "Message",
      "type": "n8n-nodes-base.set",
      "position": [
        -1056,
        800
      ]
    },
    {
      "id": "47783407-0d84-4172-9e19-589f3b1e9a61",
      "name": "From Chat",
      "type": "n8n-nodes-base.set",
      "position": [
        -1056,
        480
      ]
    },
    {
      "id": "f7e49b4c-5e99-424c-8429-7904e1c0520f",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2256,
        320
      ],
      "parameters": {
        "width": 1392,
        "height": 368,
        "content": "## STEP 1 - Chat Input\nMessage from chatbot"
      }
    },
    {
      "id": "ec999d01-a788-43f5-92c1-58414b37697b",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2256,
        720
      ],
      "parameters": {
        "width": 1392,
        "height": 656,
        "content": "## STEP 1 bis - WhatsApp Input\nMessage (text or audio with speech to text) from WhatsApp"
      }
    },
    {
      "id": "44f25d5d-3373-4007-b6e3-78c8c00f565c",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -832,
        320
      ],
      "parameters": {
        "width": 880,
        "height": 1056,
        "content": "## STEP 2  - Guardrails\n"
      }
    },
    {
      "id": "0c46b4c3-a6b6-4127-8163-3b8fec3d6bc1",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        96,
        320
      ],
      "parameters": {
        "width": 944,
        "height": 1056,
        "content": "## STEP 3  - AI Agent\n[Clone this sheet](https://docs.google.com/spreadsheets/d/1DM24yhANppmCu92D3St6GpMh2He7L2feizajN0aLDrU/edit?usp=sharing) for example of simple database"
      }
    },
    {
      "id": "d59bae7b-3ead-4218-808b-c20ae85cb857",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1072,
        784
      ],
      "parameters": {
        "width": 592,
        "height": 592,
        "content": "## STEP 3 bis - Escalation\nEscalation with Chatbot or WhatsApp (select one)"
      }
    },
    {
      "id": "a4e9a4c5-197c-4162-a3c4-af42e5fbadac",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2144,
        -16
      ],
      "parameters": {
        "width": 1264,
        "height": 496,
        "content": "## STEP 4 - WhatsApp Response"
      }
    },
    {
      "id": "5ec9105b-012c-4dfa-a04c-7296691f97ec",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2144,
        512
      ],
      "parameters": {
        "width": 1264,
        "height": 336,
        "content": "## STEP 4 bis - Chatbot Response\n"
      }
    },
    {
      "id": "d096f221-ab1c-41bb-b287-4d192eb77d7b",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2256,
        -656
      ],
      "parameters": {
        "width": 1392,
        "height": 560,
        "content": "## AI-Powered WhatsApp Chatbot\nThis workflow implements an **AI-powered WhatsApp booking assistant** for a hair salon. The system allows customers to **book, reschedule, or cancel appointments automat"
      }
    },
    {
      "id": "d8b42d4f-0e37-4b7d-98e1-87af9d4a4be1",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2256,
        -48
      ],
      "parameters": {
        "width": 1392,
        "height": 336,
        "content": "## STEP 5 - Error"
      }
    },
    {
      "id": "fabd4439-a9b1-4d7c-9242-30486c2c1363",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -816,
        -656
      ],
      "parameters": {
        "width": 736,
        "height": 736,
        "content": "## MY NEW YOUTUBE CHANNEL\n👉 [Subscribe to my new **YouTube channel**](https://youtube.com/@n3witalia). Here I’ll share videos and Shorts with practical tutorials and **FREE templates for n8n**.\n\n[![im"
      }
    }
  ],
  "connections": {
    "Audio": {
      "main": [
        [
          {
            "node": "Normalize",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Switch": {
      "main": [
        [
          {
            "node": "From audio to audio?",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Chat",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Message": {
      "main": [
        [
          {
            "node": "Normalize",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "From Chat": {
      "main": [
        [
          {
            "node": "Normalize",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Normalize": {
      "main": [
        [
          {
            "node": "Guardrails",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Add client": {
      "ai_tool": [
        [
          {
            "node": "Virtual Assistant",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Calculator": {
      "ai_tool": [
        [
          {
            "node": "Virtual Assistant",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Escalation": {
      "ai_tool": [
        []
      ]
    },
    "Get events": {
      "ai_tool": [
        [
          {
            "node": "Virtual Assistant",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Guardrails": {
      "main": [
        [
          {
            "node": "Virtual Assistant",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Chat1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Input type": {
      "main": [
        [
          {
            "node": "Message",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Get Audio Url",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Not supported",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "New client": {
      "ai_tool": [
        [
          {
            "node": "Virtual Assistant",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Send Email": {
      "ai_tool": [
        [
          {
            "node": "Escalation",
            "type": "ai_tool",
            "index": 0
          },
          {
            "node": "Escalation1",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Escalation1": {
      "ai_tool": [
        [
          {
            "node": "Virtual Assistant",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Create event": {
      "ai_tool": [
        [
          {
            "node": "Virtual Assistant",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Delete event": {
      "ai_tool": [
        [
          {
            "node": "Virtual Assistant",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Update event": {
      "ai_tool": [
        [
          {
            "node": "Virtual Assistant",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Get Audio Url": {
      "main": [
        [
          {
            "node": "Download Audio",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download Audio": {
      "main": [
        [
          {
            "node": "Transcribe Audio",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Transcribe Audio": {
      "main": [
        [
          {
            "node": "Audio",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "WhatsApp Trigger": {
      "main": [
        [
          {
            "node": "Input type",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Virtual Assistant": {
      "main": [
        [
          {
            "node": "Switch",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "From audio to audio?": {
      "main": [
        [
          {
            "node": "Generate Audio Response",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Send message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Postgres Chat Memory": {
      "ai_memory": [
        [
          {
            "node": "Virtual Assistant",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "Fix mimeType for Audio": {
      "main": [
        [
          {
            "node": "Send audio",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Workflow Error Handler": {
      "main": [
        [
          {
            "node": "Notify: Workflow Error",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate Audio Response": {
      "main": [
        [
          {
            "node": "Fix mimeType for Audio",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Virtual Assistant",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini Chat Model1": {
      "ai_languageModel": [
        [
          {
            "node": "Guardrails",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "When chat message received": {
      "main": [
        [
          {
            "node": "From Chat",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}