Skip to main content
POST
Get Shift Availability

Authorizations

Authorization
string
header
required

All requests must include the static API Key in the Authorization header using the Bearer scheme.

Headers

Restoo-Partner-Id
string
required

Unique identifier of your Partner account (defined by Restoo).

Restoo-Account-Id
string
required

Unique identifier of the Tenant.

Path Parameters

date
string<date>
required

The date for the availability search in ISO 8601 format (YYYY-MM-DD)

Example:

"2025-03-20"

time
string
required

The time for the availability search in ISO 8601 format (HH:MM:SS)

Example:

"22:30:00"

Body

application/json

GetShiftAvailabilityRequest

Request payload for shift availability query.

paxChildren
integer
required

The number of children in the Booking. Available only if the Tenant setting for differentiating adults and children is enabled

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

0

pax
integer
required

The number of people (or adults, depending on Tenant settings) in the Booking

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

2

status
enum<string>
required

Desired status of the Booking.

This value determines how availability should be evaluated and how the Booking should be handled if created.

  • CONFIRMED — The Booking should be immediately confirmed.
  • REQUESTED — The Booking requires manual review and confirmation by the venue.
  • PENDING_WAIT_LIST_BOOKING — The customer wishes to join the wait list and may be confirmed if availability becomes available.

Availability requests should initially be performed using the CONFIRMED status. If no availability is found, alternative statuses may be offered depending on the availability result and venue configuration.

Not all statuses are available for every availability request

Available options:
REQUESTED,
PENDING_MERCHANT_CONFIRMATION,
PENDING_WAIT_LIST_BOOKING,
CONFIRMED,
WAIT_LIST_WALK_IN,
ARRIVED,
SEATED,
DESSERTS,
ACCOUNT_SENT,
ACCOUNT_PAID,
ATTENDED,
CANCELED,
NO_SHOW,
DECLINED_BY_MERCHANT,
DELETED
Example:

"CONFIRMED"

filters
ShiftAvailabilityFilters · object

Filters to apply on the shift availability request.

customerUuid
string

The Customer UUID.

Include this field only to associate the request with an existing Customer in Restoo

Example:

"0199ce9adaab7327bda33ef9f75c123"

excludeBookingUuid
string

UUID of the Booking to be excluded from the availability search. Required only when updating an existing Booking

Example:

"50b5571be67b477baa9dead4b290c555"

promoCode
string

The promotion code requested for the reservation

Required string length: 6 - 255
Example:

"promo2x1"

redemptionCode
string

The alphanumeric code to redeem the purchased Product

Required string length: 6
Example:

"ABC123"

experience
ExperienceRequest · object

The Experience requested

highChairs
integer

The number of high chairs requested

Required range: x >= 0
Example:

1

strollers
integer

The number of strollers requested

Required range: x >= 0
Example:

1

Response

GetShiftAvailabilityResponse

Response payload representing the availability a Shift.

metadata
ShiftAvailabilityMetadata · object
required

Metadata returned with the shift availability response.

promo
Promo · object | null
required

The Promo applied during the availability request, if any.

If null, no Promo was applied or no valid Promo was detected.

availability
Availability · object
required

The Availability details for the request.

accountId
string
required

The unique Restoo Account identifier for the Tenant

Example:

"best-burger"

addOns
AddOn · object[]
required

The Add-ons sent in the request, resolved with their current name, price and currency, and localized. Empty means none were requested, not that none exist.

Get Booking Availability flattens both levels, the Shift's and the Experience's. The other responses carry only the Experience's

experience
Experience · object | null
required

The Experience details.

floorPlanAreas
FloorPlanAreaAvailability · object[]
required

The Floor Plan Areas of the Shift. An area can appear here and still have no bookable times of its own in timeSlots

shift
Shift · object | null
required

The Shift details.

timeSlots
TimeSlotAvailability · object[]
required

The bookable Time Slots, one entry per combination of start time and Floor Plan Area. startAt is not unique: the same time comes back once per area, each entry with its own availability and floorPlanAreaId

workDay
WorkDay · object
required

The Work Day details.