Мастер-Тур(15):API для разработки поиска авиабилетов
Версия статьи от 6-06-2024.
Поддерживаемые версии ПК «Мастер-Тур»: |
Содержание
[убрать]- 1 Введение
- 2 Установка
- 3 Список методов
- 3.1 Авторизация (Token)
- 3.2 Выгрузка настроек службы поиска (Settings)
- 3.3 Выгрузка списка валют (Currency)
- 3.4 Выгрузка квотируемых услуг системы (QuotedServices)
- 3.5 Поиск авиабилетов в одну сторону (oneway)
- 3.6 Поиск авиабилетов туда и обратно (twoway)
- 3.7 Отображение авиабилетов в корзине и бронирование
- 4 Приложения
Введение
Данный web-сервис предназначен для разработки собственного поиска авиабилетов на основе API.
Установка
Для работы с web-сервисом необходимо на отдающей стороне установить службу поиска.
После установки web-сервис будет доступен по адресу http://значение настройки "serviceAddress" в TourSearchOwin/"название метода" (пример: http://localhost:9000/TourSearchOwin/Settings)
Список методов
Авторизация (Token)
Метод производит получение авторизационного токена (описание стандарта).
- Формат запроса:
- POST .../TourSearchOwin/Token?
- Принимаемые параметры POST запроса ( * – обязательный):
- grant_type * – password
- username * – логин представителя партнера
- password * – пароль представителя партнера
- Возвращаемый результат:
- access_token – токен
- token_type – тип токена
- expires_in – код
- userKey – ключ пользователя
- .issued – дата получения
- .expires – дата действия до
Выгрузка настроек службы поиска (Settings)
Метод производит выгрузку настроек службы поиска.
- Формат запроса:
- GET .../TourSearchOwin/Settings?
- Принимаемые параметры:
- нет принимаемых параметров
- Возвращаемый результат:
- ChildAgesSetting – регулируется настройкой максимальный возраст ребенка (массив возрастов, при которых турист будет считаться ребенком
- DurationSetting – регулируется настройкой максимальная продолжительность тура (массив продолжительностей, доступных в фильтрах для поиска)
- RoundServiceSetting – признак округления цены (количество знаков после запятой)
- CacheReady – статус готовности службы поиска к работе (true/false)
- EnableFiterTree – устаревшая настройка, будет убрана (по умолчанию всегда false)
- EnableActualFilters – включены ли актуальные фильтры (true/false)
- CorrectLicense – проверка лицензии (true/false)
- CorrectLicenseMessage – сообщение, если проверка лицензии не прошла
- IsCorrectUser – проверка наличия пользователя в таблице Userlist, под которым запущена служба поиска (true/false)
- IsShowCitizenAuthTourist – настройка запрашивать гражданство при регистрации частного лица (true/false)
- IsShowFewCountPlaces – настройка отображения числового значения оставшихся мест, когда достигнуто значение «Мало» (true/false)
- IsShowBusTransferPlaces – использовать фильтр наличие мест на автобусный переезд в поиске (true/false)
- UseBusSeatChecks – план рассадки автобусного переезда (0 – не отображать, 1 – отображать без проверки, 2 – отображать с проверкой)
- UseTransferSeatChecks – план рассадки трансфера (0 – не отображать, 1 – отображать без проверки, 2 – отображать с проверкой)
- IsShowFiltersByCity – отображать фильтр по городам на главной странице поиска (true/false)
- CheckRealCourses – включена ли проверка курсов реальных валют при поиске (true/false)
- CommonImagesFolderPath – путь к папке для хранения изображений
- UseApplyFiltersButton – отображать кнопку «Применить фильтры» (true/false)
- AutoSearchFiltersTimeout – задержка между выбором дополнительных фильтров и выводом результатов (в секундах)
- UseFastSearchAlgoritm – использовать быстрый алгоритм поиска (true/false)
- MaxSearchDatesCountClient – максимальное количество дат, которое будет обрабатываться в клиенте поиска
- MaxDurationsCountClient – максимальное количество продолжительностей, которое будет обрабатываться в клиенте поиска
- UseHotelCategoryGlobalCodeInDopFilter – использовать глобальные коды категорий отелей в поиске
- UsePansionGlobalCodeInDopFilter – использовать глобальные коды питаний в поиске
- CheckTouristDataInBasket – проверять корректность данных туристов
- SimpleRegistration – упрощенная регистрация частного лица
- ShowHotelImagesInSearch – показывать описание и изображения отелей в поиске
- CacheReadyMessage – сообщение о готовности службы поиска или службы расчета актуальных фильтров. Варианты возвращаемых значений:
- <add key="enableActualFilters" value="true" /> - CacheReady: true = CacheReadyMessage: "Кеш инициализирован"; CacheReady: false = CacheReadyMessage: "Кеш еще не инициализирован"
- <add key="enableActualFilters" value="false" /> - Служба актуальных фильтров недоступна (выключена, неверно указана ссылка на нее и т.п.) CacheReadyMessage: "Служба актуальных фильтров недоступна"; Служба актуальных фильтров доступна но не готова - CacheReadyMessage: "Кеш службы актуальных фильтров не инициализирован"; Служба актуальных фильтров готова, а основная служба не готова - CacheReadyMessage: "Кеш ещё не инициализирован"; Служба актуальных фильтров готова, и основная служба готова - CacheReadyMessage: "Кеш ещё инициализирован".
Выгрузка списка валют (Currency)
Метод возвращает список используемых валют.
- Формат запроса:
- GET .../TourSearchOwin/Currency
- Принимаемые параметры:
- нет принимаемых параметров
- Возвращаемый результат:
- Code – код валюты
- Name – наименование валюты
- IsMain – признак валюты «Главная»
- IsNational – признак валюты «Национальная»
- IsoCode – ISO код валюты
- Key – идентификатор валюты
- IsShowInSearch – признак показывать ли валюту в поиске
Выгрузка квотируемых услуг системы (QuotedServices)
Метод производит выгрузку услуг с признаком «Квотируемая»
- Формат запроса:
- GET .../TourSearchOwin/QuotedServices
- Принимаемые параметры:
- нет принимаемых параметров
- Возвращаемый результат:
- Key – идентификатор услуги
- Code – код услуги
- Name – наименование услуги (русский)
- NameLat – наименование услуги (английский)
- IsDuration – наличие продолжительности у услуги
- IsCity – наличие города у услуги
- IsSubCode1 – признак наличия SubCode1 у услуги (вид проживания у отеля, тариф у авиаперелета)
- IsSubCode2 – признак наличия SubCode2 у услуги (тип питания у отеля)
- Quoted – признак квотируемости услуги
- CheckGeoPoint – наличие геоточек у услуги
- IsRoute – признак маршрутной услуги
- IsPartnerBasedOn – признак сопоставления партнера услуги в зависимости от отеля
- Control – идентификатор статуса услуги
Поиск авиабилетов в одну сторону (oneway)
Выгрузка городов отправления (oneway)
Метод производит выгрузку всех доступных городов отправления.
- Формат запроса:
- GET .../TourSearchOwin/individuals/avia/oneway/departures?
- Принимаемые параметры:
- нет принимаемых параметров
- Возвращаемый результат:
- Key – ключ города
- Name – название города
Выгрузка списка стран прибытия (oneway)
Метод производит выгрузку всех доступных направлений.
- Формат запроса:
- GET .../TourSearchOwin/individuals/avia/oneway/arrivals/1/countries?
- Принимаемые параметры ( * – обязательный):
- 1 * – идентификатор города отправления (из контроллера .../TourSearchOwin/individuals/avia/oneway/departures?)
- Возвращаемый результат:
- Name – название страны
- Key – ключ страны
- DestinationType – тип результата (всегда возвращается в JSON = 1, в xml = country)
Выгрузка списка городов прибытия (oneway)
Метод возвращает список всех доступных городов по определенному городу отправления и стране прибытия.
- Формат запроса:
- GET .../TourSearchOwin/individuals/avia/oneway/arrivals/1/90?
- Принимаемые параметры ( * – обязательный):
- 1 * – идентификатор города отправления (полученный из метода .../TourSearchOwin/individuals/avia/oneway/departures?)
- 90 * – идентификатор страны прибытия (полученный из метода .../TourSearchOwin/individuals/avia/oneway/arrivals/1/countries?)
- Возвращаемый результат:
- Key – идентификатор города
- Name – название города
Выгрузка актуальных дат вылета (oneway)
Метод производит выгрузку доступных дат вылета для поискового запроса.
- Формат запроса:
- GET .../TourSearchOwin/individuals/avia/oneway/departures/dates/1/35?
- Принимаемые параметры ( * – обязательный):
- 1 * – идентификатор города отправления (полученный из метода .../TourSearchOwin/individuals/avia/oneway/departures?)
- 35 * – идентификатор города прибытия (полученный из метода .../TourSearchOwin/individuals/avia/oneway/arrivals/1/90?)
- Возвращаемый результат:
- массив дат
Поиск авиабилетов (oneway)
Метод поиска авиабилетов использует множество параметров для поиска и фильтрации авиабилетов. Метод возвращает варианты перелетов в порядке возрастания цены.
- Формат запроса:
- GET .../TourSearchOwin/individuals/avia/1/35/20180830?
- Принимаемые параметры ( * – обязательный):
- 1 * – идентификатор города отправления (полученный из метода .../TourSearchOwin/individuals/avia/oneway/departures?)
- 35 * – идентификатор города прибытия (полученный из метода .../TourSearchOwin/individuals/avia/oneway/arrivals/1/90?)
- 20180830 * – дата вылета в формате YYYYMMDD (полученная из метода .../TourSearchOwin/individuals/avia/oneway/departures/dates/1/35?)
- PageNumber * – номер возвращаемой страницы (по умолчанию возвращается 1)
- PageSize * – количество возвращаемых результатов на одной странице (возвращается 20)
- AdultCount * – количество взрослых
- ChildAges – возраст детей. Если детей несколько, и параметры передаются через url, то каждое значение необходимо передавать отдельным параметром.
- CurrencyName * – код валюты
- AviaQuota * – информация о квотах на авиаперелет (значения параметров: "1" — фильтр "Есть", "5" — фильтр "Есть+запрос", "7" — фильтр "Все")
- fromFlexible – гибкий поиск (- "x" дней) от текущей даты, "x" в диапазоне от 1 до 3 дней.
- toFlexible – гибкий поиск (+ "x" дней) от текущей даты, "x" в диапазоне от 1 до 3 дней.
- TourKey – просмотр нескольких вариантов перелетов по туру, если такие варианты имеются
- MinPrice * – минимальная цена (по умолчанию не передается)
- MaxPrice – максимальная цена (по умолчанию не передается)
- Airline – ключ авиакомпании (дополнительный фильтр)
- AirportDeparture – ключ аэропорта вылета (дополнительный фильтр)
- AirportArrival – ключ аэропорта прилета (дополнительный фильтр)
- TimeDepartureFrom – время отправления с (по умолчанию возвращается 00:00)
- TimeDepartureTo – время отправления по (по умолчанию возвращается 23:59)
- TimeArrivalFrom – время прибытия с (по умолчанию возвращается 00:00)
- TimeArrivalTo – время прибытия по (по умолчанию возвращается 23:59)
- ArrivalFlightNoTransfer – производить поиск без пересадок в прямом направлении (true/false, по умолчанию false)
- DepartureFlightNoTransfer – производить поиск без пересадок в обратном направлении (true/false, по умолчанию false)
- DepartureFlightNumberTransfer – наличие пересадок в прямом направлении (1 – одна пересадка, 2 – две пересадки и более, 3 – одна пересадка совместно с двумя пересадками и более)
- ArrivalFlightNumberTransfer – наличие пересадок в обратном направлении (1 – одна пересадка, 2 – две пересадки и более, 3 – одна пересадка совместно с двумя пересадками и более)
- Tariff – ключ класса авиаперелета (дополнительный фильтр)
- CombineAirlines — разрешить комбинировать авиаперелеты (дополнительный фильтр). Параметр применяется только при наличии параметра airline. Обрабатывается начиная с релиза 15.3.
- CombineTariffs — разрешить комбинировать классы перелета (дополнительный фильтр). Параметр применяется только при наличии параметра tariff. Обрабатывается начиная с релиза 15.3.
- Возвращаемый результат:
- CheckMessages – сообщения для логики проверки тура (не используется)
- Message – сообщение об ошибке
- Key – код ошибки
- Value – сообщение об ошибке
- Result – результаты поиска
- Key – идентификатов программы тура
- Name – название программы тура
- TourUrl – ссылка на программу тура
- BookingConditions – условия бронирования программы туров
- DefaultManagers – список ведущих менеджеров
- Manager – менеджер по умолчанию
- Branches – список филиалов бронирования
- DetermineTheBranchOnCity – признак определения филиала в зависимости от города начала поездки
- StartDate – дата начала тура
- Duration – продолжительность тура (в днях)
- DurationInNight – продолжительность тура (в ночах)
- Types – идентификатор типа туров
- Cost – цена тура
- Rate – код валюты тура
- CityDepature – город отправления
- Key – идентификатор города отправления
- Value – название города отправления
- CountryId – страна тура
- Services – услуги в туре
- DepartureCity – город отправления
- Key – идентификатор
- Value – название
- DepartureCountry – страна отправления
- Key – идентификатор
- Value – название
- ArrivalCity – город прибытия
- Key – идентификатор
- Value – название
- ArrivalCountry – страна прибытия
- Key – идентификатор
- Value – название
- DepartureAirport – аэропорт отправления
- Key – идентификатор
- Value – название
- ArrivalAirport – аэропорт прибытия
- Key – идентификатор
- Value – название
- Airline – авиакомпания
- Key – идентификатор
- Value – название
- Aircraft – воздушное судно
- Key – идентификатор
- Value – название
- Flight – рейс
- Key – идентификатор
- Value – название
- DepartureTime – время вылета
- ArrivalTime – время прилета
- EndDateTime – дата и время прилета
- FlightDetails – информация об авиаперелете
- Tariff – информация о тарифе перелета
- Key – идентификатор
- Code – код тарифа
- Name – название тарифа
- Cost – разница в стоимости с самым дешевым вариантом
- QuotaStatus – информация о квоте
- PlacesStatus – статус по квотам (есть места / нет мест / под запрос)
- FreePlaces – количество свободных мест, если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест". Иначе возвращается 0. Если в данном параметре 0, то руководствоваться следует значением, полученном в параметре PlacesStatus.
- IsFewPlaces – выполнены ли условия, заданные в настройке "Мало": true – если заданы условия количества мест "Мало" и данные условия выполнены, false – если не заданы условия количества мест "Мало" или они заданы, но не выполнены.
- PartnerId – ключ партнера
- ByPax – цена за человека (true/false)
- Partner – информация о партнере
- Key – идентификатор
- Value – название
- Tariff – информация о тарифе перелета
- FlightSetting – внутренняя информация о перелете из программы туров
- ServiceId – идентификатор класса услуги (внутренняя информация из программы туров)
- PatternId – идентификатор паттерна услуги (внутренняя информация из программы туров)
- FlightId – идентификатор перелета (внутренняя информация из программы туров)
- FlightSourceMode – локальный или удаленный перелет (внутренняя информация из программы туров)
- Id – идентификатор базового шаблона услуги (внутренняя информация из программы туров)
- SvKey – ключ типа услуги
- IsSubCode1 – признак наличия доп. описания 1
- IsSubCode2 – признак наличия доп. описания 2
- IsPartnerBasedOn – признак услуга с приоритетным подбором поставщика
- Day – день предоставления услуги
- DurationInNight – продолжительность услуги в ночах
- BeginDateTime – дата предоставления услуги
- IsHooded – признак скрытая услуга
- IsDeleted – признак удаляемая услуга
- IsNotCalculate – признак не рассчитываемая услуга
- PacketId – ключ пакета
- Index – порядковый номер услуги
- DepartureCity – город отправления
- NotRouteServices – не используется
- MinCostServicesComposition – массив состав услуг минимальной цены
- Key – ключ
- TemplateId – идентификатор шаблона
- PatternId – идентификатор вкладки
- SettingId – идентификатор услуги
- Value – значение
- ServiceType – тип услуги
- Code – ключ услуги
- SubCode1 – доп. описание 1
- SubCode2 – доп. описание 2
- PacketId – пакет услуги
- PartnerId – партнер услуги
- CountryId – страна услуги
- CityId – город услуги
- Day – день предоставления услуги
- DurationInNight – продолжительность услуги в ночах
- Key – ключ
- FlightWeight –
- LinkingFlightsRules – объект правил связывания
- notCombineDifferentAirlineRule – объект не скрещивать авиакомпании
- airlines – авиакомпании
- flightSettings – массив ключей ServiceId, PatternId, FlightId
- enabled – флаг включен/выключен
- checkPlusMinus1CharterRule – объект Отличие номера рейса на 1
- FlightSettingPairs – массив чартеров, для которых это правило будет выполняться
- enabled – флаг включен/выключен
- notCombineDifferentTariffGroupRule – объект не комбинировать рейсы от разных классов перелетов
- FlightSettings – массив ключей ServiceId, PatternId, FlightId
- enabled – флаг включен/выключен
- notCombineDifferentPartnerRule – объект не комбинировать рейсы от разных партнеров
- FlightSettings – массив ключей ServiceId, PatternId, FlightId
- enabled – флаг включен/выключен
- departureCityEqualsArrivalCityRule – объект Город вылета = городу прилета
- FlightSettingPairs – чартеры, для которых это будет выполняться
- enabled – флаг включен/выключен
- combineOnlySpecificChartersRule – объект не комбинировать различные классы перелетов
- settings – массив ключей чартеров CharterIds и ServiceId, PatternId, FlightId
- enabled – флаг включен/выключен
- notCombineDifferentAirlineRule – объект не скрещивать авиакомпании
- RouteSubVariants – не используется
- SecondaryFiltersResult – результат, если заданы дополнительные фильтры
- TourTypes – типы тура
- Id –
- Name –
- ParentId –
- Type –
- TourPrograms – информация по каждой турпрограмме
- Key –
- Name –
- TourUrl –
- BookingConditions –
- IsLandOnly –
- IsRestrictMultiHotels –
- IsHotelTemplates –
- IsRouteServices –
- MultiHotelDelta –
- Rate –
- DateStart –
- DateEnd –
- Status –
- Key –
- Value –
- Templates –
- $id –
- $id –
- Types –
- Id –
- Name –
- ParentId –
- Type –
- LinkingFlightsRules –
- notCombineDifferentAirlineRule –
- airlines –
- flightSettings –
- enabled –
- checkPlusMinus1CharterRule –
- FlightSettingPairs –
- enabled –
- notCombineDifferentTariffGroupRule –
- FlightSettings –
- enabled –
- notCombineDifferentPartnerRule –
- FlightSettings –
- enabled –
- departureCityEqualsArrivalCityRule –
- FlightSettingPairs –
- enabled –
- combineOnlySpecificChartersRule –
- settings –
- enabled –
- notCombineDifferentAirlineRule –
- XmlSettings – xml
- Type –
- TourDurations –
- TourDates –
- HotelCities – не используется
- ' –
- HotelResorts – не используется
- ' –
- HotelCategories – не используется
- ' –
- Hotels – не используется
- ' –
- Pansions – не используется
- ' –
- Airlines – авиакомпании в дополнительных фильтрах
- ' –
- FlightTariffs – класс перелета в дополнительных фильтрах
- ' –
- DepartureCities – города вылета в дополнительных фильтрах
- ' –
- DepartureAirports – аэропорты вылета в дополнительных фильтрах
- ' –
- ArrivalCities – города прибытия в дополнительных фильтрах
- ' –
- ArrivalAirports – аэропорты прибытия в дополнительных фильтрах
- ' –
- HotelTypes – не используется
- ' –
- HotelCities – не используется
- TourTypes – типы тура
Поиск авиабилетов туда и обратно (twoway)
Выгрузка городов отправления (twoway)
Метод производит выгрузку всех доступных городов отправления.
- Формат запроса:
- GET .../TourSearchOwin/individuals/avia/twoway/departures?
- Принимаемые параметры:
- нет принимаемых параметров
- Возвращаемый результат:
- Key – ключ города
- Name – название города
Выгрузка списка стран прибытия (twoway)
Метод производит выгрузку всех доступных направлений.
- Формат запроса:
- GET .../TourSearchOwin/individuals/avia/twoway/arrivals/1/countries?
- Принимаемые параметры ( * – обязательный):
- 1 * – идентификатор города отправления (из контроллера .../TourSearchOwin/individuals/avia/twoway/departures?)
- Возвращаемый результат:
- Name – название страны
- Key – ключ страны
- DestinationType – тип результата (всегда возвращается в JSON = 1, в xml = country)
Выгрузка списка городов прибытия (twoway)
Метод возвращает список всех доступных городов по определенному городу отправления и стране прибытия.
- Формат запроса:
- GET .../TourSearchOwin/individuals/avia/twoway/arrivals/1/90?
- Принимаемые параметры ( * – обязательный):
- 1 * – идентификатор города отправления (полученный из метода .../TourSearchOwin/individuals/avia/twoway/departures?)
- 90 * – идентификатор страны прибытия (полученный из метода .../TourSearchOwin/individuals/avia/twoway/arrivals/1/countries?)
- Возвращаемый результат:
- Key – идентификатор города
- Name – название города
Выгрузка актуальных дат вылета (twoway)
Метод производит выгрузку доступных дат вылета для поискового запроса.
- Формат запроса:
- GET .../TourSearchOwin/individuals/avia/twoway/departures/dates/1/35?
- Принимаемые параметры ( * – обязательный):
- 1 * – идентификатор города отправления (полученный из метода .../TourSearchOwin/individuals/avia/twoway/departures?)
- 35 * – идентификатор города прибытия (полученный из метода .../TourSearchOwin/individuals/avia/twoway/arrivals/1/90?)
- Возвращаемый результат:
- массив дат
Выгрузка актуальных дат возврата (twoway)
Метод производит выгрузку доступных дат возврата для поискового запроса.
- Формат запроса:
- GET .../TourSearchOwin/individuals/avia/twoway/arrivals/dates/1/35/20180830?
- Принимаемые параметры ( * – обязательный):
- 1 * – идентификатор города отправления (полученный из метода .../TourSearchOwin/individuals/avia/twoway/departures?)
- 35 * – идентификатор города прибытия (полученный из метода .../TourSearchOwin/individuals/avia/twoway/arrivals/1/90?)
- 20180830 * – дата вылета в формате YYYYMMDD (полученная из метода .../TourSearchOwin/individuals/avia/twoway/departures/dates/1/35?)
- Возвращаемый результат:
- массив дат
Поиск авиабилетов (twoway)
Метод поиска авиабилетов использует множество параметров для поиска и фильтрации авиабилетов. Метод возвращает варианты перелетов в порядке возрастания цены.
- Формат запроса:
- GET .../TourSearchOwin/individuals/avia/1/35/20180830/20180912?
- Принимаемые параметры ( * – обязательный):
- 1 * – идентификатор города отправления (полученный из метода .../TourSearchOwin/individuals/avia/twoway/departures?)
- 35 * – идентификатор города прибытия (полученный из метода .../TourSearchOwin/individuals/avia/twoway/arrivals/1/90?)
- 20180830 * – дата вылета в формате YYYYMMDD (полученная из метода .../TourSearchOwin/individuals/avia/twoway/departures/dates/1/35?)
- 20180912 * – дата возврата в формате YYYYMMDD (полученная из метода .../TourSearchOwin/individuals/avia/twoway/departures/dates/1/35/20180830?)
- PageNumber * – номер возвращаемой страницы (по умолчанию возвращается 1)
- PageSize * – количество возвращаемых результатов на одной странице (возвращается 20)
- AdultCount * – количество взрослых
- ChildAges – возраст детей. Если детей несколько, и параметры передаются через url, то каждое значение необходимо передавать отдельным параметром.
- CurrencyName * – код валюты
- AviaQuota * – информация о квотах на авиаперелет (значения параметров: "1" — фильтр "Есть", "5" — фильтр "Есть+запрос", "7" — фильтр "Все")
- fromFlexible – гибкий поиск (- "x" дней) от текущей даты, "x" в диапазоне от 1 до 3 дней.
- toFlexible – гибкий поиск (+ "x" дней) от текущей даты, "x" в диапазоне от 1 до 3 дней.
- TourKey – просмотр нескольких вариантов перелетов по туру, если такие варианты имеются
- MinPrice * – минимальная цена (по умолчанию не передается)
- MaxPrice – максимальная цена (по умолчанию не передается)
- Airline – ключ авиакомпании (дополнительный фильтр)
- AirportDeparture – ключ аэропорта вылета (дополнительный фильтр)
- AirportArrival – ключ аэропорта прилета (дополнительный фильтр)
- TimeDepartureFrom – время отправления с (по умолчанию возвращается 00:00)
- TimeDepartureTo – время отправления по (по умолчанию возвращается 23:59)
- TimeArrivalFrom – время прибытия с (по умолчанию возвращается 00:00)
- TimeArrivalTo – время прибытия по (по умолчанию возвращается 23:59)
- ArrivalFlightNoTransfer – производить поиск без пересадок в прямом направлении (true/false, по умолчанию false)
- DepartureFlightNoTransfer – производить поиск без пересадок в обратном направлении (true/false, по умолчанию false)
- DepartureFlightNumberTransfer – наличие пересадок в прямом направлении (1 – одна пересадка, 2 – две пересадки и более, 3 – одна пересадка совместно с двумя пересадками и более)
- ArrivalFlightNumberTransfer – наличие пересадок в обратном направлении (1 – одна пересадка, 2 – две пересадки и более, 3 – одна пересадка совместно с двумя пересадками и более)
- Tariff – ключ класса авиаперелета (дополнительный фильтр)
- CombineAirlines — разрешить комбинировать авиаперелеты (дополнительный фильтр). Параметр применяется только при наличии параметра airline. Обрабатывается начиная с релиза 15.3.
- CombineTariffs — разрешить комбинировать классы перелета (дополнительный фильтр). Параметр применяется только при наличии параметра tariff. Обрабатывается начиная с релиза 15.3.
- Возвращаемый результат:
- CheckMessages – сообщения для логики проверки тура (не используется)
- Message – сообщение об ошибке
- Key – код ошибки
- Value – сообщение об ошибке
- Result – результаты поиска
- Key – идентификатов программы тура
- Name – название программы тура
- TourUrl – ссылка на программу тура
- BookingConditions – условия бронирования программы туров
- DefaultManagers – список ведущих менеджеров
- Manager – менеджер по умолчанию
- Branches – список филиалов бронирования
- DetermineTheBranchOnCity – признак определения филиала в зависимости от города начала поездки
- StartDate – дата начала тура
- Duration – продолжительность тура (в днях)
- DurationInNight – продолжительность тура (в ночах)
- Types – идентификатор типа туров
- Cost – цена тура
- Rate – код валюты тура
- CityDepature – город отправления
- Key – идентификатор города отправления
- Value – название города отправления
- CountryId – страна тура
- Services – услуги в туре
- DepartureCity – город отправления
- Key – идентификатор
- Value – название
- DepartureCountry – страна отправления
- Key – идентификатор
- Value – название
- ArrivalCity – город прибытия
- Key – идентификатор
- Value – название
- ArrivalCountry – страна прибытия
- Key – идентификатор
- Value – название
- DepartureAirport – аэропорт отправления
- Key – идентификатор
- Value – название
- ArrivalAirport – аэропорт прибытия
- Key – идентификатор
- Value – название
- Airline – авиакомпания
- Key – идентификатор
- Value – название
- Aircraft – воздушное судно
- Key – идентификатор
- Value – название
- Flight – рейс
- Key – идентификатор
- Value – название
- DepartureTime – время вылета
- ArrivalTime – время прилета
- EndDateTime – дата и время прилета
- FlightDetails – информация об авиаперелете
- Tariff – информация о тарифе перелета
- Key – идентификатор
- Code – код тарифа
- Name – название тарифа
- Cost – разница в стоимости с самым дешевым вариантом
- QuotaStatus – информация о квоте
- PlacesStatus – статус по квотам (есть места / нет мест / под запрос)
- FreePlaces – количество свободных мест, если удовлетворяются условия, заданные в настройке "Мало" и включена настройка "Отображать числовое значение оставшихся мест". Иначе возвращается 0. Если в данном параметре 0, то руководствоваться следует значением, полученном в параметре PlacesStatus.
- IsFewPlaces – выполнены ли условия, заданные в настройке "Мало": true – если заданы условия количества мест "Мало" и данные условия выполнены, false – если не заданы условия количества мест "Мало" или они заданы, но не выполнены.
- PartnerId – ключ партнера
- ByPax – цена за человека (true/false)
- Partner – информация о партнере
- Key – идентификатор
- Value – название
- Tariff – информация о тарифе перелета
- FlightSetting – внутренняя информация о перелете из программы туров
- ServiceId – идентификатор класса услуги (внутренняя информация из программы туров)
- PatternId – идентификатор паттерна услуги (внутренняя информация из программы туров)
- FlightId – идентификатор перелета (внутренняя информация из программы туров)
- FlightSourceMode – локальный или удаленный перелет (внутренняя информация из программы туров)
- Id – идентификатор базового шаблона услуги (внутренняя информация из программы туров)
- SvKey – ключ типа услуги
- IsSubCode1 – признак наличия доп. описания 1
- IsSubCode2 – признак наличия доп. описания 2
- IsPartnerBasedOn – признак услуга с приоритетным подбором поставщика
- Day – день предоставления услуги
- DurationInNight – продолжительность услуги в ночах
- BeginDateTime – дата предоставления услуги
- IsHooded – признак скрытая услуга
- IsDeleted – признак удаляемая услуга
- IsNotCalculate – признак не рассчитываемая услуга
- PacketId – ключ пакета
- Index – порядковый номер услуги
- DepartureCity – город отправления
- NotRouteServices – не используется
- MinCostServicesComposition – массив состав услуг минимальной цены
- Key – ключ
- TemplateId – идентификатор шаблона
- PatternId – идентификатор вкладки
- SettingId – идентификатор услуги
- Value – значение
- ServiceType – тип услуги
- Code – ключ услуги
- SubCode1 – доп. описание 1
- SubCode2 – доп. описание 2
- PacketId – пакет услуги
- PartnerId – партнер услуги
- CountryId – страна услуги
- CityId – город услуги
- Day – день предоставления услуги
- DurationInNight – продолжительность услуги в ночах
- Key – ключ
- FlightWeight –
- LinkingFlightsRules – объект правил связывания
- notCombineDifferentAirlineRule – объект не скрещивать авиакомпании
- airlines – авиакомпании
- flightSettings – массив ключей ServiceId, PatternId, FlightId
- enabled – флаг включен/выключен
- checkPlusMinus1CharterRule – объект Отличие номера рейса на 1
- FlightSettingPairs – массив чартеров, для которых это правило будет выполняться
- enabled – флаг включен/выключен
- notCombineDifferentTariffGroupRule – объект не комбинировать рейсы от разных классов перелетов
- FlightSettings – массив ключей ServiceId, PatternId, FlightId
- enabled – флаг включен/выключен
- notCombineDifferentPartnerRule – объект не комбинировать рейсы от разных партнеров
- FlightSettings – массив ключей ServiceId, PatternId, FlightId
- enabled – флаг включен/выключен
- departureCityEqualsArrivalCityRule – объект Город вылета = городу прилета
- FlightSettingPairs – чартеры, для которых это будет выполняться
- enabled – флаг включен/выключен
- combineOnlySpecificChartersRule – объект не комбинировать различные классы перелетов
- settings – массив ключей чартеров CharterIds и ServiceId, PatternId, FlightId
- enabled – флаг включен/выключен
- notCombineDifferentAirlineRule – объект не скрещивать авиакомпании
- RouteSubVariants – не используется
- SecondaryFiltersResult – результат, если заданы дополнительные фильтры
- TourTypes – типы тура
- Id –
- Name –
- ParentId –
- Type –
- TourPrograms – информация по каждой турпрограмме
- Key –
- Name –
- TourUrl –
- BookingConditions –
- IsLandOnly –
- IsRestrictMultiHotels –
- IsHotelTemplates –
- IsRouteServices –
- MultiHotelDelta –
- Rate –
- DateStart –
- DateEnd –
- Status –
- Key –
- Value –
- Templates –
- $id –
- $id –
- Types –
- Id –
- Name –
- ParentId –
- Type –
- LinkingFlightsRules –
- notCombineDifferentAirlineRule –
- airlines –
- flightSettings –
- enabled –
- checkPlusMinus1CharterRule –
- FlightSettingPairs –
- enabled –
- notCombineDifferentTariffGroupRule –
- FlightSettings –
- enabled –
- notCombineDifferentPartnerRule –
- FlightSettings –
- enabled –
- departureCityEqualsArrivalCityRule –
- FlightSettingPairs –
- enabled –
- combineOnlySpecificChartersRule –
- settings –
- enabled –
- notCombineDifferentAirlineRule –
- XmlSettings – xml
- Type –
- TourDurations –
- TourDates –
- HotelCities – не используется
- ' –
- HotelResorts – не используется
- ' –
- HotelCategories – не используется
- ' –
- Hotels – не используется
- ' –
- Pansions – не используется
- ' –
- Airlines – авиакомпании в дополнительных фильтрах
- ' –
- FlightTariffs – класс перелета в дополнительных фильтрах
- ' –
- DepartureCities – города вылета в дополнительных фильтрах
- ' –
- DepartureAirports – аэропорты вылета в дополнительных фильтрах
- ' –
- ArrivalCities – города прибытия в дополнительных фильтрах
- ' –
- ArrivalAirports – аэропорты прибытия в дополнительных фильтрах
- ' –
- HotelTypes – не используется
- ' –
- HotelCities – не используется
- TourTypes – типы тура
Отображение авиабилетов в корзине и бронирование
Отображение авиабилетов в корзине и бронирование производиться стандартным механизмом, описанном в API для разработки онлайн поиска и бронирования .
Приложения
Приложение 1: параметры услуги (ServiceType, Code, SubCode1, SubCode2)
Параметры ServiceType – это ключ типа услуги, Сode – ключ услуги, SubCode1 и SubCode2, возвращаемые при API-запросах – это параметры дополнительных описаний двух типов, индивидуальных для каждой услуги.
Ключ типа услуги (ServiceType) | Наименование типа услуги | Ключ услуги (Code) | Доп. описание 1 (SubCode1) | Таблица БД со значениями SubCode1 | Доп. описание 2 (SubCode2) | Таблица БД со значениями SubCode2 |
---|---|---|---|---|---|---|
1 | Авиаперелет | индивидуальный ключ услуги | Тариф | AirService | отсутствует | отсутствует |
2 | Трансфер | индивидуальный ключ услуги | Вид транспорта | Transport | отсутствует | отсутствует |
3 | Отель/Круиз | индивидуальный ключ услуги | Вид проживания (Тип номера + Категория номера + Тип размещения) | HotelRooms (Rooms + RoomCategory + Accmdmentype) | Тип питания | Pansion |
4 | Экскурсия | индивидуальный ключ услуги | Вид транспорта | Transport | отсутствует | отсутствует |
5 | Виза | индивидуальный ключ услуги | отсутствует | отсутствует | отсутствует | отсутствует |
6 | Страховка | индивидуальный ключ услуги | Доп. описание 1 | AddDescript1 | Доп. описание 2 | AddDescript2 |
8 | Доп услуга в отеле/круизе | индивидуальный ключ услуги | Вид проживания (Тип номера + Категория номера + Тип размещения) | HotelRooms (Rooms + RoomCategory + Accmdmentype) | Доп. описание 2 | AddDescript2 |
14 | Автобусный переезд | индивидуальный ключ услуги | Место посадки | BusTransferPoints | Вид транспорта | Transport |
99 | Любая пользовательская услуга | индивидуальный ключ услуги | Доп. описание 1 | AddDescript1 | Доп. описание 2 | AddDescript2 |