Skip to main content
POST
Book an appointment

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

Idempotency-Key
string
required

A unique value you choose for this request, such as a UUID. Sending the same key again returns the first answer instead of doing the work twice, so a timed-out request is safe to retry. Reusing a key for a different request is refused with 409 idempotency_key_conflict, and retrying while the first request is still running with 409 idempotency_key_reused. See Retries and idempotency.

Minimum string length: 1

Path Parameters

clinic_id
string<uuid>
required

Body

application/json
patient_id
string<uuid>
required
service_id
string<uuid>
required
start_at
string<date-time>
required

ISO 8601 WITH an explicit offset — a value with no offset is invalid_request, never a silent UTC/local guess.

clinician_id
string<uuid>

Omit to let the pool pick a free, eligible clinician.

location_id
string<uuid>
venue_type
enum<string>
default:physical
Available options:
physical,
online,
mobile_clinic
urgency_level
enum<string>
default:normal
Available options:
low,
normal,
high,
emergency
patient_notes
string
clinic_notes
string
symptoms_description
string
status
enum<string>
default:scheduled
Available options:
scheduled,
confirmed
payment_amount
number
payment_method
string
payment_status
enum<string>
default:pending
Available options:
pending,
paid
notify_patient
boolean
default:true

false sets email_notifications/sms_notifications/voice_notifications false on the row itself — a real, persistent setting, not a one-time suppression.

run_automations
boolean
default:false

Default false suppresses the appointment.created/*.status Agent Studio dispatch.

Response

OK.

data
object
required

Never present here, by name: client_appointment_date/client_start_time/ client_end_time/client_timezone, form_data, custom_color, provider_user_id, time_range, excluded_from_overlap_check, booking_identity_review, provider_busy_minutes, out_of_office_confirmed_at, booking_confirmation_deferred, clinic_id.