O
O
OCTo
Search…
Products
Mapping the supplier available products and options to your reseller system.
Most reseller systems have a database of products. You will need to map to products returned in this API call.
The main components that you are required to map are: Product, Options, Units
The product ID, at least one option and units are required for inventory checks and booking calls. These are required for subsequent calls.
get
https://api.zaui.io/octo
/suppliers/:id/products/
List Products
Response keys:
Field
Description
id
Product ID. You need to save this.
internalName
Product name used by the supplier.
reference
An optional code this supplier might use to identify the product.
locale
A language code indicating what language this product content is in.
timeZone
The IANA TimeZone name this product is located in.
allowFreesale
Whether a booking can be made for this product without having to query availability first.
availabilityRequired
Whether an availabilityId is required when creating a booking. Without this, the booking will be open-dated and not have a specified travel date.
availabilityType
What type of availability this product has, possible values are: START_TIME if there are fixed departure times which you must pick one. Typical for day tours or activities. OPENING_HOURS if you just select a date and can visit any time when the venue is open.
deliveryFormats
An array of formats the API will deliver the tickets as. Possible values are:
QRCODE A code to be presented as a QR CODE barcode
CODE128A code to be presented as a CODE 128 barcode
PDF_URL A URL to a PDF file that contains all the ticket details
deliveryMethods
How the formats described in deliveryFormats will be delivered in the booking response, possible values are:
TICKET Individually per unit in the order (i.e. single ticket for each person)
VOUCHER One ticket for the whole booking
redemptionMethod
How must the guest present the ticket or voucher when they arrive at the venue. Possible values are:
MANIFEST The guest name will be written down and they just need to show up
DIGITAL The tickets/voucher must be scanned but can be on mobile
PRINT The tickets/voucher must be printed and presented on arrival
capabilities
Capabilities define API extensions that this product supports. Capabilities can be enabled using a special HTTP header that's described in the next section.
capabilities[].id
The capability id which identifies it
capabilities[].revision
An integer that will increment each time the specification for this capability is updated.
capabilities[].documentation
URL to the documentation describing this capability.
capabilities[].required
Whether this product cannot be sold without this capability being used.
capabilities[].dependencies
An array of other capability ids that this capability depends on.
options
An array of all options for this product, this list will not be empty.
options[].id
The id that identifies this option and is only unique within the product.
options[].default
If there is only one option this value is true to indicate it is the default and therefore doesn't need to be displayed.
options[].internalName
Like product internalName except for each option.
options[].reference
Like product reference except for each option.
options[].restrictions
An object containing a fixed list of restrictions. Keys and values are:
minUnits The minimum number of tickets that can be purchased in a single booking (null = 0)
maxUnits The maximum number of tickets that can be purchased in a single booking (null = unlimited)
options[].cancellationCutoff
This is how long before the tour the booking can be still be cancelled. We also provide booking.cancellable (boolean) which we recommend you use instead to know if the booking can be cancelled.
options[].cancellationCutOffAmount
An integer representing the cut-off amount.
options[].cancellationCutOffUnit
The cut-off unit. Values: minute, hour or day.
options[].units
The list of ticket types (units) available for sale.
options[].units[].id
The id of the unit that is unique to the option.
options[].units[].internalName
Like product/option internalName but for units.
options[].units[].reference
Like product/option reference but for units.
options[].units[].type
This is the ticket type of the unit, values are: SENIORS, ADULTS, STUDENTS, CHILDREN, INFANTS
options[].units[].restrictions
An object containing restrictions about this unit. Possible keys and values are:
minAge An integer indicating the minimum age for the person this unit is for.
maxAge An integer indicating the maximum age for the person this unit is for.
idRequired A Boolean value indicating whether the person this unit is for must show ID on arrival.
minQuantity The minimum quantity of this unit required per booking (null = no minimum) maxQuantity The maximum quantity of this unit required per booking (null = no limit) accompaniedBy An array of unit ids one of which must accompany this unit if it is purchased.
get
https://api.zaui.io/octo
/suppliers/:sid/products/:id
Get Product
Response from this endpoint is the same as GET /products/ except as a single Product object.
Last modified 1mo ago