Book a vet appointment
book_appointmentUse this when someone asks to book an animal in for a visit at their vet clinic. Returns the new appointment with its time, provider ids and procedure count; it takes the clinic's usual length and reminders, so the clinic's reminder messages go to the animal's owner. Not for vaccinations, which are booked in Veterical.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"patientId": "<patientId>",
"startTime": "<startTime>",
"requestId": "<requestId>"
},
"name": "book_appointment"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| clinicId | No | Id of the clinic, from list_clinics. Leave it out when the user has one clinic. | |
| patientId | Yes | Id of the animal, from find_patient or create_patient. It needs an owner on file. | |
| requestId | Yes | A unique id you choose for this booking, such as a UUID. Calling again with the same requestId returns the first booking rather than booking twice. | |
| startTime | Yes | Start as an ISO 8601 time with the clinic's UTC offset, such as 2026-11-20T10:00:00+01:00. | |
| providerIds | No | Ids of the vets, nurses or assistants who take it, from list_clinic_providers. Leave it out when the clinic has one or the user takes appointments. | |
| procedureIds | No | Ids of the procedures booked, from list_procedures. A vaccine is refused. | |
| durationMinutes | No | Length in minutes. Leave it out for the clinic's usual appointment length. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | ||
| appointment | Yes |