Booking Pro API
API ReferenceBookings

List bookings

Lists bookings, newest first by default. To find a client's appointments from what you know about them, pass `phone` and/or `email`: the client is matched the same way booking matches a contact (any stored phone format), and the response adds `contact_found` and `matched_contacts` (more than one person can share a phone). Each matched contact carries `client_status`: `returning` when they have a past visit (an appointment completed, checked in or passed), otherwise `new`. For a "what are my upcoming appointments" lookup use `from` = now, `order=asc` and `exclude_cancelled=true`.

View on GitHub
Connect your AI:ClaudeChatGPT
GET
/bookings

Authorization

ApiKeyAuth
AuthorizationBearer <token>

Send your API key as a bearer token: Authorization: Bearer bp_sk_live_.... Mint and revoke keys in your dashboard under Settings -> Developers.

In: header

Query Parameters

location_id?string

Restrict to a single location. Must be one the key can access.

Formatuuid
phone?string

Only bookings of the contact(s) with this phone number (any format; at least 7 digits).

email?string

Only bookings of the contact(s) with this email (case-insensitive exact match).

exclude_cancelled?boolean

Leave out cancelled bookings.

Defaultfalse
order?string

Sort by start time, desc (newest first, the default) or asc (soonest first).

Default"desc"

Value in

  • "asc"
  • "desc"
from?string

Include bookings starting on/after this date-time.

Formatdate-time
to?string

Include bookings starting before this date-time.

Formatdate-time
contact_id?string
Formatuuid
limit?integer
Range1 <= value <= 100
Default25
cursor?string

The next_cursor from a previous page.

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/bookings"
{  "data": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "location_id": "46910cc3-ab41-4b80-b4a7-94dab9f1b795",      "contact_id": "f245e2a3-e141-4d41-912c-b1c1f5bd5598",      "service_id": "641e839f-864e-4cce-98f9-40f6cbb3e9e0",      "technician_id": "557e6e8c-3c29-4825-b73f-0884ad39f2d9",      "start": "2019-08-24T14:15:22Z",      "end": "2019-08-24T14:15:22Z",      "status": "booked",      "status_name": "string",      "staff_busy": [        {          "start": "2019-08-24T14:15:22Z",          "end": "2019-08-24T14:15:22Z"        }      ],      "source": "string",      "created_at": "2019-08-24T14:15:22Z",      "slug": "string"    }  ],  "next_cursor": "string",  "contact_found": true,  "matched_contacts": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "first_name": "string",      "last_name": "string",      "phone": "string",      "email": "string",      "client_status": "new"    }  ]}