{
  "name": "Automated voice appointment booking with Vapi AI and Google Calendar",
  "nodes": [
    {
      "id": "30a2f5b7-b9b8-477d-817c-e180192646d7",
      "name": "1. CONFIGURATION (EDIT ME)",
      "type": "n8n-nodes-base.set",
      "position": [
        -448,
        96
      ]
    },
    {
      "id": "774e305d-252f-4d54-a057-19aeb642e42b",
      "name": "Webhook: Production URL = VAPI Server URL",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -688,
        96
      ]
    },
    {
      "id": "1f67cedc-9da7-4b7e-8286-6ee3358fd70a",
      "name": "Route by Tool Name",
      "type": "n8n-nodes-base.switch",
      "position": [
        -208,
        96
      ]
    },
    {
      "id": "ac181bae-191b-42a8-aedf-5ab53c040051",
      "name": "Calculate Potential Slots (do not change)",
      "type": "n8n-nodes-base.code",
      "position": [
        208,
        0
      ]
    },
    {
      "id": "8e2cf90f-9f15-478b-9c4b-acae5c6ee2c9",
      "name": "Filter for Available Slots (do not change)",
      "type": "n8n-nodes-base.code",
      "position": [
        432,
        0
      ]
    },
    {
      "id": "d14d093c-b468-454f-85a4-815c7b99c287",
      "name": "Respond with Available Times (do not change)",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        656,
        0
      ]
    },
    {
      "id": "7ea10fb1-8966-4bf3-ad42-ed3b52d41c66",
      "name": "I'm a note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        432,
        192
      ],
      "parameters": {
        "width": 348,
        "height": 396,
        "content": "This will get you going!\n\nNext level? Add:\n- SMS & Email Confirmations\n- Multilingual Support\n- In-depth Lead Qualification\n- Dynamic FAQ Answering\n- CRM Integration\n- Call Transferring\n- Rescheduling"
      }
    },
    {
      "id": "4f80f53f-c639-448d-ab87-5e58778efece",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -64,
        -288
      ],
      "parameters": {
        "width": null,
        "height": 272,
        "content": "## Edit Google Calendar nodes \n**1** Connect your Google calendar. Click: Credentials to connect with > Choose your credential OR Create new credential\n**2** Click: Calendar > From list > Choose your "
      }
    },
    {
      "id": "c52db039-40de-4458-aaf7-d3c770db190a",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -528,
        -224
      ],
      "parameters": {
        "width": 256,
        "height": 304,
        "content": "## Edit Fields\n(Using numbers, no text)\n**1.** Enter your timezone (e.g. \"America/New_York\" for EST, without quotes)\n**2.** Enter your work start hour and your work end hour (e.g. 8 for 8AM, 17 for 5P"
      }
    },
    {
      "id": "1f925858-22bb-4143-8a57-d37f10508858",
      "name": "3. Book Appointment in Calendar (EDIT ME)",
      "type": "n8n-nodes-base.googleCalendar",
      "position": [
        0,
        192
      ]
    },
    {
      "id": "d147ba98-9086-4ae0-b5c8-43e8cd2eb8ba",
      "name": "2. Get Calendar Events (EDIT ME)",
      "type": "n8n-nodes-base.googleCalendar",
      "position": [
        0,
        0
      ]
    },
    {
      "id": "4355474c-9edb-4a4f-891d-0a349c75dc43",
      "name": "Booking Confirmation (do not change)",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        208,
        192
      ]
    },
    {
      "id": "2f332449-141c-4d6f-926f-78281aea2920",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1792,
        -672
      ],
      "parameters": {
        "width": 896,
        "height": 2288,
        "content": "## What this template does\n\nConnect a Vapi AI voice agent to Google Calendar to capture contact details and auto-book appointments.\nThe agent asks for name, address, service type, and a preferred time"
      }
    }
  ],
  "connections": {
    "Route by Tool Name": {
      "main": [
        [
          {
            "node": "2. Get Calendar Events (EDIT ME)",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "3. Book Appointment in Calendar (EDIT ME)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1. CONFIGURATION (EDIT ME)": {
      "main": [
        [
          {
            "node": "Route by Tool Name",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2. Get Calendar Events (EDIT ME)": {
      "main": [
        [
          {
            "node": "Calculate Potential Slots (do not change)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "3. Book Appointment in Calendar (EDIT ME)": {
      "main": [
        [
          {
            "node": "Booking Confirmation (do not change)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Calculate Potential Slots (do not change)": {
      "main": [
        [
          {
            "node": "Filter for Available Slots (do not change)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Webhook: Production URL = VAPI Server URL": {
      "main": [
        [
          {
            "node": "1. CONFIGURATION (EDIT ME)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter for Available Slots (do not change)": {
      "main": [
        [
          {
            "node": "Respond with Available Times (do not change)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}