API ReferenceBookings
List bookings
GET
/v1/bookingsThe club's court bookings, oldest first. A booking is what a customer books on a court; the club's own programming (clinics, leagues, open play) is not a booking and is served by /v1/schedule and GET /v1/events/{id}. Maintenance blocks are never bookings. Confirmed bookings only by default — pass include=canceled to also return cancelled ones. Scoped to the club tied to your API key.
Authorization
bearerAuth AuthorizationBearer <token>
Your club API key. Send it as Authorization: Bearer oc_live_….
In: header
Query Parameters
limit?integer
Number of results, 1–100 (default 25).
Range
1 <= value <= 100starting_after?string
Cursor — the id of the last booking on the previous page.
include?string
Comma-separated. canceled adds cancelled bookings. Unknown values are ignored.
Response Body
application/json
application/json
application/json
application/json
curl -X GET "https://api.getopencourt.com/v1/bookings"{
"object": "list",
"data": [
{
"id": "7c1a9e30-5b2d-4f68-9a41-8e0d3c6b2f95",
"object": "booking",
"status": "confirmed",
"customer_id": "3f29c4a1-7b6d-4e52-9c81-2a4b6d8e0f13",
"title": null,
"business_date": "2026-06-15",
"start": "2026-06-15T18:00:00-04:00",
"end": "2026-06-15T19:30:00-04:00",
"spaces": [
{
"id": "b2d4f6a8-1c3e-4a5b-9d7c-0e2f4a6b8c1d",
"name": "Court 1",
"start": "2026-06-15T18:00:00-04:00",
"end": "2026-06-15T19:30:00-04:00"
}
],
"open": false,
"privacy": "private",
"party_size": 4,
"participant_count": 3,
"max_participants": 4,
"spots_available": 1,
"created_at": "2026-06-10T13:04:22.000Z",
"updated_at": "2026-06-10T13:04:22.000Z",
"canceled_at": null
}
],
"has_more": true,
"url": "string"
}{
"error": {
"type": "string",
"code": "string",
"message": "string",
"param": "string",
"request_id": "string"
}
}{
"error": {
"type": "string",
"code": "string",
"message": "string",
"param": "string",
"request_id": "string"
}
}{
"error": {
"type": "string",
"code": "string",
"message": "string",
"param": "string",
"request_id": "string"
}
}