Acuity Scheduling
Book Acuity Appointment
Books an appointment in Acuity Scheduling for a customer.
Unverified
What the model is told
Book an appointment. Check availability first and confirm the time, name, email and phone number with the customer before booking. datetime must be a time returned by the availability check. Acuity emails the customer a confirmation. Tell them the booking is made, or that the slot is no longer available and offer another time.
Request
POSThttps://acuityscheduling.com/api/v1/appointments
Headers
Content-Typeapplication/jsonAuthorizationBasic YOUR_BASE64_ACUITY_USER_ID_AND_API_KEY
Body
{
"datetime": "{{datetime}}",
"appointmentTypeID": 12345678,
"firstName": "{{firstName}}",
"lastName": "{{lastName}}",
"email": "{{email}}",
"phone": "{{phone}}",
"timezone": "{{timezone}}"
}Parameters
datetime stringThe chosen time exactly as returned by the availability check.firstName stringThe customer's first name.lastName stringThe customer's last name.email stringThe customer's email address.phone stringThe customer's phone number.timezone stringThe customer's IANA time zone.
Engage payload
{
"source": "VOICE_AI",
"tool": {
"id": "183cabda-6b7b-4bb8-a7fa-fdf08bac55d4",
"type": "HTTP_REQUEST",
"label": "Book Acuity Appointment",
"name": "book_acuity_appointment",
"customName": false,
"description": "Book an appointment. Check availability first and confirm the time, name, email and phone number with the customer before booking. datetime must be a time returned by the availability check. Acuity emails the customer a confirmation. Tell them the booking is made, or that the slot is no longer available and offer another time.",
"parameters": [
{
"name": "datetime",
"type": "string",
"description": "The chosen time exactly as returned by the availability check."
},
{
"name": "firstName",
"type": "string",
"description": "The customer's first name."
},
{
"name": "lastName",
"type": "string",
"description": "The customer's last name."
},
{
"name": "email",
"type": "string",
"description": "The customer's email address."
},
{
"name": "phone",
"type": "string",
"description": "The customer's phone number."
},
{
"name": "timezone",
"type": "string",
"description": "The customer's IANA time zone."
}
],
"config": {
"endpoint": {
"method": "POST",
"url": "https://acuityscheduling.com/api/v1/appointments"
},
"headers": [
{
"name": "Content-Type",
"value": "application/json"
},
{
"name": "Authorization",
"value": "Basic YOUR_BASE64_ACUITY_USER_ID_AND_API_KEY"
}
],
"body": "{\n \"datetime\": \"{{datetime}}\",\n \"appointmentTypeID\": 12345678,\n \"firstName\": \"{{firstName}}\",\n \"lastName\": \"{{lastName}}\",\n \"email\": \"{{email}}\",\n \"phone\": \"{{phone}}\",\n \"timezone\": \"{{timezone}}\"\n}",
"timeout": null
}
}
}IDs are regenerated on every copy.