book_appointment
Behavior, inputs, outputs and permissions for book_appointment.
Reviewed · 2026-10-06 / Ridian
This reference is generated from the published tool contract.
Behavior and boundaries
Section titled “Behavior and boundaries”Books a slot of an appointment type for another person (the booker). Ridian writes the event into the host’s calendar and emails the booker a confirmation with a link to reschedule or cancel. Use a start time returned by find_booking_slots. Send a stable request_id; repeating it returns the same booking instead of booking twice. Confirm name, email and time with the user first.
Permissions
Section titled “Permissions”Granted scopes, accounts, calendars and visibility rules limit access. Workspace administrators do not automatically gain access to other users’ accounts.
bookings:write
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "appointment_type_id": { "type": "string", "minLength": 1, "maxLength": 64, "description": "appointment_type_id from list_appointment_types." }, "start": { "type": "string", "maxLength": 40 }, "booker_name": { "type": "string", "minLength": 1, "maxLength": 200 }, "booker_email": { "type": "string", "maxLength": 320, "format": "email", "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$" }, "booker_time_zone": { "type": "string", "maxLength": 64, "description": "IANA time zone of the booker for the confirmation email, e.g. \"Europe/Berlin\"." }, "language": { "description": "Language of the confirmation email. Default de.", "type": "string", "enum": [ "de", "en" ] }, "request_id": { "type": "string", "pattern": "^[A-Za-z0-9_-]{8,128}$", "description": "Stable id for this booking: 8–128 letters, digits, _ or -." } }, "required": [ "appointment_type_id", "start", "booker_name", "booker_email", "booker_time_zone", "request_id" ], "additionalProperties": false}Output
Section titled “Output”{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "booking_id": { "type": "string" }, "created": { "type": "boolean" } }, "required": [ "booking_id", "created" ], "additionalProperties": false}Errors and retries
Section titled “Errors and retries”Check the tool result for errors. Do not blindly retry writes after a timeout. Check the current resource or send status first.