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.
List Products
GET
https://api.zaui.io/octo/products/
Provides a list of all available products for resell provided by the supplier.
[
{
"id": "cabfc194-9443-40fa-8342-85ed9d8ec58c",
"internalName": "11:00am - Wilderness Run",
"reference": null,
"locale": "en-US",
"timeZone": "America/Vancouver",
"allowFreesale": false,
"availabilityRequired": true,
"availabilityType": "START_TIME",
"deliveryFormats": [
"QRCODE"
],
"deliveryMethods": [
"VOUCHER",
"TICKET"
],
"redemptionMethod": "DIGITAL",
"instantConfirmation": true,
"instantDelivery": true,
"options": [
{
"id": "DEFAULT",
"default": true,
"internalName": "Standard Tour 11:00:00",
"reference": null,
"restrictions": {
"minUnits": null,
"maxUnits": null
},
"availabilityLocalStartTimes": [
"11:00", "12:00"
],
"requiredContactFields": [
"firstName",
"lastName"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"units": [
{
"id": "seniors_83af6d2c-1c35-4728-ac03-3418a75c5579",
"internalName": "SENIORS",
"reference": "Single Rider $239",
"type": "SENIORS",
"requiredContactFields": [
"firstName",
"lastName"
],
"restrictions": {
"minAge": 0,
"maxAge": 99,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": [
"seniors_83af6d2c-1c35-4728-ac03-3418a75c5579"
]
}
},
{
"id": "adults_0e064227-c793-426b-857c-2d1fcba62582",
"internalName": "ADULTS",
"reference": "Double Rider $239",
"type": "ADULTS",
"requiredContactFields": [
"firstName",
"lastName"
],
"restrictions": {
"minAge": 0,
"maxAge": 99,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": [
"adults_0e064227-c793-426b-857c-2d1fcba62582"
]
}
}
]
}
]
},
//Many Product Objects
]
Response keys:
Get Product
GET
https://api.zaui.io/octo/products/{id}
This endpoint will respond with a single product object.
Path Parameters
{
"id": "cabfc194-9443-40fa-8342-85ed9d8ec58c",
"internalName": "Vancouver Sightseeing Tour",
"reference": null,
"locale": "en-US",
"timeZone": "America/Vancouver",
"allowFreesale": true,
"availabilityRequired": true,
"availabilityType": "START_TIME",
"deliveryFormats": [
"QRCODE"
],
"deliveryMethods": [
"VOUCHER",
"TICKET"
],
"redemptionMethod": "DIGITAL",
"instantConfirmation": true,
"instantDelivery": true,
"options": [
{
"id": "DEFAULT",
"default": true,
"internalName": "Standard Tour 16:00:00",
"reference": null,
"restrictions": {
"minUnits": null,
"maxUnits": null
},
"availabilityLocalStartTimes": [
"10:00", "12:00"
],
"requiredContactFields": [
"firstName",
"lastName"
],
"cancellationCutoff": "0 hours",
"cancellationCutoffAmount": 0,
"cancellationCutoffUnit": "hour",
"units": [
{
"id": "adults_0e064227-c793-426b-857c-2d1fcba62582",
"internalName": "ADULTS",
"reference": "Adults",
"type": "ADULTS",
"requiredContactFields": [
"firstName",
"lastName"
],
"restrictions": {
"minAge": 0,
"maxAge": 99,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": [
"adults_0e064227-c793-426b-857c-2d1fcba62582"
]
}
},
{
"id": "students_53gf6t2c-1c35-4728-dc03-5328a75c5579",
"internalName": "STUDENTS",
"reference": "Students",
"type": "STUDENTS",
"requiredContactFields": [
"firstName",
"lastName"
],
"restrictions": {
"minAge": 0,
"maxAge": 99,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": [
"students_53gf6t2c-1c35-4728-dc03-5328a75c5579"
]
}
},
{
"id": "children_ea3b2ef2-a035-45d4-9a65-9f86b779f7df",
"internalName": "CHILDREN",
"reference": "Children",
"type": "CHILDREN",
"requiredContactFields": [
"firstName",
"lastName"
],
"restrictions": {
"minAge": 0,
"maxAge": 99,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": [
"children_ea3b2ef2-a035-45d4-9a65-9f86b779f7df"
]
}
},
{
"id": "infants_8acdc5fe-97ed-4f68-a2c3-84fe74b3e3e5",
"internalName": "INFANTS",
"reference": "Infants",
"type": "INFANTS",
"requiredContactFields": [
"firstName",
"lastName"
],
"restrictions": {
"minAge": 0,
"maxAge": 99,
"idRequired": false,
"minQuantity": null,
"maxQuantity": null,
"paxCount": 1,
"accompaniedBy": [
"infants_8acdc5fe-97ed-4f68-a2c3-84fe74b3e3e5"
]
}
}
]
}
]
}
Response from this endpoint is the same as GET
/products/
except as a single Product object.
Last updated