Skip to main content
GET
Get a booking

Authorizations

Authorization
string
header
required

Organization-scoped bearer credential: a customer API key (1club_sk_live_...) or an MCP OAuth access token.

Path Parameters

id
integer
required

1club booking id

Query Parameters

include
enum<string>

Embed the booking's customer as customer, identical to what GET /v1/platform/contacts/{id} returns. Requires the contacts:read scope in addition to bookings:read, and is refused with 403 without it.

Available options:
customer

Response

Booking state

A booking created through the platform API. Recorded with a booking transaction so it counts for revenue, marked paid (settled against the External / API payment method) or unpaid (outstanding) per the caller. Refunds and collection stay with the caller.

bookingId
integer

1club booking id

bookingUuid
string<uuid>

Stable unguessable identifier. Prefer this over bookingId when storing a reference.

status
string

Booking status (e.g. confirmed, cancelled)

areaId
integer | null

Area id

classId
integer | null

The class occurrence this booking attends, when it is a class booking. Every attendee holds their own booking row against the same classId, and classes rows are per-occurrence - so this is what tells two classes running in the same hour apart. Join it against GET /v1/platform/classes, or read the roster with GET /v1/platform/classes/{id}/bookings.

eventId
integer | null

The event this booking attends, when it is an event booking

instructorId
integer | null

Instructor leading the session, when one is attached

contactId
integer | null

Contact the booking is for

startTime
string<date-time>
endTime
string<date-time>
customer
object | null

The booking's customer, identical to what GET /v1/platform/contacts/{id} returns. Present only when the request passes include=customer, which additionally requires the contacts:read scope; null when the booking has no contact. Use it to import a window of bookings without a contact lookup per row.

payment
object