Skip to content

Commit 568958d

Browse files
committed
feat(appointment-scheduling): initial commit
1 parent d9f31a0 commit 568958d

File tree

2 files changed

+152
-0
lines changed

2 files changed

+152
-0
lines changed

fern/docs.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,9 @@ navigation:
115115
- page: Customer support hotline
116116
path: examples/customer-support-hotline.mdx
117117
icon: fa-light fa-phone-volume
118+
- page: Appointment scheduling
119+
path: examples/appointment-scheduling.mdx
120+
icon: fa-light fa-calendar-check
118121
- page: Outbound sales
119122
path: examples/outbound-sales.mdx
120123
icon: fa-light fa-money-bill-wave
Lines changed: 149 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,149 @@
1+
---
2+
title: Appointment Scheduling Agent 📅
3+
subtitle: Build an AI agent using workflows to schedule appointments via phone calls with Google Calendar integration.
4+
slug: examples/appointment-scheduling
5+
description: A comprehensive guide to building a voice AI agent that handles appointment scheduling with Google Calendar integration.
6+
---
7+
8+
By following this example, you'll learn how to:
9+
10+
* Create a voice AI agent using workflows to handle inbound appointment scheduling calls.
11+
* Build custom tools to check calendar availability and book appointments.
12+
* Integrate with Google Calendar for real-time scheduling.
13+
* Create an automated test suite to ensure your scheduling agent works correctly.
14+
15+
## Prerequisites
16+
17+
* A [Vapi account](https://dashboard.vapi.ai/).
18+
* A Google Account (for Google Calendar integration).
19+
20+
---
21+
22+
## 1. Configuring Google Calendar Integration
23+
24+
<Steps>
25+
<Step title="Open the Vapi Dashboard">
26+
Go to [dashboard.vapi.ai](https://dashboard.vapi.ai) and log in to your account.
27+
</Step>
28+
<Step title="Navigate to the Workflows section">
29+
Click `Workflows` in the left sidebar.
30+
</Step>
31+
<Step title="Create a new workflow">
32+
- Click `Create Workflow`.
33+
- Change workflow name to `Appointment Scheduling Workflow`.
34+
</Step>
35+
<Step title="Configure your workflow">
36+
- Update first step to
37+
</Step>
38+
</Steps>
39+
40+
<video autoPlay loop muted src="../static/videos/appointment-scheduling/create-workflow.mp4" type="video/mp4" style={{ aspectRatio: '16 / 9', width: '100%' }} />
41+
42+
---
43+
44+
## 2. Creating Tools for Use in Workflows
45+
46+
<Steps>
47+
<Step title="Navigate to Tools">
48+
Open your [dashboard.vapi.ai](https://dashboard.vapi.ai) and click `Tools` in the left sidebar.
49+
</Step>
50+
<Step title="Create the availability checking tool">
51+
- Click `Create Tool`.
52+
- Select `Function` as your tool type.
53+
- Change tool name to `check_availability`.
54+
- Add the following function description:
55+
56+
```txt title="Function Description" wordWrap
57+
Check calendar availability for a specific date and time range. Use this before attempting to book any appointment.
58+
```
59+
60+
- Save the tool.
61+
</Step>
62+
<Step title="Create the haircut appointment booking tool">
63+
- Click `Create Tool`.
64+
- Select `Function` as your tool type.
65+
- Change tool name to `book_appointment`.
66+
- Add the following function description:
67+
68+
```txt title="Function Description" wordWrap
69+
Book an appointment after confirming availability. Only use this after checking availability first.
70+
```
71+
72+
- Save the tool.
73+
</Step>
74+
<Step title="Create the consult appointment booking tool">
75+
- Click `Create Tool`.
76+
- Select `Function` as your tool type.
77+
- Change tool name to `book_appointment`.
78+
- Add the following function description:
79+
80+
```txt title="Function Description" wordWrap
81+
Book an appointment after confirming availability. Only use this after checking availability first.
82+
```
83+
84+
- Save the tool.
85+
</Step>
86+
</Steps>
87+
88+
<video autoPlay loop muted src="../static/videos/appointment-scheduling/create-tools.mp4" type="video/mp4" style={{ aspectRatio: '16 / 9', width: '100%' }} />
89+
90+
---
91+
92+
## 3. Creating an Appointment Scheduling Workflow
93+
94+
<Steps>
95+
<Step title="Open the Vapi Dashboard">
96+
Go to [dashboard.vapi.ai](https://dashboard.vapi.ai) and log in to your account.
97+
</Step>
98+
<Step title="Navigate to the Workflows section">
99+
Click `Workflows` in the left sidebar.
100+
</Step>
101+
<Step title="Create a new workflow">
102+
- Click `Create Workflow`.
103+
- Change workflow name to `Appointment Scheduling Workflow`.
104+
</Step>
105+
<Step title="Configure your workflow">
106+
- Update first step to
107+
</Step>
108+
</Steps>
109+
110+
<video autoPlay loop muted src="../static/videos/appointment-scheduling/create-workflow.mp4" type="video/mp4" style={{ aspectRatio: '16 / 9', width: '100%' }} />
111+
112+
---
113+
114+
## 4. Assigning a phone number to a workflow
115+
116+
<Steps>
117+
<Step title="Navigate to Phone Numbers">
118+
Open your [dashboard.vapi.ai](https://dashboard.vapi.ai) and click `Phone Numbers` in the left sidebar.
119+
</Step>
120+
<Step title="Create a new phone number">
121+
- Click `Create Phone Number`.
122+
- Stick with `Free Vapi Number`.
123+
- Enter your preferred area code (e.g. `415`).
124+
</Step>
125+
<Step title="Configure the phone number">
126+
- Set the `Phone Number Name` to `Appointment Scheduling Line`.
127+
- Under `Inbound Settings` find `Assistant` dropdown and select `Sophia` from the list.
128+
- Changes are saved automatically.
129+
</Step>
130+
</Steps>
131+
132+
<video autoPlay loop muted src="../static/videos/appointment-scheduling/assign-phone-number.mp4" type="video/mp4" style={{ aspectRatio: '16 / 9', width: '100%' }} />
133+
134+
---
135+
136+
## Next Steps
137+
138+
Congratulations! You've built a comprehensive appointment scheduling assistant that can handle inbound calls, check calendar availability, and book appointments with proper confirmation.
139+
140+
Consider reading the following guides to further enhance your assistant:
141+
142+
* [**GoHighLevel Integration**](https://docs.vapi.ai/tools/go-high-level) - Connect with GoHighLevel for advanced CRM and calendar management.
143+
* [**Google Calendar Integration**](https://docs.vapi.ai/tools/google-calendar) - Integrate directly with Google Calendar for real-time availability.
144+
* [**Knowledge Bases**](https://docs.vapi.ai/knowledge-base/) - Add FAQ capabilities for common scheduling questions.
145+
* [**Custom Keywords**](https://docs.vapi.ai/customization/custom-keywords) - Set up keywords for quick actions like "cancel" or "reschedule".
146+
147+
<Callout>
148+
Need help? Chat with the team on our [Discord](https://discord.com/invite/pUFNcf2WmH) or mention us on [X/Twitter](https://x.com/Vapi_AI).
149+
</Callout>

0 commit comments

Comments
 (0)