Bookings
Last updated
Was this helpful?
Last updated
Was this helpful?
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
The reseller reference on the booking
The reference provided by the supplier
All bookings made for a specific date
First date of a date range search
Last date of a date range search
The product id to filter by
The option id to filter by
GET /octo/bookings HTTP/1.1
Host: api.example.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
[
{
"id": "3ef65048-5ffe-474f-8a5c-fb35a9faa6ed",
"uuid": "814d2566-2c71-4e6a-aaa9-59b9bf26cc0d",
"testMode": true,
"resellerReference": null,
"supplierReference": "RNSRSM",
"status": "CONFIRMED",
"utcCreatedAt": "2022-05-25T11:07:05Z",
"utcUpdatedAt": "2022-05-25T11:09:32Z",
"utcExpiresAt": null,
"utcRedeemedAt": null,
"utcConfirmedAt": "2022-05-25T11:09:32Z",
"productId": "1",
"product": {
"id": "1",
"internalName": "PPU | OH",
"reference": null,
"locale": "en",
"timeZone": "Europe/London",
"allowFreesale": false,
"instantConfirmation": true,
"instantDelivery": true,
"availabilityRequired": true,
"availabilityType": "OPENING_HOURS",
"deliveryFormats": [
"PDF_URL",
"QRCODE"
],
"deliveryMethods": [
"TICKET",
"VOUCHER"
],
"redemptionMethod": "DIGITAL",
"options": [
{
"id": "DEFAULT",
"default": true,
"internalName": "DEFAULT",
"reference": null,
"availabilityLocalStartTimes": [
"00:00"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"requiredContactFields": [],
"restrictions": {
"minUnits": 0,
"maxUnits": null
},
"units": [
{
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
}
]
}
]
},
"optionId": "DEFAULT",
"option": {
"id": "DEFAULT",
"default": true,
"internalName": "DEFAULT",
"reference": null,
"availabilityLocalStartTimes": [
"00:00"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"requiredContactFields": [],
"restrictions": {
"minUnits": 0,
"maxUnits": null
},
"units": [
{
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
}
]
},
"cancellable": true,
"cancellation": null,
"freesale": false,
"availabilityId": "2022-04-30T00:00:00+01:00",
"availability": {
"id": "2022-04-30T00:00:00+01:00",
"localDateTimeStart": "2022-04-30T00:00:00+01:00",
"localDateTimeEnd": "2022-05-01T00:00:00+01:00",
"allDay": true,
"openingHours": [
{
"from": "09:00",
"to": "17:00"
}
]
},
"contact": {
"fullName": "John",
"firstName": "Doe",
"lastName": null,
"emailAddress": "john.doe@email.com",
"phoneNumber": null,
"locales": [],
"country": null,
"notes": null
},
"notes": null,
"deliveryMethods": [
"TICKET",
"VOUCHER"
],
"voucher": {
"redemptionMethod": "DIGITAL",
"utcRedeemedAt": null,
"deliveryOptions": [
{
"deliveryFormat": "PDF_URL",
"deliveryValue": "https://api.octomock.com/octo/pdf?booking=814d2566-2c71-4e6a-aaa9-59b9bf26cc0d"
},
{
"deliveryFormat": "QRCODE",
"deliveryValue": "RNSRSM"
}
]
},
"unitItems": [
{
"uuid": "a204e6de-7909-4bf2-b7a8-2884189534bc",
"resellerReference": null,
"supplierReference": "1LTYVC",
"unit": {
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
},
"unitId": "adult",
"status": "ON_HOLD",
"utcRedeemedAt": null,
"contact": {
"fullName": null,
"firstName": null,
"lastName": null,
"emailAddress": null,
"phoneNumber": null,
"locales": [],
"country": null,
"notes": null
},
"ticket": {
"redemptionMethod": "DIGITAL",
"utcRedeemedAt": null,
"deliveryOptions": [
{
"deliveryFormat": "PDF_URL",
"deliveryValue": "https://api.octomock.com/octo/pdf?booking=814d2566-2c71-4e6a-aaa9-59b9bf26cc0d&ticket=a204e6de-7909-4bf2-b7a8-2884189534bc"
},
{
"deliveryFormat": "QRCODE",
"deliveryValue": "1LTYVC"
}
]
}
},
{
"uuid": "9116e598-6713-4cb5-8ba4-e5b839f7a5d5",
"resellerReference": null,
"supplierReference": "A89VR8",
"unit": {
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
},
"unitId": "adult",
"status": "ON_HOLD",
"utcRedeemedAt": null,
"contact": {
"fullName": null,
"firstName": null,
"lastName": null,
"emailAddress": null,
"phoneNumber": null,
"locales": [],
"country": null,
"notes": null
},
"ticket": {
"redemptionMethod": "DIGITAL",
"utcRedeemedAt": null,
"deliveryOptions": [
{
"deliveryFormat": "PDF_URL",
"deliveryValue": "https://api.octomock.com/octo/pdf?booking=814d2566-2c71-4e6a-aaa9-59b9bf26cc0d&ticket=9116e598-6713-4cb5-8ba4-e5b839f7a5d5"
},
{
"deliveryFormat": "QRCODE",
"deliveryValue": "A89VR8"
}
]
}
}
]
}
]
Fetch the status of an existing booking.
The UUID of the booking
GET /octo/bookings/{uuid} HTTP/1.1
Host: api.example.com
Accept: */*
{
"id": "3ac5450f-8511-4386-9feb-17ce4f9e1f86",
"uuid": "ec0ce0c2-03f0-4c64-bbc5-5e0f7d1e1c0a",
"testMode": true,
"resellerReference": null,
"supplierReference": "ALG6RQ",
"status": "CONFIRMED",
"utcCreatedAt": "2022-05-25T11:03:22Z",
"utcUpdatedAt": "2022-05-25T11:03:31Z",
"utcExpiresAt": null,
"utcRedeemedAt": null,
"utcConfirmedAt": "2022-05-25T11:03:31Z",
"productId": "1",
"product": {
"id": "1",
"internalName": "PPU | OH",
"reference": null,
"locale": "en",
"timeZone": "Europe/London",
"allowFreesale": false,
"instantConfirmation": true,
"instantDelivery": true,
"availabilityRequired": true,
"availabilityType": "OPENING_HOURS",
"deliveryFormats": [
"PDF_URL",
"QRCODE"
],
"deliveryMethods": [
"TICKET",
"VOUCHER"
],
"redemptionMethod": "DIGITAL",
"options": [
{
"id": "DEFAULT",
"default": true,
"internalName": "DEFAULT",
"reference": null,
"availabilityLocalStartTimes": [
"00:00"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"requiredContactFields": [],
"restrictions": {
"minUnits": 0,
"maxUnits": null
},
"units": [
{
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
}
]
}
]
},
"optionId": "DEFAULT",
"option": {
"id": "DEFAULT",
"default": true,
"internalName": "DEFAULT",
"reference": null,
"availabilityLocalStartTimes": [
"00:00"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"requiredContactFields": [],
"restrictions": {
"minUnits": 0,
"maxUnits": null
},
"units": [
{
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
}
]
},
"cancellable": true,
"cancellation": null,
"freesale": false,
"availabilityId": "2022-04-30T00:00:00+01:00",
"availability": {
"id": "2022-04-30T00:00:00+01:00",
"localDateTimeStart": "2022-04-30T00:00:00+01:00",
"localDateTimeEnd": "2022-05-01T00:00:00+01:00",
"allDay": true,
"openingHours": [
{
"from": "09:00",
"to": "17:00"
}
]
},
"contact": {
"fullName": "John Doe",
"firstName": "John",
"lastName": "Doe",
"emailAddress": "johndoe@email.com",
"phoneNumber": null,
"locales": [],
"country": null,
"notes": null
},
"notes": null,
"deliveryMethods": [
"TICKET",
"VOUCHER"
],
"voucher": {
"redemptionMethod": "DIGITAL",
"utcRedeemedAt": null,
"deliveryOptions": [
{
"deliveryFormat": "PDF_URL",
"deliveryValue": "https://api.octomock.com/octo/pdf?booking=ec0ce0c2-03f0-4c64-bbc5-5e0f7d1e1c0a"
},
{
"deliveryFormat": "QRCODE",
"deliveryValue": "ALG6RQ"
}
]
},
"unitItems": [
{
"uuid": "25ec5429-d563-45f9-ba5b-85b03edbf65e",
"resellerReference": null,
"supplierReference": "EO6Q0P",
"unit": {
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
},
"unitId": "adult",
"status": "ON_HOLD",
"utcRedeemedAt": null,
"contact": {
"fullName": null,
"firstName": null,
"lastName": null,
"emailAddress": null,
"phoneNumber": null,
"locales": [],
"country": null,
"notes": null
},
"ticket": {
"redemptionMethod": "DIGITAL",
"utcRedeemedAt": null,
"deliveryOptions": [
{
"deliveryFormat": "PDF_URL",
"deliveryValue": "https://api.octomock.com/octo/pdf?booking=ec0ce0c2-03f0-4c64-bbc5-5e0f7d1e1c0a&ticket=25ec5429-d563-45f9-ba5b-85b03edbf65e"
},
{
"deliveryFormat": "QRCODE",
"deliveryValue": "EO6Q0P"
}
]
}
}
]
}
Reserving availability when making a booking. The steps to make a reservation are:
availabilityId
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.
Required field on all POST requests
A unique UUID to identify the booking. Setting this value acts like an idempotency key preventing you from double booking.
559aed3d-6d5b-4fe0-bfca-99f5e7218a56
The product ID for this booking.
6b903d44-dc24-4ca4-ae71-6bde6c4f4854
The option ID for this booking.
DEFAULT
The availability ID for the selected timeslot.
2021-10-27T00:00:00-04:00
How many minutes to reserve the availability, otherwise defaults to the supplier default amount.
30
Optional notes for the booking.
Optional notes
POST /octo/bookings HTTP/1.1
Host: api.example.com
Content-Type: application/json
Accept: */*
Content-Length: 230
{
"productId": "1a7213eb-3a33-4cbb-b114-64d771c201ac",
"optionId": "DEFAULT",
"availabilityId": "2020-07-01T14:30:00-05:00",
"notes": "Optional notes for the booking",
"unitItems": [
{
"unitId": "adult"
},
{
"unitId": "adult"
},
{
"unitId": "child"
}
]
}
{
"id": "602a9fdf-5c79-4984-9474-7e14da9b6027",
"uuid": "a88b4b8d-9c3b-4a09-ba27-323b43af57e4",
"testMode": true,
"resellerReference": null,
"supplierReference": "XOPSUT",
"status": "ON_HOLD",
"utcCreatedAt": "2022-05-25T10:34:22Z",
"utcUpdatedAt": "2022-05-25T10:34:22Z",
"utcExpiresAt": "2022-05-25T11:04:22Z",
"utcRedeemedAt": null,
"utcConfirmedAt": null,
"productId": "1",
"product": {
"id": "1",
"internalName": "PPU | OH",
"reference": null,
"locale": "en",
"timeZone": "Europe/London",
"allowFreesale": false,
"instantConfirmation": true,
"instantDelivery": true,
"availabilityRequired": true,
"availabilityType": "OPENING_HOURS",
"deliveryFormats": [
"PDF_URL",
"QRCODE"
],
"deliveryMethods": [
"TICKET",
"VOUCHER"
],
"redemptionMethod": "DIGITAL",
"options": [
{
"id": "DEFAULT",
"default": true,
"internalName": "DEFAULT",
"reference": null,
"availabilityLocalStartTimes": [
"00:00"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"requiredContactFields": [],
"restrictions": {
"minUnits": 0,
"maxUnits": null
},
"units": [
{
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
}
]
}
]
},
"optionId": "DEFAULT",
"option": {
"id": "DEFAULT",
"default": true,
"internalName": "DEFAULT",
"reference": null,
"availabilityLocalStartTimes": [
"00:00"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"requiredContactFields": [],
"restrictions": {
"minUnits": 0,
"maxUnits": null
},
"units": [
{
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
}
]
},
"cancellable": true,
"cancellation": null,
"freesale": false,
"availabilityId": "2022-04-30T00:00:00+01:00",
"availability": {
"id": "2022-04-30T00:00:00+01:00",
"localDateTimeStart": "2022-04-30T00:00:00+01:00",
"localDateTimeEnd": "2022-05-01T00:00:00+01:00",
"allDay": true,
"openingHours": [
{
"from": "09:00",
"to": "17:00"
}
]
},
"contact": {
"fullName": null,
"firstName": null,
"lastName": null,
"emailAddress": null,
"phoneNumber": null,
"locales": [],
"country": null,
"notes": null
},
"notes": null,
"deliveryMethods": [
"TICKET",
"VOUCHER"
],
"voucher": {
"redemptionMethod": "DIGITAL",
"utcRedeemedAt": null,
"deliveryOptions": []
},
"unitItems": [
{
"uuid": "6cbd2582-1345-4d8d-8223-ad004beebc1a",
"resellerReference": null,
"supplierReference": "CBIYWQ",
"unit": {
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
},
"unitId": "adult",
"status": "ON_HOLD",
"utcRedeemedAt": null,
"contact": {
"fullName": null,
"firstName": null,
"lastName": null,
"emailAddress": null,
"phoneNumber": null,
"locales": [],
"country": null,
"notes": null
},
"ticket": {
"redemptionMethod": "DIGITAL",
"utcRedeemedAt": null,
"deliveryOptions": []
}
}
]
}
This endpoint confirms the booking so it's ready to be used.
The UUID of the booking
Required field on all POST requests
Whether you want OCTO Cloud to email the guest a copy of their receipt and tickets. (defaults to false)
Your reference for this booking. Also known as a Voucher Number.
4ec08a62-892c-48c1-a608-dc946531a33b
POST /octo/bookings/{uuid}/confirm HTTP/1.1
Host: api.example.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 183
{
"resellerReference": "VOUCHER-0123",
"contact": {
"fullName": "Oliver Morgan",
"emailAddress": "ollym@me.com",
"phoneNumber": "+447840739436",
"locales": [
"en-GB",
"en-US",
"en"
],
"country": "GB"
}
}
{
"id": "3ac5450f-8511-4386-9feb-17ce4f9e1f86",
"uuid": "ec0ce0c2-03f0-4c64-bbc5-5e0f7d1e1c0a",
"testMode": true,
"resellerReference": null,
"supplierReference": "ALG6RQ",
"status": "CONFIRMED",
"utcCreatedAt": "2022-05-25T11:03:22Z",
"utcUpdatedAt": "2022-05-25T11:03:31Z",
"utcExpiresAt": null,
"utcRedeemedAt": null,
"utcConfirmedAt": "2022-05-25T11:03:31Z",
"productId": "1",
"product": {
"id": "1",
"internalName": "PPU | OH",
"reference": null,
"locale": "en",
"timeZone": "Europe/London",
"allowFreesale": false,
"instantConfirmation": true,
"instantDelivery": true,
"availabilityRequired": true,
"availabilityType": "OPENING_HOURS",
"deliveryFormats": [
"PDF_URL",
"QRCODE"
],
"deliveryMethods": [
"TICKET",
"VOUCHER"
],
"redemptionMethod": "DIGITAL",
"options": [
{
"id": "DEFAULT",
"default": true,
"internalName": "DEFAULT",
"reference": null,
"availabilityLocalStartTimes": [
"00:00"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"requiredContactFields": [],
"restrictions": {
"minUnits": 0,
"maxUnits": null
},
"units": [
{
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
}
]
}
]
},
"optionId": "DEFAULT",
"option": {
"id": "DEFAULT",
"default": true,
"internalName": "DEFAULT",
"reference": null,
"availabilityLocalStartTimes": [
"00:00"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"requiredContactFields": [],
"restrictions": {
"minUnits": 0,
"maxUnits": null
},
"units": [
{
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
}
]
},
"cancellable": true,
"cancellation": null,
"freesale": false,
"availabilityId": "2022-04-30T00:00:00+01:00",
"availability": {
"id": "2022-04-30T00:00:00+01:00",
"localDateTimeStart": "2022-04-30T00:00:00+01:00",
"localDateTimeEnd": "2022-05-01T00:00:00+01:00",
"allDay": true,
"openingHours": [
{
"from": "09:00",
"to": "17:00"
}
]
},
"contact": {
"fullName": "John Doe",
"firstName": "John",
"lastName": "Doe",
"emailAddress": "johndoe@email.com",
"phoneNumber": null,
"locales": [],
"country": null,
"notes": null
},
"notes": null,
"deliveryMethods": [
"TICKET",
"VOUCHER"
],
"voucher": {
"redemptionMethod": "DIGITAL",
"utcRedeemedAt": null,
"deliveryOptions": [
{
"deliveryFormat": "PDF_URL",
"deliveryValue": "https://api.octomock.com/octo/pdf?booking=ec0ce0c2-03f0-4c64-bbc5-5e0f7d1e1c0a"
},
{
"deliveryFormat": "QRCODE",
"deliveryValue": "ALG6RQ"
}
]
},
"unitItems": [
{
"uuid": "25ec5429-d563-45f9-ba5b-85b03edbf65e",
"resellerReference": null,
"supplierReference": "EO6Q0P",
"unit": {
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
},
"unitId": "adult",
"status": "ON_HOLD",
"utcRedeemedAt": null,
"contact": {
"fullName": null,
"firstName": null,
"lastName": null,
"emailAddress": null,
"phoneNumber": null,
"locales": [],
"country": null,
"notes": null
},
"ticket": {
"redemptionMethod": "DIGITAL",
"utcRedeemedAt": null,
"deliveryOptions": [
{
"deliveryFormat": "PDF_URL",
"deliveryValue": "https://api.octomock.com/octo/pdf?booking=ec0ce0c2-03f0-4c64-bbc5-5e0f7d1e1c0a&ticket=25ec5429-d563-45f9-ba5b-85b03edbf65e"
},
{
"deliveryFormat": "QRCODE",
"deliveryValue": "EO6Q0P"
}
]
}
}
]
}
For cancelling bookings. You can only cancel a booking if booking.cancellable
is TRUE
, and is within the booking cancellation cut-off window.
Required field on all DELETE requests
A text value describing why the cancellation happened.
Customer Requested
POST /octo/bookings/{uuid}/cancel HTTP/1.1
Host: api.example.com
Content-Type: application/json
Accept: */*
Content-Length: 31
{
"reason": "Customer Requested"
}
{
"id": "3ac5450f-8511-4386-9feb-17ce4f9e1f86",
"uuid": "ec0ce0c2-03f0-4c64-bbc5-5e0f7d1e1c0a",
"testMode": true,
"resellerReference": null,
"supplierReference": "ALG6RQ",
"status": "CANCELLED",
"utcCreatedAt": "2022-05-25T11:03:22Z",
"utcUpdatedAt": "2022-05-25T11:06:24Z",
"utcExpiresAt": null,
"utcRedeemedAt": null,
"utcConfirmedAt": null,
"productId": "1",
"product": {
"id": "1",
"internalName": "PPU | OH",
"reference": null,
"locale": "en",
"timeZone": "Europe/London",
"allowFreesale": false,
"instantConfirmation": true,
"instantDelivery": true,
"availabilityRequired": true,
"availabilityType": "OPENING_HOURS",
"deliveryFormats": [
"PDF_URL",
"QRCODE"
],
"deliveryMethods": [
"TICKET",
"VOUCHER"
],
"redemptionMethod": "DIGITAL",
"options": [
{
"id": "DEFAULT",
"default": true,
"internalName": "DEFAULT",
"reference": null,
"availabilityLocalStartTimes": [
"00:00"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"requiredContactFields": [],
"restrictions": {
"minUnits": 0,
"maxUnits": null
},
"units": [
{
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
}
]
}
]
},
"optionId": "DEFAULT",
"option": {
"id": "DEFAULT",
"default": true,
"internalName": "DEFAULT",
"reference": null,
"availabilityLocalStartTimes": [
"00:00"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"requiredContactFields": [],
"restrictions": {
"minUnits": 0,
"maxUnits": null
},
"units": [
{
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
}
]
},
"cancellable": false,
"cancellation": {
"refund": "FULL",
"reason": "this product sucks ",
"utcCancelledAt": "2022-05-25T11:06:24Z"
},
"freesale": false,
"availabilityId": "2022-04-30T00:00:00+01:00",
"availability": {
"id": "2022-04-30T00:00:00+01:00",
"localDateTimeStart": "2022-04-30T00:00:00+01:00",
"localDateTimeEnd": "2022-05-01T00:00:00+01:00",
"allDay": true,
"openingHours": [
{
"from": "09:00",
"to": "17:00"
}
]
},
"contact": {
"fullName": null,
"firstName": null,
"lastName": null,
"emailAddress": null,
"phoneNumber": null,
"locales": [],
"country": null,
"notes": null
},
"notes": null,
"deliveryMethods": [
"TICKET",
"VOUCHER"
],
"voucher": {
"redemptionMethod": "DIGITAL",
"utcRedeemedAt": null,
"deliveryOptions": []
},
"unitItems": []
}
Updates a booking before and after it has been confirmed as long as it hasn''t been redeemed or within the cancellation cutoff window. To know if the booking can be updated check the booking''s cancellable
field. If the booking can be cancelled, it can also be updated. It''s generally preferred to update a booking rather than cancelling it and rebooking.
The UUID of the booking
Required field on all PATCH requests
Your reference for this booking. Also known as a Voucher Number.
ec08a62-892c-48c1-a608-dc946531a33b
The product ID.
6b903d44-dc24-4ca4-ae71-6bde6c4f4854
The option id.
DEFAULT
The availability ID for the selected timeslot.
How many minutes to reserve the availability, otherwise defaults to the supplier default amount.
Optional notes for the booking.
Whether you want OCTO Cloud to email the guest a copy of their receipt and tickets. (defaults to false).
PATCH /octo/bookings/{uuid} HTTP/1.1
Host: api.example.com
Content-Type: application/json
Accept: */*
Content-Length: 692
{
"resellerReference": "ec08a62-892c-48c1-a608-dc946531a33b",
"productId": "6b903d44-dc24-4ca4-ae71-6bde6c4f4854",
"optionId": "DEFAULT",
"availabilityId": "text",
"expirationMinutes": "text",
"notes": "text",
"emailReceipt": true,
"unitItems": [
{
"uuid": "text",
"unitId": "text",
"resellerReference": "text",
"contact": {
"fullName": "John Doe",
"firstName": "John",
"lastName": "Doe",
"emailAddress": "johndoe@gmail.com",
"phoneNumber": "text",
"locales": [
"[\"en\"]"
],
"postalCode": "text",
"country": "text",
"notes": "text"
}
}
],
"contact": {
"fullName": "John Doe",
"firstName": "John",
"lastName": "Doe",
"emailAddress": "johndoe@gmail.com",
"phoneNumber": "text",
"locales": [
"[\"en\"]"
],
"postalCode": "text",
"country": "text",
"notes": "text"
}
}
{
"id": "3ef65048-5ffe-474f-8a5c-fb35a9faa6ed",
"uuid": "814d2566-2c71-4e6a-aaa9-59b9bf26cc0d",
"testMode": true,
"resellerReference": null,
"supplierReference": "RNSRSM",
"status": "CONFIRMED",
"utcCreatedAt": "2022-05-25T11:07:05Z",
"utcUpdatedAt": "2022-05-25T11:09:32Z",
"utcExpiresAt": null,
"utcRedeemedAt": null,
"utcConfirmedAt": "2022-05-25T11:09:32Z",
"productId": "1",
"product": {
"id": "1",
"internalName": "PPU | OH",
"reference": null,
"locale": "en",
"timeZone": "Europe/London",
"allowFreesale": false,
"instantConfirmation": true,
"instantDelivery": true,
"availabilityRequired": true,
"availabilityType": "OPENING_HOURS",
"deliveryFormats": [
"PDF_URL",
"QRCODE"
],
"deliveryMethods": [
"TICKET",
"VOUCHER"
],
"redemptionMethod": "DIGITAL",
"options": [
{
"id": "DEFAULT",
"default": true,
"internalName": "DEFAULT",
"reference": null,
"availabilityLocalStartTimes": [
"00:00"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"requiredContactFields": [],
"restrictions": {
"minUnits": 0,
"maxUnits": null
},
"units": [
{
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
}
]
}
]
},
"optionId": "DEFAULT",
"option": {
"id": "DEFAULT",
"default": true,
"internalName": "DEFAULT",
"reference": null,
"availabilityLocalStartTimes": [
"00:00"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"requiredContactFields": [],
"restrictions": {
"minUnits": 0,
"maxUnits": null
},
"units": [
{
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
}
]
},
"cancellable": true,
"cancellation": null,
"freesale": false,
"availabilityId": "2022-04-30T00:00:00+01:00",
"availability": {
"id": "2022-04-30T00:00:00+01:00",
"localDateTimeStart": "2022-04-30T00:00:00+01:00",
"localDateTimeEnd": "2022-05-01T00:00:00+01:00",
"allDay": true,
"openingHours": [
{
"from": "09:00",
"to": "17:00"
}
]
},
"contact": {
"fullName": "test",
"firstName": null,
"lastName": null,
"emailAddress": "test@test.test",
"phoneNumber": null,
"locales": [],
"country": null,
"notes": null
},
"notes": null,
"deliveryMethods": [
"TICKET",
"VOUCHER"
],
"voucher": {
"redemptionMethod": "DIGITAL",
"utcRedeemedAt": null,
"deliveryOptions": [
{
"deliveryFormat": "PDF_URL",
"deliveryValue": "https://api.octomock.com/octo/pdf?booking=814d2566-2c71-4e6a-aaa9-59b9bf26cc0d"
},
{
"deliveryFormat": "QRCODE",
"deliveryValue": "RNSRSM"
}
]
},
"unitItems": [
{
"uuid": "a204e6de-7909-4bf2-b7a8-2884189534bc",
"resellerReference": null,
"supplierReference": "1LTYVC",
"unit": {
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
},
"unitId": "adult",
"status": "ON_HOLD",
"utcRedeemedAt": null,
"contact": {
"fullName": null,
"firstName": null,
"lastName": null,
"emailAddress": null,
"phoneNumber": null,
"locales": [],
"country": null,
"notes": null
},
"ticket": {
"redemptionMethod": "DIGITAL",
"utcRedeemedAt": null,
"deliveryOptions": [
{
"deliveryFormat": "PDF_URL",
"deliveryValue": "https://api.octomock.com/octo/pdf?booking=814d2566-2c71-4e6a-aaa9-59b9bf26cc0d&ticket=a204e6de-7909-4bf2-b7a8-2884189534bc"
},
{
"deliveryFormat": "QRCODE",
"deliveryValue": "1LTYVC"
}
]
}
},
{
"uuid": "9116e598-6713-4cb5-8ba4-e5b839f7a5d5",
"resellerReference": null,
"supplierReference": "A89VR8",
"unit": {
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
},
"unitId": "adult",
"status": "ON_HOLD",
"utcRedeemedAt": null,
"contact": {
"fullName": null,
"firstName": null,
"lastName": null,
"emailAddress": null,
"phoneNumber": null,
"locales": [],
"country": null,
"notes": null
},
"ticket": {
"redemptionMethod": "DIGITAL",
"utcRedeemedAt": null,
"deliveryOptions": [
{
"deliveryFormat": "PDF_URL",
"deliveryValue": "https://api.octomock.com/octo/pdf?booking=814d2566-2c71-4e6a-aaa9-59b9bf26cc0d&ticket=9116e598-6713-4cb5-8ba4-e5b839f7a5d5"
},
{
"deliveryFormat": "QRCODE",
"deliveryValue": "A89VR8"
}
]
}
}
]
}
Use this endpoint to hold the availability for a booking longer if the status is ON_HOLD
.
The UUID of the booking
Required field on all POST requests
15
POST /octo/bookings/{uuid}/extend HTTP/1.1
Host: api.example.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 23
{
"expirationMinutes": 0
}
{
"id": "602a9fdf-5c79-4984-9474-7e14da9b6027",
"uuid": "a88b4b8d-9c3b-4a09-ba27-323b43af57e4",
"testMode": true,
"resellerReference": null,
"supplierReference": "XOPSUT",
"status": "ON_HOLD",
"utcCreatedAt": "2022-05-25T10:34:22Z",
"utcUpdatedAt": "2022-05-25T10:34:22Z",
"utcExpiresAt": "2022-05-25T11:04:22Z",
"utcRedeemedAt": null,
"utcConfirmedAt": null,
"productId": "1",
"product": {
"id": "1",
"internalName": "PPU | OH",
"reference": null,
"locale": "en",
"timeZone": "Europe/London",
"allowFreesale": false,
"instantConfirmation": true,
"instantDelivery": true,
"availabilityRequired": true,
"availabilityType": "OPENING_HOURS",
"deliveryFormats": [
"PDF_URL",
"QRCODE"
],
"deliveryMethods": [
"TICKET",
"VOUCHER"
],
"redemptionMethod": "DIGITAL",
"options": [
{
"id": "DEFAULT",
"default": true,
"internalName": "DEFAULT",
"reference": null,
"availabilityLocalStartTimes": [
"00:00"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"requiredContactFields": [],
"restrictions": {
"minUnits": 0,
"maxUnits": null
},
"units": [
{
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
}
]
}
]
},
"optionId": "DEFAULT",
"option": {
"id": "DEFAULT",
"default": true,
"internalName": "DEFAULT",
"reference": null,
"availabilityLocalStartTimes": [
"00:00"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"requiredContactFields": [],
"restrictions": {
"minUnits": 0,
"maxUnits": null
},
"units": [
{
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
}
]
},
"cancellable": true,
"cancellation": null,
"freesale": false,
"availabilityId": "2022-04-30T00:00:00+01:00",
"availability": {
"id": "2022-04-30T00:00:00+01:00",
"localDateTimeStart": "2022-04-30T00:00:00+01:00",
"localDateTimeEnd": "2022-05-01T00:00:00+01:00",
"allDay": true,
"openingHours": [
{
"from": "09:00",
"to": "17:00"
}
]
},
"contact": {
"fullName": null,
"firstName": null,
"lastName": null,
"emailAddress": null,
"phoneNumber": null,
"locales": [],
"country": null,
"notes": null
},
"notes": null,
"deliveryMethods": [
"TICKET",
"VOUCHER"
],
"voucher": {
"redemptionMethod": "DIGITAL",
"utcRedeemedAt": null,
"deliveryOptions": []
},
"unitItems": [
{
"uuid": "6cbd2582-1345-4d8d-8223-ad004beebc1a",
"resellerReference": null,
"supplierReference": "CBIYWQ",
"unit": {
"id": "adult",
"internalName": "adult",
"reference": "adult",
"type": "ADULT",
"requiredContactFields": [],
"restrictions": {
"minAge": 18,
"maxAge": 100,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": []
}
},
"unitId": "adult",
"status": "ON_HOLD",
"utcRedeemedAt": null,
"contact": {
"fullName": null,
"firstName": null,
"lastName": null,
"emailAddress": null,
"phoneNumber": null,
"locales": [],
"country": null,
"notes": null
},
"ticket": {
"redemptionMethod": "DIGITAL",
"utcRedeemedAt": null,
"deliveryOptions": []
}
}
]
}