Skip to main content
Books a contact into a free time of a booking type — one from GET /v1/calendar/free-times. The time must still be free: a teammate has one appointment at a time, prep time included. The appointment is booked with source api, and the contact is sent the account’s confirmation and reminders, as when the team books.
Needs the calendar:write scope.

Body

Send an Idempotency-Key header to make a retry safe: the same key with the same body is answered once, and the first answer repeated (with Idempotent-Replayed: true).

Request

Response

201 Created — the appointment, as GET /v1/calendar/appointments/{appointment_id} shows it, without its history. It also sends appointment.booked to your webhook endpoints.

Errors

Every refusal is {"error": {"code", "message", "field"}}; field is there when one input is at fault. Any request can also be refused for its key, its account or its rate (key_required, invalid_key, account_suspended, plan_excludes_api, address_not_allowed, rate_limited); see the overview.