Authentication and keys

Send the key as a bearer token on every request:

Authorization: Bearer cs_live_YOUR_KEY

How keys work

Permissions

ScopeAllows
bookings:readBookings across the business, including guest details
bookings:writeCreating, rescheduling, confirming, declining and cancelling bookings, and quick invites
booking_links:readBooking links, services, classes, resources and routing forms
booking_links:writeCreating and editing meeting links, and turning any link on or off
availability:readAvailability, free times, busy times and schedules
availability:writeWeekly hours, date overrides and blocked time
customers:readThe customer register
customers:writeAdding, updating and erasing customers
organization:readThe business and its team members
analytics:readBooking reports
webhooks:readWebhook endpoints and their deliveries
webhooks:writeCreating, changing and deleting webhook endpoints

A request outside the key's permissions gets 403 insufficient_scope.

Rolling and revoking

Roll issues a new secret with the same settings. The old one keeps working for the overlap you choose (none, 1 hour, 24 hours or 7 days), so you can deploy the new secret first. Revoke stops a key at once. Revoke all keys is the first step if a key or an account may be compromised.

Refusals

StatusCodeMeaning
401unauthorizedNo key, or not a valid one
401credential_expiredThe key has expired
401credential_revokedThe key was revoked, or its roll overlap ended
402plan_requiredThe business has neither Pro nor a complimentary grant
403ip_not_allowedThe address is outside the key's allowlist
403api_access_suspendedClearslot suspended the business's API access
503api_unavailableThe API is not available for this business

An address that sends 20 invalid keys within a minute is refused for 15 minutes.