跳到导航

Acuity Scheduling

使用 webhook 工具在 Acuity Scheduling 中查看可用时间并预约。

使用以下 webhook 工具,接待员可以查看某种预约类型的可用时间,并将来电者预约到空闲时段。Acuity 会照常向客户发送确认邮件。

开始前准备

1

检查套餐

Acuity 仅在其最高级套餐(Premium,以前称为 Powerhouse)中提供 API 访问权限。其他套餐使用以下工具时会出现 403 错误。

2

获取 API 凭据

在 Acuity 中打开 Integrations,找到 API,然后复制 User ID 和 API Key。

3

创建授权标头

Acuity 使用 User ID 作为用户名,使用 API 密钥作为密码。在终端中对它们进行编码,并替换这两个占位符:

printf 'USER_ID:API_KEY' | base64

标头值为 Basic 加上输出结果。

请勿将 API 密钥粘贴到在线编码工具中。任何获得该密钥的人都可以读取和更改 预约及客户详细信息。

4

查找预约类型 ID

复制希望接待员预约的预约类型的直接预约链接。链接中 appointmentType= 后面的数字即为其 ID。以下工具会使用该 ID 替换 APPOINTMENT_TYPE_ID。

创建工具

对于每个工具,前往 Integrations,选择 Add integration,选择 Webhook Tool,并将 Assign to agents 设置为 Receptionist。

查看可用时间

字段值
Namecheck_acuity_availability
Description”列出某个日期的可用预约时间。在向来电者提供时间前使用此工具。“
MethodGET
URLhttps://acuityscheduling.com/api/v1/availability/times
Request HeadersAuthorization:Basic 加编码后的凭据
Query ParametersappointmentTypeID(数字,必填):「始终使用精确值 APPOINTMENT_TYPE_ID。」
date(字符串,必填):「要查询的日期,格式为 YYYY-MM-DD。」

预约

字段值
Namebook_acuity_appointment
Description”来电者选定时间后,将其预约到可用时段。请先与其确认日期和时间。“
MethodPOST
URLhttps://acuityscheduling.com/api/v1/appointments
Request HeadersAuthorization:Basic 加编码后的凭据
Body Parametersdatetime(字符串,必填):「所选时间,必须与 check_acuity_availability 返回的 time 值完全一致。」
appointmentTypeID(数字,必填):「始终使用精确值 APPOINTMENT_TYPE_ID。」
firstName(字符串,必填):「来电者的名字。」
lastName(字符串,必填):「来电者的姓氏。」
email(字符串,必填):「来电者的电子邮箱。请让对方逐个字母拼读。」
phone(字符串):「来电者的电话号码。」

在每个工具上选择 Enable,然后通过请求预约来测试接待员。预约会显示在 Acuity 日历中。

如需预约多种预约类型,请将两个工具中的「始终使用精确值」替换为列表, 例如:「30 分钟咨询使用 111,60 分钟服务使用 222。」

限制

  • Acuity 要求每个预约都提供电子邮箱地址,因此接待员会要求来电者逐个字母拼读邮箱地址。
  • 登记表答案会以列表形式发送,webhook 工具无法发送。预约备注只能由管理员预约设置,但这会跳过 Acuity 的可用时间检查,因此以上工具不会设置这两项内容。
  • 工具无法取消或重新安排预约。这些操作需要在 URL 中提供预约 ID。

故障排除

问题检查项
Acuity 返回 401使用冒号对 USER_ID:API_KEY 进行编码,并确保标头值以 Basic 和一个空格开头。
Acuity 返回 403套餐不包含 API 访问权限。
未返回任何时间检查预约类型 ID,以及该类型在该日期是否有可用时段。
预约因 not_available 失败该时间已被预约或不可用。请让接待员在预约前再次查看可用时间。
预约因缺少字段而失败账户可能要求提供电话号码。请在预约工具中将 phone 设为必填。