Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/viator-deprecated-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no email required.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Viator Reservation System Deprecated API
x-logo:
url: resources/img/sapi/Viator_Logo_RGB_Green.png
altText: Viator
href: https://www.viator.com
contact:
name: API Integrations Support
email: supplierAPI@viator.com
version: ''
description: "<style>\n/* ----------------------------------------------------------------------\n Stripe-inspired look & feel for the Viator Reservation System API docs.\n Layout (3-panel nav/content/code) is provided by Redoc; this layer adds\n typography, spacing and accent polish using Viator brand colors.\n Accent teal #00876A · dark code rail #0a2a2e · light sidebar #f6f8f8\n Type matches Stripe's scale (16px/400 body, weight-500 headings) and\n uses Stripe's own font stack (Söhne -> system fallback) set in redocly.yaml.\n ---------------------------------------------------------------------- */\n\n/* Logo: Viator wordmark, top-left of the sidebar (Stripe-style placement) */\nimg[alt=\"Viator\"] {\n height: 30px;\n width: auto;\n max-width: 80%;\n margin: 16px 0 10px 16px;\n display: block;\n}\n\n/* Smoother text rendering, closer to Stripe's docs */\nbody,\n.redoc-wrap,\n[data-component-id] {\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n text-rendering: optimizeLegibility;\n}\n\n/* Headings: match Stripe's type scale (weight 500, generous sizes, tight\n tracking). Scoped to .api-content with !important to win over Redoc's\n built-in heading sizes. */\n.api-content h1, .api-content h2, .api-content h3,\n.api-content h4, .api-content h5 {\n font-weight: 500 !important;\n}\n.api-content h1 {\n font-size: 38px !important;\n line-height: 48px !important;\n letter-spacing: -0.02em !important;\n}\n.api-content h2 {\n font-size: 28px !important;\n line-height: 36px !important;\n letter-spacing: -0.018em !important;\n}\n.api-content h3 {\n font-size: 20px !important;\n line-height: 28px !important;\n letter-spacing: -0.012em !important;\n}\n.api-content h4, .api-content h5 {\n font-weight: 600 !important;\n letter-spacing: -0.006em !important;\n}\n\n/* Links: teal with a subtle hover underline */\na, a:visited {\n color: #00876A;\n text-decoration: none;\n}\na:hover {\n color: #00694f;\n text-decoration: underline;\n}\n\n/* Sidebar: light, airy, Stripe-like with a thin divider */\n.menu-content {\n border-right: 1px solid #e3eae9;\n}\n.menu-content label[role=\"menuitem\"]:hover,\n.menu-content li[role=\"menuitem\"]:hover {\n background-color: #eef3f2;\n}\n\n/* Active nav item: teal accent bar */\n.menu-content label.active,\n.menu-content li.active > label {\n color: #00876A;\n box-shadow: inset 3px 0 0 0 #00876A;\n}\n\n/* Search box: rounded, soft border to match Stripe's input style */\n[role=\"search\"] input,\n.search-input {\n border: 1px solid #d7e0df !important;\n border-radius: 8px !important;\n}\n\n/* Center and add border to all images (preserved from original) */\np img {\n border-radius: 4px;\n border: 1px solid #ddd;\n margin-left: auto;\n margin-right: auto;\n display: block;\n margin-bottom: 28px;\n}\n</style>\n\n# Introduction\nThese API specifications detail the technical requirements for integrating operator reservation systems with Viator. This guide is intended for developers and technical teams to ensure a standardized implementation and reliable data exchange.\n\n# Prerequisites\nAccess is restricted to operators registered with Viator and their authorized reservation system providers. Integration workflows may only proceed following technical evaluation and formal approval by Viator.\n\nFurthermore, development **may only commence** if Viator registered operators are using the reservation system. For operator onboarding details, please refer to the [supplier sign-up page](https://supplier.viator.com/sign-up-info).\n\n# Getting Started\nReview the following core components to begin your implementation:\n\n- [What’s new](#tag/What's-new)\n- [Connectivity overview](#tag/Connectivity-overview)\n- [API overview](#tag/API-overview)\n- [Implementation approach](#tag/Implementation-approach)\n- [Frequently asked questions](#tag/FAQs)\n\nAdherence to these specifications is crucial for successful integration, guaranteeing optimal performance, data integrity, and a superior user experience for both operators and Viator customers. \n\nIf at any point you need clarification or help, please don’t hesitate to [contact us here](#tag/Contact-us).\n"
servers:
- url: https://your-reservation-system.example.com
description: Placeholder for the reservation system's own server — replace with your actual domain. Viator calls this host for all operations except event and special offer notifications, which are sent by the reservation system to Viator instead (see below).
tags:
- name: Deprecated
description: 'This section lists endpoints that are no longer recommended for new or updated integrations. These endpoints remain available for existing connections only, will stop receiving new features or behavior improvements, and will eventually be retired once an end-of-life procedure is agreed with Viator (see the [v2 migration guide](#tag/v2-migration-guide) for details).
For all new development, use the current, fully supported endpoints documented in the main sections of this guide.
### REST v1.0 endpoints — deprecated
- [Real-time Availability API](#operation/availability) — superseded by the Availability Check API and Reserve API
- [Batch Availability API](#operation/batchAvailability) — superseded by the Calendar API
- [Batch Pricing API](#operation/batchPricing) — superseded by the Calendar API
- [Availability Notifications (2) API](#operation/availabilityNotification2) — superseded by the Event Notifications API
### Data format: XML — deprecated
XML (`application/xml`) requests and responses are deprecated. **New integrations must use JSON (`application/json`) exclusively.** XML remains available for existing v1.0 integrations only and will receive no new features or behavior improvements. All v2.0 endpoints are JSON-only. XML will eventually be retired once an end-of-life procedure is agreed with Viator.
### SOAP interface (WSDL/XSD) — deprecated
The legacy SOAP interface definitions are deprecated. SOAP is no longer supported for new or updated integrations; use the REST endpoints documented in the main sections of this guide instead.
The WSDL and XSD files are kept for historical reference only:
- [Reseller-to-supplier WSDL](resources/api_specs/wsdl/tgds-reseller-to-supplier.wsdl)
- [Supplier-to-reseller WSDL](resources/api_specs/wsdl/tgds-supplier-to-reseller.wsdl)
- [API XSD](resources/api_specs/xsd/api.xsd)
'
paths:
/availability:
post:
summary: Real-time Availability
operationId: availability
tags:
- Deprecated
description: "The Real-time Availability API (v1.0) enables Viator to instantly verify the capacity and availability of a product or product option for a specified number of passengers. \n\nThis versatile API allows reservation systems to provide tour availability data for single dates or a range of dates. Viator then uses this information to either allow (if available) or prevent (if unavailable) customer bookings.\n\nWhen used for a **single date**, the API's main purpose is to confirm real-time availability during a customer's booking process for a specific date and passenger count. If the reservation system confirms availability, the customer can complete their booking. This direct check with the reservation system is expected to decrease booking rejections and increase last-minute reservations.\n\nTo reduce latency, Viator also conducts periodic single-date availability checks, though these do not include traveler mix information as they are not tied to user activity. \n\nIn contrast, when the Availability API is used with a **date range**, its aim is to determine future availability. This data is stored within Viator's systems, allowing for caching of availability information. This cached data is crucial in situations where the reservation system cannot be accessed for real-time availability checks (e.g., due to a communication line disruption).\n\n### Supported customer booking flows\nAs the customer progresses through their workflow, real-time availability requests are made at three distinct stages. Below lists key information in requests and responses:\n1. **Product and Date Selection**: When the traveler chooses a product, a specific travel date, and their desired traveler mix.\n - Requests include: `StartDate`, `SupplierProductCode`, and `TravellerMix`.\n - Response returns: All available `TourOptions` for customer selection.\n2. **Product option selection and adding to Cart**: After the traveler selects a product option and adds the product to their shopping cart.\n - Requests include: `StartDate`, `SupplierProductCode`, `TourOptions` and `TravellerMix`.\n - Response returns: Availability status for the requested product variant defined by `SupplierProductCode` and `TourOptions` and `TravellerMix`. \n3. **Checkout**: When the traveler proceeds to the checkout process.\n - Requests include: `StartDate`, `SupplierProductCode`, `TravellerMix`, `TourOptions`, and `AvailabilityHold`.\n - Response returns: Availability and inventory hold status for the requested product variant defined by `SupplierProductCode` and `TourOptions` and `TravellerMix`.\n"
requestBody:
content:
application/json:
schema:
allOf:
- type: object
properties:
requestType:
type: string
description: '`AvailabilityRequest`'
- type: object
properties:
data:
$ref: '#/components/schemas/AvailabilityRequest'
required:
- requestType
- data
examples:
workflow1:
$ref: '#/components/examples/availabilityRequestWorkflow1Json'
workflow2:
$ref: '#/components/examples/availabilityRequestWorkflow2Json'
workflow3:
$ref: '#/components/examples/availabilityRequestWorkflow3Json'
singleDate:
$ref: '#/components/examples/availabilitySingleDateRequestJson'
dateRange:
$ref: '#/components/examples/availabilityDateRangeRequestJson'
application/xml:
schema:
allOf:
- type: object
properties:
AvailabilityRequest:
$ref: '#/components/schemas/AvailabilityRequest'
required:
- AvailabilityRequest
examples:
workflow1:
$ref: '#/components/examples/availabilityRequestWorkflow1Xml'
workflow2:
$ref: '#/components/examples/availabilityRequestWorkflow2Xml'
workflow3:
$ref: '#/components/examples/availabilityRequestWorkflow3Xml'
singleDate:
$ref: '#/components/examples/availabilitySingleDateRequestXml'
dateRange:
$ref: '#/components/examples/availabilityDateRangeRequestXml'
responses:
'200':
description: Success
content:
application/json:
schema:
allOf:
- type: object
properties:
responseType:
type: string
description: '`AvailabilityResponse`'
- type: object
properties:
data:
$ref: '#/components/schemas/AvailabilityResponse'
required:
- responseType
- data
examples:
singleDate:
$ref: '#/components/examples/availabilitySingleDateResponseJson'
dateRange:
$ref: '#/components/examples/availabilityDateRangeResponseJson'
application/xml:
schema:
allOf:
- type: object
properties:
AvailabilityResponse:
$ref: '#/components/schemas/AvailabilityResponse'
required:
- AvailabilityResponse
examples:
singleDate:
$ref: '#/components/examples/availabilitySingleDateResponseXml'
dateRange:
$ref: '#/components/examples/availabilityDateRangeResponseXml'
/batch-availability:
post:
summary: Batch Availability
operationId: batchAvailability
tags:
- Deprecated
description: "The Batch Availability API (v1.0) enables Viator to efficiently determine capacity/availability for a future date range using a pull-based method. \n\nReservation systems share availability/capacity of all operator products and associated options across a specified future date range through this API. Upon receiving this information, Viator's systems are updated to either permit (available) or prohibit (unavailable) bookings. \n\nThis proactive approach provides operators control over future bookings and helps drive customers to remaining available dates according to the capacity returned by the reservation system.\n"
requestBody:
content:
application/json:
schema:
allOf:
- type: object
properties:
requestType:
type: string
description: '`BatchAvailabilityRequest`'
- type: object
properties:
data:
$ref: '#/components/schemas/BatchAvailabilityRequest'
required:
- requestType
- data
examples:
batchAvailabilityRequest:
$ref: '#/components/examples/batchAvailabilityRequestJson'
application/xml:
schema:
allOf:
- type: object
properties:
BatchAvailabilityRequest:
$ref: '#/components/schemas/BatchAvailabilityRequest'
required:
- BatchAvailabilityRequest
examples:
batchAvailabilityRequest:
$ref: '#/components/examples/batchAvailabilityRequestXml'
responses:
'200':
description: Success
content:
application/json:
schema:
allOf:
- type: object
properties:
responseType:
type: string
description: '`BatchAvailabilityResponse`'
- type: object
properties:
data:
$ref: '#/components/schemas/BatchAvailabilityResponse'
required:
- responseType
- data
examples:
singleDate:
$ref: '#/components/examples/batchAvailabilitySingleDateResponseJson'
dateRange:
$ref: '#/components/examples/batchAvailabilityDateRangeResponseJson'
application/xml:
schema:
allOf:
- type: object
properties:
BatchAvailabilityResponse:
$ref: '#/components/schemas/BatchAvailabilityResponse'
required:
- BatchAvailabilityResponse
examples:
singleDate:
$ref: '#/components/examples/batchAvailabilitySingleDateResponseXml'
dateRange:
$ref: '#/components/examples/batchAvailabilityDateRangeResponseXml'
/batch-pricing:
post:
summary: Batch Pricing
operationId: batchPricing
tags:
- Deprecated
description: '**Note**: The Batch Pricing API must only be implemented after agreement with Viator. If you wish to use this API, inform your Viator API account manager before any development begins.
The Batch Pricing API (v1.0) enables reservation systems to provide Viator with bulk pricing information for operators'' products.
For guidance on mapping Viator Pricing Rates (Age Bands) to external pricing rates, refer to the [Pricing rates mapping](#tag/API-configurations/Pricing-rates-mapping).
'
requestBody:
content:
application/json:
schema:
allOf:
- type: object
properties:
requestType:
type: string
description: '`BatchPricingRequest`'
- type: object
properties:
data:
$ref: '#/components/schemas/BatchPricingRequest'
required:
- requestType
- data
examples:
batchPricingRequest:
$ref: '#/components/examples/batchPricingRequestJson'
application/xml:
schema:
allOf:
- type: object
properties:
BatchPricingRequest:
$ref: '#/components/schemas/BatchPricingRequest'
required:
- BatchPricingRequest
examples:
batchPricingRequest:
$ref: '#/components/examples/batchPricingRequestXml'
responses:
'200':
description: Success
content:
application/json:
schema:
allOf:
- type: object
properties:
responseType:
type: string
description: '`BatchPricingResponse`'
- type: object
properties:
data:
$ref: '#/components/schemas/BatchPricingResponse'
required:
- responseType
- data
examples:
batchPricingResponse:
$ref: '#/components/examples/batchPricingResponseJson'
application/xml:
schema:
allOf:
- type: object
properties:
BatchPricingResponse:
$ref: '#/components/schemas/BatchPricingResponse'
required:
- BatchPricingResponse
examples:
batchPricingResponse:
$ref: '#/components/examples/batchPricingResponseXml'
/availabilitynotification2:
post:
summary: Availability Notification 2
operationId: availabilityNotification2
tags:
- Deprecated
description: "The Availability Notification 2 API (v1.0) provides reservation systems with the ability to notify Viator when changes to the availability of products occur. \n\nThis allows Viator to immediately either permit or prohibit bookings on dates that have either been made available or unavailable respectively.\n"
requestBody:
content:
application/json:
schema:
allOf:
- type: object
properties:
requestType:
type: string
description: '`AvailabilityNotification2Request`'
- type: object
properties:
data:
$ref: '#/components/schemas/AvailabilityNotification2Request'
required:
- requestType
- data
examples:
availabilityNotification:
$ref: '#/components/examples/availabilityNotification2RequestJson'
application/xml:
schema:
allOf:
- type: object
properties:
AvailabilityNotification2Request:
$ref: '#/components/schemas/AvailabilityNotification2Request'
required:
- AvailabilityNotification2Request
examples:
availabilityNotification:
$ref: '#/components/examples/availabilityNotification2RequestXml'
responses:
'200':
description: Success
content:
application/json:
schema:
allOf:
- type: object
properties:
responseType:
type: string
description: '`AvailabilityNotification2Response`'
- type: object
properties:
data:
$ref: '#/components/schemas/AvailabilityNotification2Response'
required:
- responseType
- data
examples:
availabilityNotification2ResponseRequest:
$ref: '#/components/examples/availabilityNotification2ResponseJson'
application/xml:
schema:
allOf:
- type: object
properties:
AvailabilityNotification2Response:
$ref: '#/components/schemas/AvailabilityNotification2Response'
required:
- AvailabilityNotification2Response
examples:
availabilityNotification2ResponseRequest:
$ref: '#/components/examples/availabilityNotification2ResponseXml'
components:
examples:
batchPricingResponseXml:
value: "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<BatchPricingResponse xmlns=\"http://toursgds.com/api/01\">\n <ApiKey>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</ApiKey>\n <ResellerId>1000</ResellerId>\n <SupplierId>1004</SupplierId>\n <ExternalReference>10051374722992617</ExternalReference>\n <Timestamp>2019-06-26T20:40:55.375Z</Timestamp>\n <RequestStatus>\n <Status>SUCCESS</Status>\n </RequestStatus>\n <CurrencyCode>USD</CurrencyCode>\n <BatchTourPricing>\n <Date>2020-06-20</Date>\n <SupplierProductCode>BLUE</SupplierProductCode>\n <TourOptions>\n <SupplierOptionCode>BASIC</SupplierOptionCode>\n <SupplierOptionName>Basic Shared Accommodation</SupplierOptionName>\n <TourDepartureTime>17:00:00</TourDepartureTime>\n </TourOptions>\n <BatchPrice>\n <Item>\n <RetailPrice>10.0</RetailPrice>\n <AgeBand>Infant</AgeBand>\n </Item>\n <Item>\n <RetailPrice>10.0</RetailPrice>\n <AgeBand>Child</AgeBand>\n </Item>\n <Item>\n <RetailPrice>10.0</RetailPrice>\n <AgeBand>Youth</AgeBand>\n </Item>\n <Item>\n <RetailPrice>10.0</RetailPrice>\n <AgeBand>Adult</AgeBand>\n </Item>\n <Item>\n <RetailPrice>10.0</RetailPrice>\n <AgeBand>Senior</AgeBand>\n </Item>\n </BatchPrice>\n <AvailabilityStatus>\n <Status>AVAILABLE</Status>\n </AvailabilityStatus>\n </BatchTourPricing>\n <BatchTourPricing>\n <Date>2020-06-21</Date>\n <SupplierProductCode>BLUE</SupplierProductCode>\n <TourOptions>\n <SupplierOptionCode>BASIC</SupplierOptionCode>\n <SupplierOptionName>Basic Shared Accommodation</SupplierOptionName>\n <TourDepartureTime>17:00:00</TourDepartureTime>\n </TourOptions>\n <BatchPrice>\n <Item>\n <RetailPrice>45.99</RetailPrice>\n <AgeBand>Infant</AgeBand>\n </Item>\n <Item>\n <RetailPrice>45.99</RetailPrice>\n <AgeBand>Child</AgeBand>\n </Item>\n <Item>\n <RetailPrice>45.99</RetailPrice>\n <AgeBand>Youth</AgeBand>\n </Item>\n <Item>\n <RetailPrice>45.99</RetailPrice>\n <AgeBand>Adult</AgeBand>\n </Item>\n <Item>\n <RetailPrice>45.99</RetailPrice>\n <AgeBand>Senior</AgeBand>\n </Item>\n </BatchPrice>\n <AvailabilityStatus>\n <Status>AVAILABLE</Status>\n </AvailabilityStatus>\n </BatchTourPricing>\n <!-- The remaining BatchTourPricing tags have been removed for the sake of brevity. -->\n</BatchPricingResponse>\n"
batchAvailabilityDateRangeResponseJson:
summary: Date range / single product response
value:
responseType: BatchAvailabilityResponse
data:
ApiKey: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ResellerId: '1000'
SupplierId: 1004
ExternalReference: '10051374722992616'
Timestamp: '2013-07-25T13:29:52.616+10:00'
RequestStatus:
Status: SUCCESS
BatchTourAvailability:
- Date: '2014-10-30'
TourOptions:
SupplierOptionCode: BASIC
SupplierOptionName: Basic Shared Accommodation
TourDepartureTime: 09:00:00
Option:
- Name: Room
Value: dualocc
SupplierProductCode: BLUE
AvailabilityStatus:
Status: UNAVAILABLE
UnavailabilityReason: SOLD_OUT
VersionTag:
Numeric: 5539573495734986
- Date: '2014-10-31'
TourOptions:
SupplierOptionCode: BASIC
SupplierOptionName: Basic Shared Accommodation
TourDepartureTime: 09:00:00
Option:
- Name: Room
Value: dualocc
SupplierProductCode: BLUE
AvailabilityStatus:
Status: UNAVAILABLE
UnavailabilityReason: SOLD_OUT
VersionTag:
Numeric: 5539573495734987
availabilityRequestWorkflow2Xml:
summary: Workflow stage 2 - Product option selected
value: "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<AvailabilityRequest xmlns=\"http://toursgds.com/api/01\">\n <ApiKey>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</ApiKey>\n <ResellerId>1000</ResellerId>\n <SupplierId>1004</SupplierId>\n <ExternalReference>10051374722992616</ExternalReference>\n <Timestamp>2013-07-25T13:29:52.616+10:00</Timestamp>\n <StartDate>2014-10-31</StartDate>\n <SupplierProductCode>BLUE</SupplierProductCode>\n <TourOptions>\n <SupplierOptionCode>BASIC</SupplierOptionCode>\n <SupplierOptionName>Basic Shared Accommodation</SupplierOptionName>\n <TourDepartureTime>09:00:00</TourDepartureTime>\n <Option>\n <Name>Room</Name>\n <Value>dualocc</Value>\n </Option>\n </TourOptions>\n <TravellerMix>\n <Adult>1</Adult>\n <Child>1</Child>\n <Youth>0</Youth>\n <Infant>0</Infant>\n <Senior>0</Senior>\n <Total>2</Total>\n </TravellerMix>\n</AvailabilityRequest>\n"
availabilitySingleDateRequestXml:
summary: Single-date request
value: "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<AvailabilityRequest xmlns=\"http://toursgds.com/api/01\">\n <ApiKey>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</ApiKey>\n <ResellerId>1000</ResellerId>\n <SupplierId>1004</SupplierId>\n <ExternalReference>10051374722992616</ExternalReference>\n <Timestamp>2013-07-25T13:29:52.616+10:00</Timestamp>\n <StartDate>2014-10-30</StartDate>\n <EndDate />\n <SupplierProductCode>BLUE</SupplierProductCode>\n <TourOptions>\n <SupplierOptionCode>BASIC</SupplierOptionCode>\n <SupplierOptionName>Basic Shared Accommodation</SupplierOptionName>\n <TourDepartureTime>09:00:00</TourDepartureTime>\n <Option>\n <Name>Room</Name>\n <Value>dualocc</Value>\n </Option>\n </TourOptions>\n <AvailabilityHold>\n <Expiry>PT300S</Expiry>\n </AvailabilityHold>\n <TravellerMix>\n <Adult>1</Adult>\n <Child>1</Child>\n <Youth>0</Youth>\n <Infant>1</Infant>\n <Senior>0</Senior>\n <Total>3</Total>\n </TravellerMix>\n</AvailabilityRequest>\n"
availabilitySingleDateResponseJson:
summary: Single-date response
value:
responseType: AvailabilityResponse
data:
ApiKey: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ResellerId: '1000'
SupplierId: 1004
ExternalReference: '10051374722992616'
Timestamp: '2013-07-25T13:29:52.616+10:00'
RequestStatus:
Status: SUCCESS
SupplierProductCode: BLUE
TourAvailability:
- Date: '2014-10-31'
BookingCutoff:
ProductDateTime: '2014-10-29T12:13:14'
TourOptions:
SupplierOptionCode: BASIC
SupplierOptionName: Basic Shared Accommodation
TourDepartureTime: 09:00:00
Option:
- Name: Room
Value: dualocc
AvailabilityStatus:
Status: AVAILABLE
TravellerMixAvailability:
Adult: true
Child: true
Youth: true
Infant: true
Senior: true
Price:
CurrencyCode: EUR
Item:
- RetailPrice: 112
AgeBand: Adult
- RetailPrice: 90
AgeBand: Child
- RetailPrice: 50
AgeBand: Infant
AvailabilityHold:
Expiry: PT300S
Reference: 1K883383K2S12K883383K2S57K883383K2
Capacity:
Simple:
Remaining: 10
ConsumedBy:
- ADULT
- YOUTH
VersionTag:
Textual: 20130705-V000000231434
availabilityDateRangeResponseJson:
summary: Date-range response
value:
responseType: AvailabilityResponse
data:
ApiKey: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ResellerId: '1000'
SupplierId: 1004
ExternalReference: '10051374722992616'
Timestamp: '2013-07-25T13:29:52.616+10:00'
RequestStatus:
Status: SUCCESS
SupplierProductCode: BLUE
TourAvailability:
- Date: '2014-10-30'
BookingCutoff:
ProductDateTime: '2014-10-29T12:13:14'
TourOptions:
SupplierOptionCode: BASIC
SupplierOptionName: Basic Shared Accommodation
TourDepartureTime: ''
Option:
- Name: Room
Value: dualocc
AvailabilityStatus:
Status: AVAILABLE
Capacity:
Simple:
Remaining: 10
ConsumedBy:
- ADULT
- YOUTH
VersionTag:
Textual: 20130705-V000000231435
- Date: '2014-10-31'
BookingCutoff:
ProductDateTime: '2014-10-29T12:13:14'
TourOptions:
SupplierOptionCode: BASIC
SupplierOptionName: Basic Shared Accommodation
TourDepartureTime: ''
Option:
- Name: Room
Value: dualocc
AvailabilityStatus:
Status: UNAVAILABLE
UnavailabilityReason: SOLD_OUT
VersionTag:
Textual: 20130705-V000000231436
availabilityRequestWorkflow1Xml:
summary: Workflow stage 1 - Product and date selected
value: "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<AvailabilityRequest xmlns=\"http://toursgds.com/api/01\">\n <ApiKey>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</ApiKey>\n <ResellerId>1000</ResellerId>\n <SupplierId>1004</SupplierId>\n <ExternalReference>10051374722992616</ExternalReference>\n <Timestamp>2013-07-25T13:29:52.616+10:00</Timestamp>\n <StartDate>2014-10-31</StartDate>\n <SupplierProductCode>BLUE</SupplierProductCode>\n <TravellerMix>\n <Adult>1</Adult>\n <Child>1</Child>\n <Youth>0</Youth>\n <Infant>0</Infant>\n <Senior>0</Senior>\n <Total>2</Total>\n </TravellerMix>\n</AvailabilityRequest>\n"
availabilityRequestWorkflow1Json:
summary: Workflow stage 1 - Product and date selected
value:
requestType: AvailabilityRequest
data:
ApiKey: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ResellerId: '1000'
SupplierId: 1004
ExternalReference: '10051374722992616'
Timestamp: '2013-07-25T13:2
# --- truncated at 32 KB (94 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/viator/refs/heads/main/openapi/viator-deprecated-api-openapi.yml