Мастер-Тур(15):API для отдачи цен в поисковые системы
Версия статьи от 4-12-2018.
Поддерживаемые версии ПК «Мастер-Тур»: |
Содержание
[убрать]- 1 Введение
- 2 Установка
- 3 Загрузка справочников
- 3.1 Выгрузка списка стран (GetCountries)
- 3.2 Выгрузка списка городов вылета (GetDepartCities)
- 3.3 Выгрузка списка городов (GetResorts)
- 3.4 Выгрузка списка курортов (GetAreas)
- 3.5 Выгрузка списка категорий отелей (GetHotelCategories)
- 3.6 Выгрузка списка отелей (GetHotels)
- 3.7 Выгрузка списка типов номеров (GetRooms) начиная с релиза 15.3
- 3.8 Выгрузка списка типов номеров (GetRoomTypes) начиная с релиза 15.3
- 3.9 Выгрузка списка типов номеров (GetHtPlaces) начиная с релиза 15.3
- 3.10 Выгрузка видов питания (GetMeals)
- 3.11 Выгрузка списка валют (GetCurrencies)
- 3.12 Выгрузка курсов валют (GetCurrencyRates)
- 4 Поиск туров (GetTours)
- 5 Поиск всех цен по туру (GetToursAllPrices) начиная с релиза 15.3
- 6 Актуализация тура (ActualizeTour)
- 7 Проверка туриста (checkTourist)
Введение
Данный web-сервис разработан для отдачи цен во внешние поисковые системы и выполняет следующие задачи:
- выгружает справочники (города вылета, страны, города, отели и т.д.)
- осуществляет поиск цен с указанныеми параметрами
- актуализирует выбранный вариант тура по его идентификатору
Выдача результатов осуществляется в формате JSON
Установка
Для работы с web-сервисом необходимо установить службу поиска.
После установки web-сервис будет доступен по адресу http://значение настройки "serviceAddress" в TourSearchOwin/searchApi?action="название метода" (пример: http://localhost:9000/TourSearchOwin/searchApi?action=GetCountries)
Загрузка справочников
Выгрузка списка стран (GetCountries)
Метод производит выгрузку всех направлений туроператора.
- Формат запроса:
- ?action=GetCountries
- Принимаемые параметры:
- id – идентификатор страны (опциональный, передача в запрос нескольких id не обрабатывается, в этом случае возвращаются все результаты. Если указан, то запрашивается только одна запись)
- Возвращаемый результат:
- id – идентификатор страны
- name – название страны (рус)
- lname – название страны (анг)
Выгрузка списка городов вылета (GetDepartCities)
Метод производит выгрузку всех доступных городов вылета, а также содержит данные о том, какие направления доступны из каждого города вылета.
- Формат запроса:
- ?action=GetDepartCities
- Принимаемые параметры:
- id – идентификатор города вылета (опциональный, передача в запрос нескольких id не обрабатывается, в этом случае возвращаются все результаты. Если указан, то запрашивается только одна запись)
- Возвращаемый результат:
- id – идентификатор города
- name – название города (рус)
- lname – название города (анг)
- countriesTo – идентификаторы стран, которые присутствуют в данном городе вылета
- countryId – идентификатор страны города вылета
- countryName – название страны города вылета
- countryCode – код страны города вылета
Выгрузка списка городов (GetResorts)
Метод возвращает список всех доступных городов.
- Формат запроса:
- ?action=GetResorts
- Принимаемые параметры:
- id – идентификатор города (опциональный, передача в запрос нескольких id не обрабатывается, в этом случае возвращаются все результаты. Если указан, то запрашивается только одна запись)
- Возвращаемый результат:
- id – идентификатор города
- name – название города (рус)
- lname – название города (анг)
- countryId – идентификатор страны, в котором расположен город
Выгрузка списка курортов (GetAreas)
Метод возвращает список всех доступных курортов.
- Формат запроса:
- ?action=GetAreas
- Принимаемые параметры:
- id – идентификатор курорта (опциональный, передача в запрос нескольких id не обрабатывается, в этом случае возвращаются все результаты. Если указан, то запрашивается только одна запись)
- Возвращаемый результат:
- id – идентификатор курорта
- name – название курорта (рус)
- lname – название курорта (анг)
- countryId – идентификатор страны, в котором расположен курорт
Выгрузка списка категорий отелей (GetHotelCategories)
Метод возвращает список категорий отелей (примеры: 3*, 4*, Apts и т.д.).
- Формат запроса:
- ?action=GetHotelCategories
- Принимаемые параметры:
- id – идентификатор категории отеля (опциональный, передача в запрос нескольких id не обрабатывается, в этом случае возвращаются все результаты. Если указан, то запрашивается только одна запись)
- Возвращаемый результат:
- id – идентификатор категории отеля
- name – название категории отеля
- globalCode – глобальный код категории отеля
Выгрузка списка отелей (GetHotels)
Метод возвращает список всех доступных отелей, на которые есть актуальные цены.
- Формат запроса:
- ?action=GetHotels
- Принимаемые параметры:
- id – идентификатор отеля (опциональный, передача в запрос нескольких id не обрабатывается, в этом случае возвращаются все результаты. Если указан, то запрашивается только одна запись)
- Возвращаемый результат:
- id – идентификатор отеля
- name – название отеля
- hotelCategoryId – идентификатор категории отеля
- hotelCategoryName – название категории отеля
- resortId – идентификатор города, в котором расположен отель
- resortName – название города, в котором расположен отель
- areaId – идентификатор курорта, в котором расположен отель
- areaName – название курорта, в котором расположен отель
- address – адрес отеля
- phone – телефон отеля
- email – e-mail отеля
- fax – факс отеля
- http – адрес в интернете отеля
Выгрузка списка типов номеров (GetRooms) начиная с релиза 15.3
Метод возвращает список всех доступных типов номеров, на которые есть актуальные цены.
- Формат запроса:
- ?action=GetRooms
- Принимаемые параметры:
- id – идентификатор типа номера (опциональный, передача в запрос нескольких id не обрабатывается, в этом случае возвращаются все результаты. Если указан, то запрашивается только одна запись)
- Возвращаемый результат:
- id – идентификатор типа номера
- code – код типа номера
- name – название типа номера
- mainplaces – количество основных мест
- extraplaces – количество дополнительных мест
Выгрузка списка типов номеров (GetRoomTypes) начиная с релиза 15.3
Метод возвращает список всех доступных категорий номеров, на которые есть актуальные цены.
- Формат запроса:
- ?action=GetRoomTypes
- Принимаемые параметры:
- id – идентификатор категории номера (опциональный, передача в запрос нескольких id не обрабатывается, в этом случае возвращаются все результаты. Если указан, то запрашивается только одна запись)
- Возвращаемый результат:
- id – идентификатор категории номера
- code – код категории номера
- name – название категории номера
Выгрузка списка типов номеров (GetHtPlaces) начиная с релиза 15.3
Метод возвращает список всех доступных типов размещений, на которые есть актуальные цены.
- Формат запроса:
- ?action=GetHtPlaces
- Принимаемые параметры:
- id – идентификатор типа размещения (опциональный, передача в запрос нескольких id не обрабатывается, в этом случае возвращаются все результаты. Если указан, то запрашивается только одна запись)
- Возвращаемый результат:
- id – идентификатор типа размещения
- code – код типа размещения
- name – название типа размещения
- adultmainplaces – количество основных мест для взрослых
- adultextraplaces – количество дополнительных мест для взрослых
- childtmainplaces – количество основных мест для детей
- childextraplaces – количество дополнительных мест для детей
- mainplaces – общее количество основных мест для взрослых и детей
- extraplaces – общее количество дополнительных мест для взрослых и детей
- childAges – коллекция возможных возрастов детей в размещении (указывается полный возраст, то есть 12 - это 12,99)
- from – нижняя граница возраста первого ребенка
- to – верхняя граница возраста первого ребенка
- from – нижняя граница возраста второго ребенка
- to – верхняя граница возраста второго ребенка
Выгрузка видов питания (GetMeals)
Метод возвращает список видов питания (примеры: HB, BB, без питания и т.д.).
- Формат запроса:
- ?action=GetMeals
- Принимаемые параметры:
- id – идентификатор типа питания (опциональный, передача в запрос нескольких id не обрабатывается, в этом случае возвращаются все результаты. Если указан, то запрашивается только одна запись)
- Возвращаемый результат:
- id – идентификатор типа питания
- name – название типа питания
- code – код типа питания
- globalCode – глобальный код типа питания
Выгрузка списка валют (GetCurrencies)
Метод возвращает список используемых валют.
- Формат запроса:
- ?action=GetCurrencies
- Принимаемые параметры:
- id – идентификатор валюты (опциональный, передача в запрос нескольких id не обрабатывается, в этом случае возвращаются все результаты. Если указан, то запрашивается только одна запись)
- Возвращаемый результат:
- id – идентификатор валюты
- name – название валюты
Выгрузка курсов валют (GetCurrencyRates)
Метод возвращает список курсов валют, актуальных на дату запроса.
- Формат запроса:
- ?action=GetCurrencyRates
- Принимаемые параметры:
- нет принимаемых параметров
- Возвращаемый результат:
- baseCurrencyId – идентификатор национальной валюты
- currencyId – идентификатор валюты, курс которой приводится
- rate – курс валюты (отношение currencyId к baseCurrencyId)
Поиск туров (GetTours)
Метод поиска туров использует множество параметров для поиска и фильтрации туров. Метод возвращает наиболее дешевые предложения, найденные по предоставленным параметрам и сгруппированные по отелям в порядке возрастания цены. Количество туров в выдаче регулируется параметром count.
- Формат запроса:
- ?action=GetTours&count=int&countryId=int&departCityId=int&dateFrom=date&dateTo=date&adults=int&kids=int&nightsMin=int&nightsMax=int¤cyId=int
- Принимаемые параметры ( * – обязательный):
- offerId – уникальный идентификатор ранее найденного предложения. В случае, если данный параметр задан, все остальные параметры не обязательны и не принимаются в расчет, метод возвращает одну запись.
- count * – максимальное количество предложений в выдаче.
- countryId * – идентификатор страны.
- departCityId * – идентификатор города вылета.
- dateFrom * – начальная дата в диапазоне дат вылета в формате dd.MM.yyyy (пример: 31.12.2016).
- dateTo * – конечная дата в диапазоне дат вылета в формате dd.MM.yyyy (пример: 31.12.2016).
- adults * – количество взрослых.
- kids * – количество детей.
- kidsAges – количество полных лет каждому ребенку, передается в виде строки, перечисление через запятую (пример: 3,6).
- nightsMin * – минимальное количество дней в туре.
- nightsMax * – максимальное количество дней в туре.
- resorts – идентификаторы городов, перечисление через запятую.
- hotelCategories – идентификаторы категорий отелей, перечисление через запятую.
- hotels – идентификаторы отелей, перечисление через запятую.
- meals – идентификаторы видов питания, перечисление через запятую.
- currencyId * – валюта, в которой будут выданы цены, а также валюта для входящих параметров priceMin и priceMax (если они есть).
- priceMin – Цена тура от.
- priceMax – Цена тура до.
- hotelIsNotInStop – при значении 1 в результатах не должно быть отелей в стопе (отели со статусом «под запрос» допустимы). При значении 0 в результат должны попадать как отели в стопе, так и отели с наличием мест и с местами по запросу.
- ticketsIncluded * – при значении 1 в результатах должны быть только туры с включенной стоимостью перелета («только отель» недопустимы). При значении 0 в результат должны попадать как туры без перелета, так и туры с перелетом.
- hasTickets – при значении 1 в результатах должны быть туры только с реальным наличием билетов в перелете (не должно быть туров со стопом на перелете, перелеты со статусом «под запрос» недопустимы). При значении 0 в результат должны попадать как туры без билетов на рейс, так и туры с наличием билетов и с билетами по запросу.
- excludeUsualTours – при значении 1 из результатов должны быть исключены туры, являющиеся обычными турами (не являющиеся многоотельными). При значении 0 или отсутствии данного параметра такие туры должны быть включены в результат.
- excludeCombined – при значении 1 из результатов должны быть исключены туры, являющиеся многоотельными. При значении 0 или отсутствии данного параметра такие туры должны быть включены в результат.
- showToursWithoutHotels – при значении 1 в результатах поиска вместе с обычными турами должны подбираться туры без проживания (без услуги отель в составе тура). При значении 0 или отсутствии данного параметра такие туры должны быть исключены из результата поиска. Параметр обрабатывается, начиная с релиза 15.2.
- Возвращаемый результат ( * – обязательный):
- offerId * – уникальный идентификатор предложения, по которому в дальнейшем можно провести актуализацию тура.
- tourId – идентификатор программы тура.
- tourName * – название программы тура.
- hotelId * – идентификатор отеля.
- hotelName – название отеля.
- hotelCategoryId * – идентификатор категории отеля.
- hotelCategoryName – название категории отеля.
- hotelUrl – ссылка на страницу с описанием отеля.
- countryId – идентификатор страны.
- countryName – название страны.
- resortId * – идентификатор города, в котором расположен отель.
- resortName – название города, в котором расположен отель.
- areaId * – идентификатор курорта, в котором расположен отель.
- areaName – название курорта, в котором расположен отель.
- mealId * – идентификатор вида питания.
- mealName – название питания.
- roomId – идентификатор типа номера.
- roomName – название типа номера.
- roomTypeId – идентификатор категории номера.
- roomTypeName – название категории номера (примеры: standard, deluxe, family, deluxe super ocean view).
- htPlaceId – идентификатор типа размещения.
- htPlaceName * – название типа размещения в номере (примеры: 2 ADL + 1 CH (2-12), 2 ADL + INF).
- tourDate * – дата начала тура в формате dd.MM.yyyy (пример: 31.12.2016).
- tourEndDate – дата окончания тура (дата прилета) в формате dd.MM.yyyy (пример: 31.12.2016).
- nights * – продолжительность тура в днях.
- price * – цена тура в валюте, которая была указана во входном параметре currencyId.
- currencyId – идентификатор валюты.
- currencyName – ISO код валюты.
- hotelIsInStop * – наличие мест в отеле, допустимы значения: 0 – есть места, 1 – нет мест, 2 – запрос.
- ticketsIncluded * – включена ли стоимость билетов в стоимость тура, допустимы значения: 0 – не включена (тур только отель), 1 – включена (пакетный тур).
- hasEconomTicketsDpt * – наличие билетов эконом класса на место отдыха, допустимы значения: 0 – нет мест, 1 есть места, 2 – запрос. При значении атрибута ticketsIncluded = 0 значение данного параметра будет проигнорировано. Группы перелетов задаются в настройке flightTariffGroups.
- hasEconomTicketsRtn * – наличие обратных билетов эконом класса, допустимы значения: 0 – нет мест, 1 есть места, 2 – запрос. При значении атрибута ticketsIncluded = 0 значение данного параметра будет проигнорировано. Группы перелетов задаются в настройке flightTariffGroups.
- hasBusinessTicketsDpt * – наличие билетов бизнес класса на место отдыха, допустимы значения: 0 – нет мест, 1 есть места, 2 – запрос. При значении атрибута ticketsIncluded = 0 значение данного параметра будет проигнорировано. Группы перелетов задаются в настройке flightTariffGroups.
- hasBusinessTicketsRtn * – наличие обратных билетов бизнес класса, допустимы значения: 0 – нет мест, 1 есть места, 2 – запрос. При значении атрибута ticketsIncluded = 0 значение данного параметра будет проигнорировано. Группы перелетов задаются в настройке flightTariffGroups.
- tourUrl * – ссылка на корзину (при переходе по которой можно забронировать тур).
- spoUrl – ссылка на описание тура (указывается в программе тура).
- fewPlacesInHotel – числовое значение мест в отеле. По умолчанию поле возвращается с пустым значением. Если удовлетворяются условия, заданные в настройке "Мало", но не включена настройка "Отображать числовое значение оставшихся мест" в панели администрирования, то возвращается значение «-1». Если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест", то возвращается числовое значение того количества мест, которое осталось.
- fewTicketsDptY – числовое значение мест прямого перелета эконом класса. По умолчанию поле возвращается с пустым значением. Если удовлетворяются условия, заданные в настройке "Мало", но не включена настройка "Отображать числовое значение оставшихся мест" в панели администрирования, то возвращается значение «-1». Если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест", то возвращается числовое значение того количества мест, которое осталось.
- fewTicketsRtnY – числовое значение мест обратного перелета эконом класса. По умолчанию поле возвращается с пустым значением. Если удовлетворяются условия, заданные в настройке "Мало", но не включена настройка "Отображать числовое значение оставшихся мест" в панели администрирования, то возвращается значение «-1». Если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест", то возвращается числовое значение того количества мест, которое осталось.
- fewTicketsDptB – числовое значение мест прямого перелета бизнес класса. По умолчанию поле возвращается с пустым значением. Если удовлетворяются условия, заданные в настройке "Мало", но не включена настройка "Отображать числовое значение оставшихся мест" в панели администрирования, то возвращается значение «-1». Если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест", то возвращается числовое значение того количества мест, которое осталось.
- fewTicketsRtnB – числовое значение мест обратного перелета бизнес класса. По умолчанию поле возвращается с пустым значением. Если удовлетворяются условия, заданные в настройке "Мало", но не включена настройка "Отображать числовое значение оставшихся мест" в панели администрирования, то возвращается значение «-1». Если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест", то возвращается числовое значение того количества мест, которое осталось.
- flags – если тур многоотельный, возвращается код 1024. Во всех остальных случаях возвращается 0.
- description – указывается информация о проживании. Если тур многоотельный, то указывается информация обо всех отелях в туре (пример: 1 н., Resort1, Hotel1, Standard, BB; 3 н., Resort2, Hotel2, Standard, BB; 2 н., Resort3, Hotel3, Standard, BB).
- receivingParty – параметр не обрабатывается.
- earlyBookingValidTill – параметр не обрабатывается.
- TourTypes – массив типов тура, привязанных к программе тура.
- Key – идентификатор типа тура.
- Value – название типа тура.
- hotelScheme – объект схемы отеля (для многоотельных туров - объект схемы первого отеля).
- templateId – идентификатор шаблона услуги.
- durationInNight – продолжительность отеля в ночах.
- code – ключ отеля.
- packetKey – ключ пакета.
- partnerKey – ключ партнера.
- hotels – массив отелей, который соответствует количеству отелей в многоотельном туре. Каждая запись массива содержит в себе информацию по одному отелю. Выводятся по порядку проживания в отелях. Если тур не многоотельный, параметр hotels возвращается пустым.
- countryId – идентификатор страны
- countryName – название страны
- resortId – идентификатор города, в котором расположен отель
- resortName – название города, в котором расположен отель
- hotelId – идентификатор отеля
- hotelName – название отеля
- hotelUrl – ссылка на страницу с описанием отеля
- hotelCategoryId – идентификатор категории отеля
- hotelCategoryName – название категории отеля
- hotelIsInStop – наличие мест в отеле, допустимы значения: 0 – есть места, 1 – нет мест, 2 – запрос
- mealId – идентификатор питания
- mealName – название питания
- htPlaceId – идентификатор типа размещения
- htPlaceName – название типа размещения
- roomId – идентификатор типа номера
- roomName – название типа номера
- roomTypeId – идентификатор категории номера
- roomTypeName – название категории номера
- htNights – количество ночей в отеле
- checkIn – дата заезда в отель
- checkOut – дата выезда из отеля
Поиск всех цен по туру (GetToursAllPrices) начиная с релиза 15.3
Метод поиска туров использует множество параметров для поиска и фильтрации туров. Метод возвращает цены, не сгруппированные по отелям. Количество туров в выдаче регулируется параметром count.
- Формат запроса:
- ?action=GetToursAllPrices&count=int&countryId=int&departCityId=int&dateFrom=date&dateTo=date&adults=int&kids=int&nightsMin=int&nightsMax=int¤cyId=int
- Принимаемые параметры ( * – обязательный):
- offerId – уникальный идентификатор ранее найденного предложения. В случае, если данный параметр задан, все остальные параметры не обязательны и не принимаются в расчет, метод возвращает одну запись.
- count * – максимальное количество предложений в выдаче.
- countryId * – идентификатор страны.
- departCityId * – идентификатор города вылета.
- dateFrom * – начальная дата в диапазоне дат вылета в формате dd.MM.yyyy (пример: 31.12.2018).
- dateTo * – конечная дата в диапазоне дат вылета в формате dd.MM.yyyy (пример: 31.12.2018).
- adults * – количество взрослых.
- kids * – количество детей.
- kidsAges – количество полных лет каждому ребенку, передается в виде строки, перечисление через запятую (пример: 3,6).
- nightsMin * – минимальное количество дней в туре.
- nightsMax * – максимальное количество дней в туре.
- resorts – идентификаторы городов, перечисление через запятую.
- hotelCategories – идентификаторы категорий отелей, перечисление через запятую.
- hotels – идентификаторы отелей, перечисление через запятую.
- meals – идентификаторы видов питания, перечисление через запятую.
- currencyId * – валюта, в которой будут выданы цены, а также валюта для входящих параметров priceMin и priceMax (если они есть).
- priceMin – Цена тура от.
- priceMax – Цена тура до.
- hotelIsNotInStop – при значении 1 в результатах не должно быть отелей в стопе (отели со статусом «под запрос» допустимы). При значении 0 в результат должны попадать как отели в стопе, так и отели с наличием мест и с местами по запросу.
- ticketsIncluded * – при значении 1 в результатах должны быть только туры с включенной стоимостью перелета («только отель» недопустимы). При значении 0 в результат должны попадать как туры без перелета, так и туры с перелетом.
- hasTickets – при значении 1 в результатах должны быть туры только с реальным наличием билетов в перелете (не должно быть туров со стопом на перелете, перелеты со статусом «под запрос» недопустимы). При значении 0 в результат должны попадать как туры без билетов на рейс, так и туры с наличием билетов и с билетами по запросу.
- excludeUsualTours – при значении 1 из результатов должны быть исключены туры, являющиеся обычными турами (не являющиеся многоотельными). При значении 0 или отсутствии данного параметра такие туры должны быть включены в результат.
- excludeCombined – при значении 1 из результатов должны быть исключены туры, являющиеся многоотельными. При значении 0 или отсутствии данного параметра такие туры должны быть включены в результат.
- showToursWithoutHotels – при значении 1 в результатах поиска вместе с обычными турами должны подбираться туры без проживания (без услуги отель в составе тура). При значении 0 или отсутствии данного параметра такие туры должны быть исключены из результата поиска. Параметр обрабатывается, начиная с релиза 15.2.
- Sort – сортировка результатов. Возможно использование нескольких параметров через запятую. Если параметр не указан, то по умолчанию сортировка производится по возрастанию цены. Возможные значения:
- ByPrice – сортировка по цене по возрастанию.
- ByPrice_desc – сортировка по цене по убыванию.
- ByStartDate – сортировка по дате начала тура по возрастанию.
- ByStartDate_desc – сортировка по дате начала тура по убыванию.
- ByEndDate – сортировка по дате окончания тура по возрастанию.
- ByEndDate_desc – сортировка по дате окончания тура по убыванию.
- ByDuration – сортировка по продолжительности тура по возрастанию.
- ByDuration_desc – сортировка по продолжительности тура по убыванию.
- ByHotel – сортировка по названию отеля (для многоотельных туров сортировка по названию первого отеля).
- ByHotel_desc – сортировка по названию отеля в обратном порядке (для многоотельных туров сортировка по названию первого отеля в обратном порядке).
- ByHotelCategory – сортировка по названию категории отеля (для многоотельных туров сортировка по названию категории первого отеля).
- ByHotelCategory_desc – сортировка по названию категории отеля в обратном порядке (для многоотельных туров сортировка по названию категории первого отеля в обратном порядке).
- ByMeal – сортировка по названию питания (для многоотельных туров сортировка по названию питания первого отеля).
- ByMeal_desc – сортировка по названию питания в обратном порядке (для многоотельных туров сортировка по названию питания в обратном порядке первого отеля).
- ByResort – сортировка по названию курорта (для многоотельных туров сортировка по названию курорта первого отеля).
- ByResort_desc – сортировка по названию курорта в обратном порядке (для многоотельных туров сортировка по названию курорта в обратном порядке первого отеля).
- ByCity – сортировка по названию города (для многоотельных туров сортировка по названию города первого отеля).
- ByCity_desc – сортировка по названию города в обратном порядке (для многоотельных туров сортировка по названию города в обратном порядке первого отеля).
- ByTour – сортировка по названию программы тура.
- ByTour_desc – сортировка по названию программы тура в обратном порядке.
- PageNumber – порядковый номер страницы. Если задан парамер PageNumber, то использование параметра PageSize становится обязательным.
- PageSize – количество результатов на странице. Если задан парамер PageSize, то использование параметра PageNumber становится обязательным.
- Возвращаемый результат ( * – обязательный):
- offerId * – уникальный идентификатор предложения, по которому в дальнейшем можно провести актуализацию тура.
- tourName * – название программы тура.
- hotelId * – идентификатор отеля.
- hotelUrl – ссылка на страницу с описанием отеля.
- resortId * – идентификатор города, в котором расположен отель.
- hotelCategoryId * – идентификатор категории отеля.
- mealId * – идентификатор вида питания.
- htPlaceName * – название типа размещения в номере (примеры: 2 ADL + 1 CH (2-12), 2 ADL + INF).
- roomTypeName – название категории номера (примеры: standard, deluxe, family, deluxe super ocean view).
- tourDate * – дата начала тура в формате dd.MM.yyyy (пример: 31.12.2016).
- tourEndDate – дата окончания тура (дата прилета) в формате dd.MM.yyyy (пример: 31.12.2016).
- nights * – продолжительность тура в днях.
- price * – цена тура в валюте, которая была указана во входном параметре currencyId.
- hotelIsInStop * – наличие мест в отеле, допустимы значения: 0 – есть места, 1 – нет мест, 2 – запрос.
- ticketsIncluded * – включена ли стоимость билетов в стоимость тура, допустимы значения: 0 – не включена (тур только отель), 1 – включена (пакетный тур).
- hasEconomTicketsDpt * – наличие билетов эконом класса на место отдыха, допустимы значения: 0 – нет мест, 1 есть места, 2 – запрос. При значении атрибута ticketsIncluded = 0 значение данного параметра будет проигнорировано. Группы перелетов задаются в настройке flightTariffGroups.
- hasEconomTicketsRtn * – наличие обратных билетов эконом класса, допустимы значения: 0 – нет мест, 1 есть места, 2 – запрос. При значении атрибута ticketsIncluded = 0 значение данного параметра будет проигнорировано. Группы перелетов задаются в настройке flightTariffGroups.
- hasBusinessTicketsDpt * – наличие билетов бизнес класса на место отдыха, допустимы значения: 0 – нет мест, 1 есть места, 2 – запрос. При значении атрибута ticketsIncluded = 0 значение данного параметра будет проигнорировано. Группы перелетов задаются в настройке flightTariffGroups.
- hasBusinessTicketsRtn * – наличие обратных билетов бизнес класса, допустимы значения: 0 – нет мест, 1 есть места, 2 – запрос. При значении атрибута ticketsIncluded = 0 значение данного параметра будет проигнорировано. Группы перелетов задаются в настройке flightTariffGroups.
- tourUrl * – ссылка на корзину (при переходе по которой можно забронировать тур).
- spoUrl – ссылка на описание тура (указывается в программе тура).
- fewPlacesInHotel – числовое значение мест в отеле. По умолчанию поле возвращается с пустым значением. Если удовлетворяются условия, заданные в настройке "Мало", но не включена настройка "Отображать числовое значение оставшихся мест" в панели администрирования, то возвращается значение «-1». Если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест", то возвращается числовое значение того количества мест, которое осталось.
- fewTicketsDptY – числовое значение мест прямого перелета эконом класса. По умолчанию поле возвращается с пустым значением. Если удовлетворяются условия, заданные в настройке "Мало", но не включена настройка "Отображать числовое значение оставшихся мест" в панели администрирования, то возвращается значение «-1». Если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест", то возвращается числовое значение того количества мест, которое осталось.
- fewTicketsRtnY – числовое значение мест обратного перелета эконом класса. По умолчанию поле возвращается с пустым значением. Если удовлетворяются условия, заданные в настройке "Мало", но не включена настройка "Отображать числовое значение оставшихся мест" в панели администрирования, то возвращается значение «-1». Если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест", то возвращается числовое значение того количества мест, которое осталось.
- fewTicketsDptB – числовое значение мест прямого перелета бизнес класса. По умолчанию поле возвращается с пустым значением. Если удовлетворяются условия, заданные в настройке "Мало", но не включена настройка "Отображать числовое значение оставшихся мест" в панели администрирования, то возвращается значение «-1». Если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест", то возвращается числовое значение того количества мест, которое осталось.
- fewTicketsRtnB – числовое значение мест обратного перелета бизнес класса. По умолчанию поле возвращается с пустым значением. Если удовлетворяются условия, заданные в настройке "Мало", но не включена настройка "Отображать числовое значение оставшихся мест" в панели администрирования, то возвращается значение «-1». Если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест", то возвращается числовое значение того количества мест, которое осталось.
- flags – если тур многоотельный, возвращается код 1024. Во всех остальных случаях возвращается 0.
- description – указывается информация о проживании. Если тур многоотельный, то указывается информация обо всех отелях в туре (пример: 1 н., Resort1, Hotel1, Standard, BB; 3 н., Resort2, Hotel2, Standard, BB; 2 н., Resort3, Hotel3, Standard, BB).
- receivingParty – параметр не обрабатывается.
- earlyBookingValidTill – параметр не обрабатывается.
- countryId – идентификатор страны.
- countryName – название страны.
- currencyId – идентификатор валюты.
- currencyName – ISO код валюты.
- tourId – идентификатор программы тура.
- roomId – идентификатор типа номера.
- roomName – название типа номера.
- htPlaceId – идентификатор типа размещения.
- roomTypeId – идентификатор категории номера.
- mealName – название питания.
- hotelCategoryName – название категории отеля.
- resortName – название города, в котором расположен отель.
- hotelName – название отеля.
- TourTypes – массив типов тура, привязанных к программе тура.
- Key – идентификатор типа тура.
- Value – название типа тура.
- hotelScheme – объект схемы отеля (для многоотельных туров - объект схемы первого отеля).
- templateId – идентификатор шаблона услуги.
- durationInNight – продолжительность отеля в ночах.
- code – ключ отеля.
- packetKey – ключ пакета.
- partnerKey – ключ партнера.
- hotels – массив отелей, который соответствует количеству отелей в многоотельном туре. Каждая запись массива содержит в себе информацию по одному отелю. Выводятся по порядку проживания в отелях. Если тур не многоотельный, параметр hotels возвращается пустым.
- countryId – идентификатор страны
- countryName – название страны
- resortId – идентификатор города, в котором расположен отель
- resortName – название города, в котором расположен отель
- hotelId – идентификатор отеля
- hotelName – название отеля
- hotelUrl – ссылка на страницу с описанием отеля
- hotelCategoryId – идентификатор категории отеля
- hotelCategoryName – название категории отеля
- hotelIsInStop – наличие мест в отеле, допустимы значения: 0 – есть места, 1 – нет мест, 2 – запрос
- mealId – идентификатор питания
- mealName – название питания
- htPlaceId – идентификатор типа размещения
- htPlaceName – название типа размещения
- roomId – идентификатор типа номера
- roomName – название типа номера
- roomTypeId – идентификатор категории номера
- roomTypeName – название категории номера
- htNights – количество ночей в отеле
- checkIn – дата заезда в отель
- checkOut – дата выезда из отеля
Актуализация тура (ActualizeTour)
Метод служит для получения окончательной цены тура (со всеми обязательными доплатами и сборами), списка включенных в стоимость тура услуг, а также вариантов перелета, возможных дополнительных услуг и доплат по ним. Метод должен возвращать цену самой дешевой конфигурации запрашиваемого предложения. Для корректной работы метода необходимо, чтобы offerId был уникален для предложений с разным составом группы туристов, даже в случае если все прочие параметры предложений совпадают.
- Формат запроса:
- ?action=ActualizeTour
- Принимаемые параметры ( * – обязательный):
- offerId * – уникальный идентификатор ранее найденного предложения.
- currencyId * – валюта, в которой рассчитывается цена и доплаты.
- Возвращаемый результат ( * – обязательный):
- price * – актуализированная цена тура в валюте, которая была указана во входном параметре currencyId.
- ticketsIsIncluded * – включена ли стоимость билетов в стоимость тура, допустимы значения: 0 – не включена (тур только отель), 1 – включена (пакетный тур).
- hotelIsInStop – наличие мест в отеле, допустимы значения: 0 – есть места, 1 – нет мест, 2 – запрос.
- hasEconomTicketsDpt * – наличие билетов эконом класса на место отдыха, допустимы значения: 0 – нет мест, 1 есть места, 2 – запрос. При значении атрибута ticketsIncluded = 0 значение данного параметра будет проигнорировано.
- hasEconomTicketsRtn * – наличие обратных билетов эконом класса, допустимы значения: 0 – нет мест, 1 есть места, 2 – запрос. При значении атрибута ticketsIncluded = 0 значение данного параметра будет проигнорировано.
- hasBusinessTicketsDpt * – наличие билетов бизнес класса на место отдыха, допустимы значения: 0 – нет мест, 1 есть места, 2 – запрос. При значении атрибута ticketsIncluded = 0 значение данного параметра будет проигнорировано.
- hasBusinessTicketsRtn * – наличие обратных билетов бизнес класса, допустимы значения: 0 – нет мест, 1 есть места, 2 – запрос. При значении атрибута ticketsIncluded = 0 значение данного параметра будет проигнорировано.
- fewPlacesInHotel – числовое значение мест в отеле. По умолчанию поле возвращается с пустым значением. Если удовлетворяются условия, заданные в настройке "Мало", но не включена настройка "Отображать числовое значение оставшихся мест" в панели администрирования, то возвращается значение «-1». Если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест", то возвращается числовое значение того количества мест, которое осталось.
- fewEconomTicketsDpt – числовое значение мест прямого перелета эконом класса. По умолчанию поле возвращается с пустым значением. Если удовлетворяются условия, заданные в настройке "Мало", но не включена настройка "Отображать числовое значение оставшихся мест" в панели администрирования, то возвращается значение «-1». Если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест", то возвращается числовое значение того количества мест, которое осталось.
- fewEconomTicketsRtn – числовое значение мест обратного перелета эконом класса. По умолчанию поле возвращается с пустым значением. Если удовлетворяются условия, заданные в настройке "Мало", но не включена настройка "Отображать числовое значение оставшихся мест" в панели администрирования, то возвращается значение «-1». Если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест", то возвращается числовое значение того количества мест, которое осталось.
- fewBusinessTicketsDpt – числовое значение мест прямого перелета бизнес класса. По умолчанию поле возвращается с пустым значением. Если удовлетворяются условия, заданные в настройке "Мало", но не включена настройка "Отображать числовое значение оставшихся мест" в панели администрирования, то возвращается значение «-1». Если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест", то возвращается числовое значение того количества мест, которое осталось.
- fewBusinessTicketsRtn – числовое значение мест обратного перелета бизнес класса. По умолчанию поле возвращается с пустым значением. Если удовлетворяются условия, заданные в настройке "Мало", но не включена настройка "Отображать числовое значение оставшихся мест" в панели администрирования, то возвращается значение «-1». Если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест", то возвращается числовое значение того количества мест, которое осталось.
- tourUrl – ссылка на корзину (при переходе по которой можно забронировать тур).
- services – список услуг, которые могут быть в туре
- id * – идентификатор услуги, уникальный в рамках данного предложения.
- type * – Тип услуги. Может принимать одно из следующих значений:
- HotelInfo – отель
- Insurance – страховка
- DptTransport – перелет туда
- RtnTransport – перелет обратно
- MidDptTransport – промежуточный перелет туда (при пересадке)
- MidRtnTransport – промежуточный перелет обратно (при пересадке)
- AdditionalService – дополнительная услуга
- Transfer – трансфер
- Excursion – экскурсия
- Visa – виза
- name * – наименование услуги
- isIncluded * – включена ли данная услуга в стоимость текущей конфигурации тура, допустимы значения: 0 – не включена, 1 – включена.
- description – описание услуги в произвольной форме (не обрабатывается).
- surcharge – стоимость услуги.
- flightCompatibleIds – совместимые перелеты. Идентификаторы услуг перелетов, представленных в секции services, которые могут применяться совместно с текущей услугой перелета. Для перелета туда заполняется id перелетов обратно и наоборот. Применяется и является обязательным только для услуг типа: DptTransport, RtnTransport, MidDptTransport, MidRtnTransport.
- flightClass – класс перелета. Группы перелетов для классов задаются в настройке flightTariffGroups. Применяется и является обязательным только для услуг типа: DptTransport, RtnTransport, MidDptTransport, MidRtnTransport. Может принимать одно из следующих значений:
- ECONOM – эконом
- BUSINESS – бизнес
- flightAvailability – наличие билетов, допустимы значения: 0 – нет мест, 1 есть места, 2 – запрос. Применяется и является обязательным только для услуг типа: DptTransport, RtnTransport, MidDptTransport, MidRtnTransport.
- flightPlacesCount – параметр не обрабатывается, всегда возвращается -1.
- flightAirportFrom – код аэропорта вылета. Применяется и является обязательным только для услуг типа: DptTransport, RtnTransport, MidDptTransport, MidRtnTransport.
- flightAirportTo – код аэропорта прилета. Применяется и является обязательным только для услуг типа: DptTransport, RtnTransport, MidDptTransport, MidRtnTransport.
- flightNum – код авиакомпании и номер рейса. Применяется и является обязательным только для услуг типа: DptTransport, RtnTransport.
- flightAirline – код авиакомпании. Применяется только для услуг типа: DptTransport, RtnTransport, MidDptTransport, MidRtnTransport.
- flightStartDateTime – Дата и время вылета в формате dd.MM.yyyy HH:mm (пример: 31.12.2016 14:30). Применяется только для услуг типа: DptTransport, RtnTransport, MidDptTransport, MidRtnTransport.
- flightEndDateTime – Дата и время прилета в формате dd.MM.yyyy HH:mm (пример: 31.12.2016 14:30). Применяется только для услуг типа: DptTransport, RtnTransport, MidDptTransport, MidRtnTransport.
- flightAircraft – тип самолета. Применяется только для услуг типа: DptTransport, RtnTransport, MidDptTransport, MidRtnTransport.
Проверка туриста (checkTourist)
Метод служит для получения информации о путевке по номеру путевки и номеру паспорта туриста.
- Формат запроса:
- /checkTourist
- Принимаемые параметры ( * – обязательный):
- dogovorNumber * – номер путевки.
- passport * – номер паспорта туриста (заграничного или общегражданского).
- Возвращаемый результат:
- isDogovor – true, если путевка найдена по номеру путевки, false, если не найдена.
- isAnnulated – true, если путевка аннулирована, false, если не аннулирована.
- dogovorStatus – статус путевки
- isPay – true, если путевка полностью оплачена, false, если не оплачена или оплачена частично.
- dogovorDateBegin – дата начала заезда.
- dogovorDateEnd – дата окончания заезда.
- dogovorDateCreate – дата создания путевки.
- isTouristDogovorCreate – true, если турист (по номеру паспорта) является главным туристом в путевке.
- services – набор услуг в путевке.
- svKey – код класса услуги.
- code – код услуги.
- subCode1 – код доп. описания 1 услуги.
- subCode2 – код доп. описания 2 услуги.
- name – название услуги.
- touristInfo – информация о главном туристе.
- lastname – фамилия туриста (рус).
- firstname – имя туриста (рус).
- surname – отчество туриста.
- address – адрес (индекс, город, улица, дом, квартира).
- postcode – индекс.
- city – город.
- street – улица.
- home – дом.
- roomNumber – квартира.