Resources
Adds the ability to see and edit resource allocations
To use this capability add octo/resources
to your Octo-Capabilities
header.
Resources are allocated to each booking and determine the availability of some products. For example a resource might be a bus with 30 seats, and if 2 busses were assigned to the 9:00am departure availability then the capacity returned by the availability response would be 60. However it may be preferable to allow the guest to see each bus and specify which they prefer to be booked onto. This is what this capability is intended to allow.
Even for products that rely on resources, using this capability is entirely optional. We will automatically behind the scenes allocate the best resources and seats.
Check Available Resources
POST
https://api.ventrata.com/octo/availability/resources
Returns a list of available resources for the given availability
Request Body
Name | Type | Description |
---|---|---|
productId* | String | The product ID |
optionId* | String | The option ID |
availabilityId* | String | The availability ID |
units[].id | String | The unit id |
units[].quantity | Integer | The quantity of the unit |
The response body will be an array of resource groups defined as:
Field | Description |
---|---|
| The resource group id |
| The resource group id |
| The resource group name |
| Whether a booking can be split between multiple resources within this group |
| The resource id |
| The resource id |
| The resource name |
| Does this resource have reserved seating or not (boolean) |
| An array of all the possible seats in this resource, which will allow you to create a seat map. The seat object will be defined in the table below as it's used in multiple different areas. |
| A list of available seats, the schema for seat is defined below. |
| The status of that date. Possible values are:
|
| A boolean value (true or false) indicating whether you're able to sell tickets. This is basically just an alias for: |
| The maximum number of space left available on this resource. |
| The total capacity this resource can hold |
| The maximum number of units that can be bought in a single booking. |
Note each booking must have enough resources from EVERY resource group allocated. If resourceGroup.split
is true
then you may split the booking between multiple resources in that group, otherwise you must pick a resource that has enough space to fit the booking you're trying to make.api
Booking Reservation
POST
https://api.ventrata.com/octo/bookings
When making a booking reservation this allows you to specify which resources you want to allocate.
An example body would look like this:
The fields should be obvious, but for clarity:
Field | Description |
---|---|
| The resource group id |
| The resource id |
| The size you wan't to allocate. If the resource group has |
| An array of seats to reserve (if resource.seating is true). This is entirely optional and if left out the best available seats will automatically be selected. |
If successfully created the booking object will echo these fields back including the expanded fields, for example:
Last updated