Viator Reservation System API is one of 9 APIs that Viator publishes on the APIs.io network, described by a machine-readable OpenAPI specification.
Tagged areas include Supplier, Connectivity, Channel Manager, Inventory, and Reservation System. The published artifact set on APIs.io includes an OpenAPI specification and API documentation.
This API exposes
15 operations
across 15 paths,
organized into 3 resource areas,
and defines 84 schemas.
It is described by OpenAPI 3.0.0.
Requests are made against a single base URL, https://your-reservation-system.example.com.
The identity and technical contract details declared by the specification.
SupplierId
integer
Viator’s unique Supplier identifier.
BaseRequest
object
Base request object.
1 property
1 required
ProductOptionId
string
Unique reservation system product option identifier. This identifier is sourced from the [Tour List API](operation/tourList) response.
ProductOptionRequest
object
List of reservation system product options and associated start times for which availability and pricing is being requested.
2 properties
1 required
TravelDate
string
The date of travel. Value is in date format YYYY-MM-DD.
TicketRequest
object
List of ticket types for which availability and pricing is being requested
2 properties
2 required
TotalTravelers
integer
Total number of travelers/passengers across all ticket types.
Currency
string
The ISO 4217 alphanumeric currency code in which prices are being returned. ISO 4217 is the International Standard for currency codes. For more information vis…
EventStatus
string
The availability status. Represents the availability or unavailability of capacity to allow a booking for the requested quantity of tickets. One of: - AVAILABL…
StartTime
string
Start time or departure time for the event. Value is in time format hh:mm.
CapacityType
string
The capacity type. Represents the type of capacity in an event. One of: - UNLIMITED - Used when the capacity is unlimited. There is no restriction on the numbe…
UnlimitedCapacity
object
1 property
1 required
CapacityTicketInformation
object
List of ticket types for which availability (capacity) is being returned
3 properties
3 required
LimitedCapacity
object
Used when the product option is capacity limited. Represents the availability (capacity) of one occurrence of the product option. May be associated with a star…
4 properties
4 required
EventCapacity
The type of capacity of an event along with the relevant amounts for all ticket types. Used to determine if bookings should be permitted, and to drive merchand…
BookingCutoff
string
Booking cut-off represents the point in time after which the tour option may no longer be purchased for the travelDate. Value is in Timestamp (UTC) format.
PriceType
string
Machine-interpretable value that specifies the type of price. One of: - PERPERSONPRICE - Product is priced per person/traveler. Price is the same per person ir…
TravelerTypes
array
Machine-interpretable value that specifies the type of traveler. One of: - ADULT - SENIOR - YOUTH - CHILD - INFANT
RetailPricePerPerson
number
The Recommended Retail Price (RRP) is the immediate effective price that customers will pay per traveler type.
Discount
object
Discount applicable to price of the Event.
2 properties
1 required
PerPersonPriceDetails
object
Price element that applies to one or various traveler types. For example, there can be a price for adults and children and another one for seniors.
4 properties
2 required
PerPersonPrice
object
Price root element. Holds price information.
2 properties
2 required
RetailPricePerUnit
number
The Recommended Retail Price (RRP) is the total price a customer will pay for a unit or group, assuming the maximum number of travelers (maxTravelers). This pr…
PerUnitPrice
object
Price element for the price per unit.
5 properties
3 required
UnsupportedPrice
object
Price element representing an unsupported pricing model.
2 properties
2 required
Event
object
Represents the presence of availability, along with pricing, of an occurrence of the product option on the requested travelDate. May be associated with a start…
5 properties
4 required
UnavailableReason
string
Machine-interpretable value that specifies the reason why the event, or occurrence of the product option and (when applicable) associated startTime, is unavail…
UnavailableEvent
object
Represents the lack of availability of one occurrence of the product option. May be associated with a start time.
5 properties
4 required
ProductOption
object
List of reservation system product option identifiers for which events (start time, capacity, pricing) are being returned. - If a requested product option is a…
3 properties
3 required
AvailabilityCheckResponse
object
Response object for the Real-time Availability check Operation.
1 property
1 required
ContentErrorResponse
object
Error response object
2 properties
1 required
InternalErrorResponse
object
Error response object
2 properties
1 required
CalendarRequest
object
Request object for the Calendar Operation.
3 properties
3 required
Hours
object
2 properties
2 required
OpeningHours
object
Lists the operating hours of the product option of the travelDate.
2 properties
2 required
CalendarPriceType
string
Machine-interpretable value that specifies the type of price in the Calendar API. One of: - PERPERSONPRICE - Product is priced per person/traveler. - TIEREDPER…
CalendarPerPersonPrice
object
Price root element. Holds price information.
2 properties
2 required
CalendarPerUnitPrice
object
Price element for the price per unit.
5 properties
3 required
TieredPerPersonPrice
object
Price root element for tiered per-person pricing.
2 properties
2 required
CalendarUnsupportedPrice
object
Price element representing an unsupported pricing model.
2 properties
2 required
CalendarEvent
object
Represents the presence of availability, along with pricing, of an occurrence of the product option on the travelDate.
6 properties
4 required
UnavailableCalendarEvent
object
Represents the lack of availability of one occurrence of the product option.
7 properties
5 required
CalendarResponse
object
Response object for the Calendar Operation.
1 property
1 required
ReservedResponse
object
Response object for the Reserve Operation (Reserved option only).
5 properties
5 required
NotReservedResponse
object
Response object for the Reserve Operation (Not Reserved option).
2 properties
2 required
ReserveUnprocessableContentResponse
object
Response object for Unprocessable Content Reserve Response
2 properties
1 required
SpecialOffersRequest
object
Request object for the Special Offers Operation.
2 properties
2 required
SpecialOfferType
string
Type of the special offer. One of: - “STANDARD” - a special offer that is applicable for a specific date range. Additional details available [here](https://hel…
SpecialOffer
object
Details of a special offer.
5 properties
4 required
SpecialOffersResponse
object
Response object for the Special Offers Operation.
1 property
1 required
EventNotificationResponse
object
Response object for multi-status Event Notification
1 property
1 required
EventNotificationUnprocessableContentResponse
object
Response object for Unprocessable Content Event Notification
2 properties
1 required
SpecialOffersNotificationRequest
object
Request object for the Special Offers Notification Operation.
2 properties
2 required
RequestResponseBase
object
Request Response Base.
5 properties
4 required
TourListRequest
Root element for Tour List Request
RequestStatus
object
Request status root element. Holds the status information for the requested transaction.
2 properties
1 required
TourLanguage
object
Holds the language of a tour.
2 properties
2 required
TourOptionBase
object
Tour option root element. Holds details pertaining to each of the product (tour) options (including default if no tour options exist).
4 properties
TourListResponse
Root element for Tour List Response
AvailabilityRequest
Root element for Real-time Availability Request
Price
object
Holds the information regarding the price for the associated Tour that was retrieved from the API.
2 properties
2 required
VersionTag
Version tag root element. Specifies the version for each changed DateAvailability. Version tagging allows availability responses to be tagged with one of: a ti…
AvailabilityResponse
Root element for Real-time Availability Response
BatchAvailabilityRequest
Root element for Batch Availability Request
BatchAvailabilityResponse
Root element for Batch Availability Response
BatchPricingRequest
Root element for Batch Pricing Request
BatchPricingResponse
Root element for Batch Pricing Response
BookingRequest
Root element for Booking Request
TourTicket
object
The ticket for the tour
2 properties
2 required
BookingResponse
Root element for Booking Response
BookingAmendmentRequest
Root element for Booking Amendment Request
BookingAmendmentResponse
Root element for Booking Amendment Response
BookingCancellationRequest
Root element for Booking Cancellation Request
BookingCancellationResponse
Root element for Booking Cancellation Response
RedemptionRequest
Root element for Redemption Request
RedemptionResponse
Root element for Redemption Response
AvailabilityNotification2Request
Root element for Availability Notification 2 Request
AvailabilityNotification2Response
Root element for Availability Notification 2 Response
The full machine-readable OpenAPI contract behind this narrative.
Other APIs Viator publishes across the network.