Book appointment
Book a client into an open time for an appointment type.
POST https://cotlet.dev/api/v1/acuity-scheduling/appointment-types/{appointment_type_id}/appointments
Creates an appointment for the client at the datetime you pass, for the appointment type and calendar. Pass a time returned by check_availability_times. The client needs a first and last name (Acuity requires both for a client profile). Returns the new appointment with its ID and confirmation link. By default you confirm each call; you can switch that off for this tool.
Parameters
| Name | Type | Description |
|---|---|---|
| appointment_type_id integer required | integer | Appointment type ID from list_appointment_types. |
| datetime string required | string | Start time from check_availability_times, e.g. '2026-11-03T10:00:00-0500'. |
| first_name string required | string | Client first name. |
| last_name string required | string | Client last name. |
| email string | string | Client email. |
| phone string | string | Client phone. |
| calendar_id integer | integer | Calendar ID from list_appointment_types or list_appointments. Without it, every calendar that offers the type is checked. |
| timezone string | string | Long-form timezone ID, e.g. 'America/New_York'. |
Request
curl -X POST https://cotlet.dev/api/v1/acuity-scheduling/appointment-types/5120043/appointments \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"calendar_id":27238,"datetime":"2026-11-03T10:00:00-0500","first_name":"Dana","last_name":"Reyes","email":"dana@example.com"}' result = client.call("acuity-scheduling", "book_appointment", {"appointment_type_id":5120043,"calendar_id":27238,"datetime":"2026-11-03T10:00:00-0500","first_name":"Dana","last_name":"Reyes","email":"dana@example.com"}) const result = await cotlet.call('acuity-scheduling', 'book_appointment', {"appointment_type_id":5120043,"calendar_id":27238,"datetime":"2026-11-03T10:00:00-0500","first_name":"Dana","last_name":"Reyes","email":"dana@example.com"}); cotlet call acuity-scheduling book_appointment --data '{"appointment_type_id":5120043,"calendar_id":27238,"datetime":"2026-11-03T10:00:00-0500","first_name":"Dana","last_name":"Reyes","email":"dana@example.com"}' Example response
{
"appointment_id": 1841502,
"first_name": "Dana",
"last_name": "Reyes",
"email": "dana@example.com",
"type": "Initial consult",
"calendar": "Main",
"datetime": "2026-11-03T10:00:00-0500",
"duration": 60,
"price": "90.00",
"paid": "no",
"confirmation_page": "https://acuityscheduling.com/schedule.php?owner=11111111&action=appt&id%5B%5D=def456"
}