Bookings

Booking Reservation

triangle-exclamation

Booking Reservation

post

Reserving availability when making a booking. The steps to make a reservation are:

  1. Check Availability: Check the availability on the /availability endpoint to retrieve an availabilityId
  2. Booking Reservation (this step): Create a booking that reserves the availability while you collect payment and contact information from the customer. The booking will remain with status ON_HOLD until the booking is confirmed or the reservation hold expires.

The availability for the booking is held for the amount of time equal to theexpirationMinutes parameter (if provided), up to an internal limit set by either the supplier or the OCTo provider. The utc_expires_at parameter in the response object will indicate when a reservtion will expire. A reservation can be extended by calling the /bookings/{uuid}/extend endpoint.

A reserved booking can be confirmed after the customer finalizes their choice on the /bookings/{uuid}/confirm endpoint provided the reservation had not expired.

Header parameters
Content-Typestring · enumOptional

Required field on all POST requests

Possible values:
Body
uuidstring · uuidOptional

A unique UUID to identify the booking. Setting this value acts like an idempotency key preventing you from double booking.

Example: 559aed3d-6d5b-4fe0-bfca-99f5e7218a56
productIdstringRequired

The product ID for this booking.

Example: 6b903d44-dc24-4ca4-ae71-6bde6c4f4854
optionIdstringRequired

The option ID for this booking.

Example: DEFAULT
availabilityIdstringRequired

The availability ID for the selected timeslot.

Example: 2021-10-27T00:00:00-04:00
expirationMinutesintegerOptional

How many minutes to reserve the availability, otherwise defaults to the supplier default amount.

Example: 30
notesstringOptional

Optional notes for the booking.

Example: Optional notes
Responses
chevron-right
200

OK

application/json
idstringRequired

A unique ID / UUID generated by the supplier system to identify the booking.

Example: bbbb6227-54fc-4c32-9ed7-dc3eb99966ea
uuidstring · uuidRequired

A UUID you can set when generating the booking to use as an idempotency key.

Example: 559aed3d-6d5b-4fe0-bfca-99f5e7218a56
testModebooleanRequired

If TRUE, booking was created on test mode

resellerReferencestring · nullableRequired

The reference set by the Reseller. A mandatory field for resellers to be set in the booking confirmation request.

supplierReferencestring · nullableRequired

The Supplier's / booking platform reference.

statusstring · enumRequired

The status of the booking, possible values are: ON_HOLD The booking is pending confirmation, this is the default value when you first create the booking. EXPIRED If the booking is not confirmed before the expiration hold expires, it goes into an expired state. CONFIRMED Once the confirmation call is made the booking is ready to be used. CANCELLED If the booking is cancelled. PENDING If the booking is pending outside availability confirmation. REDEEMED If the booking is already redeemed.

Example: CONFIRMEDPossible values:
utcCreatedAtstringRequired

An ISO8601 date time in UTC when the booking was created.

Example: 2021-10-27T23:28:43Z
utcUpdatedAtstring · nullableRequired

An ISO8601 date time in UTC when the booking was updated.

Example: 2021-10-27T23:28:43Z
utcExpiresAtstring · nullableRequired

An ISO8601 date times in UTC for when this booking is due to expire if the status is ON_HOLD.

Example: 2021-10-27T23:58:43Z
utcRedeemedAtstring · nullableRequired

An ISO8601 date time in UTC at when the booking was redeemed.

utcConfirmedAtstring · nullableRequired

An ISO8601 date time in UTC when the booking was confirmed.

Example: 2021-10-27T23:28:43Z
productIdstringRequired

The product ID that identifies the product in the booking system to make this reservation.

Example: 6b903d44-dc24-4ca4-ae71-6bde6c4f4854
optionIdstringRequired

The product ID that identifies the product option in the booking system to make this reservation.

Example: DEFAULT
cancellablebooleanRequired

A boolean field indicating whether this booking can be cancelled.

freesalebooleanRequired

Whether the booking was made as freesale (without checking availability first).

availabilityIdstringRequired

The availability id that was used in the request.

notesstring · nullableRequiredExample: Optional notes for the booking
voucherone ofOptional
or
nullOptional
post
/bookings

Booking Confirmation

Booking Confirmation

post

This endpoint confirms the booking so it's ready to be used.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
uuidstringRequired

The UUID of the booking

Header parameters
Content-Typestring · enumOptional

Required field on all POST requests

Possible values:
Body
emailReceiptbooleanOptional

Whether you want OCTO Cloud to email the guest a copy of their receipt and tickets. (defaults to false)

resellerReferencestringOptional

Your reference for this booking. Also known as a Voucher Number.

Example: 4ec08a62-892c-48c1-a608-dc946531a33b
Responses
chevron-right
200

OK

application/json
idstringRequired

A unique ID / UUID generated by the supplier system to identify the booking.

Example: bbbb6227-54fc-4c32-9ed7-dc3eb99966ea
uuidstring · uuidRequired

A UUID you can set when generating the booking to use as an idempotency key.

Example: 559aed3d-6d5b-4fe0-bfca-99f5e7218a56
testModebooleanRequired

If TRUE, booking was created on test mode

resellerReferencestring · nullableRequired

The reference set by the Reseller. A mandatory field for resellers to be set in the booking confirmation request.

supplierReferencestring · nullableRequired

The Supplier's / booking platform reference.

statusstring · enumRequired

The status of the booking, possible values are: ON_HOLD The booking is pending confirmation, this is the default value when you first create the booking. EXPIRED If the booking is not confirmed before the expiration hold expires, it goes into an expired state. CONFIRMED Once the confirmation call is made the booking is ready to be used. CANCELLED If the booking is cancelled. PENDING If the booking is pending outside availability confirmation. REDEEMED If the booking is already redeemed.

Example: CONFIRMEDPossible values:
utcCreatedAtstringRequired

An ISO8601 date time in UTC when the booking was created.

Example: 2021-10-27T23:28:43Z
utcUpdatedAtstring · nullableRequired

An ISO8601 date time in UTC when the booking was updated.

Example: 2021-10-27T23:28:43Z
utcExpiresAtstring · nullableRequired

An ISO8601 date times in UTC for when this booking is due to expire if the status is ON_HOLD.

Example: 2021-10-27T23:58:43Z
utcRedeemedAtstring · nullableRequired

An ISO8601 date time in UTC at when the booking was redeemed.

utcConfirmedAtstring · nullableRequired

An ISO8601 date time in UTC when the booking was confirmed.

Example: 2021-10-27T23:28:43Z
productIdstringRequired

The product ID that identifies the product in the booking system to make this reservation.

Example: 6b903d44-dc24-4ca4-ae71-6bde6c4f4854
optionIdstringRequired

The product ID that identifies the product option in the booking system to make this reservation.

Example: DEFAULT
cancellablebooleanRequired

A boolean field indicating whether this booking can be cancelled.

freesalebooleanRequired

Whether the booking was made as freesale (without checking availability first).

availabilityIdstringRequired

The availability id that was used in the request.

notesstring · nullableRequiredExample: Optional notes for the booking
voucherone ofOptional
or
nullOptional
post
/bookings/{uuid}/confirm

Booking Cancellation

Booking Cancellation

post

For cancelling bookings. You can only cancel a booking if booking.cancellable is TRUE, and is within the booking cancellation cut-off window.

Header parameters
Content-Typestring · enumOptional

Required field on all DELETE requests

Possible values:
Body
reasonstringOptional

A text value describing why the cancellation happened.

Example: Customer Requested
forcebooleanOptional
Responses
chevron-right
200

OK

application/json
idstringRequired

A unique ID / UUID generated by the supplier system to identify the booking.

Example: bbbb6227-54fc-4c32-9ed7-dc3eb99966ea
uuidstring · uuidRequired

A UUID you can set when generating the booking to use as an idempotency key.

Example: 559aed3d-6d5b-4fe0-bfca-99f5e7218a56
testModebooleanRequired

If TRUE, booking was created on test mode

resellerReferencestring · nullableRequired

The reference set by the Reseller. A mandatory field for resellers to be set in the booking confirmation request.

supplierReferencestring · nullableRequired

The Supplier's / booking platform reference.

statusstring · enumRequired

The status of the booking, possible values are: ON_HOLD The booking is pending confirmation, this is the default value when you first create the booking. EXPIRED If the booking is not confirmed before the expiration hold expires, it goes into an expired state. CONFIRMED Once the confirmation call is made the booking is ready to be used. CANCELLED If the booking is cancelled. PENDING If the booking is pending outside availability confirmation. REDEEMED If the booking is already redeemed.

Example: CONFIRMEDPossible values:
utcCreatedAtstringRequired

An ISO8601 date time in UTC when the booking was created.

Example: 2021-10-27T23:28:43Z
utcUpdatedAtstring · nullableRequired

An ISO8601 date time in UTC when the booking was updated.

Example: 2021-10-27T23:28:43Z
utcExpiresAtstring · nullableRequired

An ISO8601 date times in UTC for when this booking is due to expire if the status is ON_HOLD.

Example: 2021-10-27T23:58:43Z
utcRedeemedAtstring · nullableRequired

An ISO8601 date time in UTC at when the booking was redeemed.

utcConfirmedAtstring · nullableRequired

An ISO8601 date time in UTC when the booking was confirmed.

Example: 2021-10-27T23:28:43Z
productIdstringRequired

The product ID that identifies the product in the booking system to make this reservation.

Example: 6b903d44-dc24-4ca4-ae71-6bde6c4f4854
optionIdstringRequired

The product ID that identifies the product option in the booking system to make this reservation.

Example: DEFAULT
cancellablebooleanRequired

A boolean field indicating whether this booking can be cancelled.

freesalebooleanRequired

Whether the booking was made as freesale (without checking availability first).

availabilityIdstringRequired

The availability id that was used in the request.

notesstring · nullableRequiredExample: Optional notes for the booking
voucherone ofOptional
or
nullOptional
post
/bookings/{uuid}/cancel

Get Bookings

Get Bookings

get

This endpoint will fetch the bookings you have made for the given filters.

When using this endpoint you must include one of the following query parameters:

  • resellerReference
  • supplierReference
  • localDate
  • localDateStart and localDateEnd
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
resellerReferencestringOptional

The reseller reference on the booking

supplierReferencestringOptional

The reference provided by the supplier

localDatestringOptional

All bookings made for a specific date

localDateStartstringOptional

First date of a date range search

localDateEndstringOptional

Last date of a date range search

productIdstringOptional

The product id to filter by

optionIdstringOptional

The option id to filter by

Responses
chevron-right
200

OK

application/json
idstringRequired

A unique ID / UUID generated by the supplier system to identify the booking.

Example: bbbb6227-54fc-4c32-9ed7-dc3eb99966ea
uuidstring · uuidRequired

A UUID you can set when generating the booking to use as an idempotency key.

Example: 559aed3d-6d5b-4fe0-bfca-99f5e7218a56
testModebooleanRequired

If TRUE, booking was created on test mode

resellerReferencestring · nullableRequired

The reference set by the Reseller. A mandatory field for resellers to be set in the booking confirmation request.

supplierReferencestring · nullableRequired

The Supplier's / booking platform reference.

statusstring · enumRequired

The status of the booking, possible values are: ON_HOLD The booking is pending confirmation, this is the default value when you first create the booking. EXPIRED If the booking is not confirmed before the expiration hold expires, it goes into an expired state. CONFIRMED Once the confirmation call is made the booking is ready to be used. CANCELLED If the booking is cancelled. PENDING If the booking is pending outside availability confirmation. REDEEMED If the booking is already redeemed.

Example: CONFIRMEDPossible values:
utcCreatedAtstringRequired

An ISO8601 date time in UTC when the booking was created.

Example: 2021-10-27T23:28:43Z
utcUpdatedAtstring · nullableRequired

An ISO8601 date time in UTC when the booking was updated.

Example: 2021-10-27T23:28:43Z
utcExpiresAtstring · nullableRequired

An ISO8601 date times in UTC for when this booking is due to expire if the status is ON_HOLD.

Example: 2021-10-27T23:58:43Z
utcRedeemedAtstring · nullableRequired

An ISO8601 date time in UTC at when the booking was redeemed.

utcConfirmedAtstring · nullableRequired

An ISO8601 date time in UTC when the booking was confirmed.

Example: 2021-10-27T23:28:43Z
productIdstringRequired

The product ID that identifies the product in the booking system to make this reservation.

Example: 6b903d44-dc24-4ca4-ae71-6bde6c4f4854
optionIdstringRequired

The product ID that identifies the product option in the booking system to make this reservation.

Example: DEFAULT
cancellablebooleanRequired

A boolean field indicating whether this booking can be cancelled.

freesalebooleanRequired

Whether the booking was made as freesale (without checking availability first).

availabilityIdstringRequired

The availability id that was used in the request.

notesstring · nullableRequiredExample: Optional notes for the booking
voucherone ofOptional
or
nullOptional
get
/bookings

Get Booking

Get Booking

get

Fetch the status of an existing booking.

Path parameters
uuidstringRequired

The UUID of the booking

Responses
chevron-right
200

OK

application/json
idstringRequired

A unique ID / UUID generated by the supplier system to identify the booking.

Example: bbbb6227-54fc-4c32-9ed7-dc3eb99966ea
uuidstring · uuidRequired

A UUID you can set when generating the booking to use as an idempotency key.

Example: 559aed3d-6d5b-4fe0-bfca-99f5e7218a56
testModebooleanRequired

If TRUE, booking was created on test mode

resellerReferencestring · nullableRequired

The reference set by the Reseller. A mandatory field for resellers to be set in the booking confirmation request.

supplierReferencestring · nullableRequired

The Supplier's / booking platform reference.

statusstring · enumRequired

The status of the booking, possible values are: ON_HOLD The booking is pending confirmation, this is the default value when you first create the booking. EXPIRED If the booking is not confirmed before the expiration hold expires, it goes into an expired state. CONFIRMED Once the confirmation call is made the booking is ready to be used. CANCELLED If the booking is cancelled. PENDING If the booking is pending outside availability confirmation. REDEEMED If the booking is already redeemed.

Example: CONFIRMEDPossible values:
utcCreatedAtstringRequired

An ISO8601 date time in UTC when the booking was created.

Example: 2021-10-27T23:28:43Z
utcUpdatedAtstring · nullableRequired

An ISO8601 date time in UTC when the booking was updated.

Example: 2021-10-27T23:28:43Z
utcExpiresAtstring · nullableRequired

An ISO8601 date times in UTC for when this booking is due to expire if the status is ON_HOLD.

Example: 2021-10-27T23:58:43Z
utcRedeemedAtstring · nullableRequired

An ISO8601 date time in UTC at when the booking was redeemed.

utcConfirmedAtstring · nullableRequired

An ISO8601 date time in UTC when the booking was confirmed.

Example: 2021-10-27T23:28:43Z
productIdstringRequired

The product ID that identifies the product in the booking system to make this reservation.

Example: 6b903d44-dc24-4ca4-ae71-6bde6c4f4854
optionIdstringRequired

The product ID that identifies the product option in the booking system to make this reservation.

Example: DEFAULT
cancellablebooleanRequired

A boolean field indicating whether this booking can be cancelled.

freesalebooleanRequired

Whether the booking was made as freesale (without checking availability first).

availabilityIdstringRequired

The availability id that was used in the request.

notesstring · nullableRequiredExample: Optional notes for the booking
voucherone ofOptional
or
nullOptional
get
/bookings/{uuid}

Last updated