Endpoints & Capabilities
OCTO defines a number of Core Endpoints that are applicable to most use cases and are required for the implementation.
Since not all use cases can be fulfilled with just the core endpoints, OCTO provides a concept of Capabilities, allowing for enhancement to the integrations based on specific needs. Capabilities are optional for implementation and to enhance integration by, for example, adding additional information about pricing, content, pickups, etc.
OCTO API Core Endpoints
Get Products
GET
Returns a list of Products and associated details.
Get Product
GET
Returns a single Product and associated details for a given Product ID.
Availablity Calendar
POST
Returns availability for a given Product & Option as a single object per day. Optimized to be queried for large date ranges and to populate an availability calendar.
Availability Check
POST
Returns availability for a given Product & Option as a single object per start time (or day). You have to perform this step to retrieve an availabilityId
required for Bookings.
Booking Reservation
POST
Creates a booking that reserves the availability (e.g. while you collect payment and contact information from the customer) for a given availabilityId
. The booking will remain with the status ON_HOLD
until Booking Confirmation or when the reservation hold expires.
Booking Confirmation
POST
Confirms previously placed Booking Reservation, finalizing the booking and making it ready to be used.
Booking Update
PATCH
Updates/changes your booking before and after it has been confirmed as long as it hasn't yet been redeemed or within the cancellation cutoff window.
Booking Cancellation
POST
Cancels your booking. You can only cancel a booking if booking.cancellable
is TRUE
, and is within the booking cancellation cut-off window.
Extend Reservation
POST
Extends the Booking Reservation availability hold if the booking status is ON_HOLD
.
Get Booking
GET
Returns the status and details of your existing booking.
Get Bookings
GET
Returns the list of the bookings you made for the given filters.
Capabilities
Note the Capabilities listed on this page are NOT yet part of the official OCTO Specification and are provided for reference only.
octo/pricing
octo/content
octo/pickups
You control which capabilities you want to enable by using the Octo-Capabilities
header. For example:
It's also possible to use the _capabilities
query parameter if you're unable to use headers:
You can list all the capabilities with a comma to separate each one.
Last updated