Skip to main content
GET
Get organization bookings (cursor pagination)

Headers

Authorization
string

value must be Bearer <token> where <token> is api key prefixed with cal_, managed user access token, or OAuth access token

x-cal-secret-key
string

For platform customers - OAuth client secret key

x-cal-client-id
string

For platform customers - OAuth client ID

Path Parameters

orgId
number
required

Query Parameters

status
enum<string>

Filter bookings by a single status. Pass one (e.g. ?status=upcoming) or omit to walk all statuses ordered by Booking.uuid DESC. To list bookings across multiple statuses, issue parallel requests, one per status.

Available options:
upcoming,
recurring,
past,
cancelled,
unconfirmed
Example:

"upcoming"

attendeeEmail
string

Filter bookings by the attendee's email address.

Example:

"example@domain.com"

attendeeName
string

Filter bookings by the attendee's name.

Example:

"John Doe"

bookingUid
string

Filter bookings by the booking Uid.

Example:

"2NtaeaVcKfpmSZ4CthFdfk"

eventTypeIds
string

Filter bookings by event type ids. Event type ids must be separated by a comma.

Example:

"?eventTypeIds=100,200"

eventTypeId
string

Filter bookings by event type id.

Example:

"?eventTypeId=100"

teamsIds
string

Filter bookings by team ids that user is part of. Team ids must be separated by a comma.

Example:

"?teamIds=50,60"

teamId
string

Filter bookings by team id that user is part of

Example:

"?teamId=50"

afterStart
string

Filter bookings with start after this date string.

Example:

"?afterStart=2025-03-07T10:00:00.000Z"

beforeEnd
string

Filter bookings with end before this date string.

Example:

"?beforeEnd=2025-03-07T11:00:00.000Z"

afterCreatedAt
string

Filter bookings that have been created after this date string.

Example:

"?afterCreatedAt=2025-03-07T10:00:00.000Z"

beforeCreatedAt
string

Filter bookings that have been created before this date string.

Example:

"?beforeCreatedAt=2025-03-14T11:00:00.000Z"

afterUpdatedAt
string

Filter bookings that have been updated after this date string.

Example:

"?afterUpdatedAt=2025-03-07T10:00:00.000Z"

beforeUpdatedAt
string

Filter bookings that have been updated before this date string.

Example:

"?beforeUpdatedAt=2025-03-14T11:00:00.000Z"

sortStart
enum<string>

Sort results by their start time in ascending or descending order.

Available options:
asc,
desc
Example:

"?sortStart=asc OR ?sortStart=desc"

sortEnd
enum<string>

Sort results by their end time in ascending or descending order.

Available options:
asc,
desc
Example:

"?sortEnd=asc OR ?sortEnd=desc"

sortCreated
enum<string>

Sort results by their creation time (when booking was made) in ascending or descending order.

Available options:
asc,
desc
Example:

"?sortCreated=asc OR ?sortCreated=desc"

sortUpdatedAt
enum<string>

Sort results by their updated time (for example when booking status changes) in ascending or descending order.

Available options:
asc,
desc
Example:

"?sortUpdatedAt=asc OR ?sortUpdatedAt=desc"

cursor
string

Opaque cursor for cursor-based pagination. Pass the pagination.nextCursor value from a previous response to fetch the next page. Omit to fetch the first page.

Example:

"eyJ2IjoxLCJzb3J0VXVpZCI6IjAxOGY0YzJlLTNmMWEtN2FiYy05ZGVmLTAxMjM0NTY3ODlhYiJ9"

limit
number
default:50

The number of items to return

Required range: 1 <= x <= 100
Example:

50

userIds
string

Filter bookings by ids of users within your organization.

Example:

"?userIds=100,200"

Response

200 - application/json
status
enum<string>
required
Available options:
success,
error
Example:

"success"

data
object[]
required

Array of booking data, which can contain either BookingOutput objects or RecurringBookingOutput objects

pagination
object
required