Master-Interlook:IntegrationService

Материал из Megatec
Перейти к: навигация, поиск

Версия статьи от 18-04-2024.

Поддерживаемые версии «»:
Начиная с


Содержание

 [убрать

Введение

API InterlookIntegrationService работает по SOAP протоколу. Для вызова методов API можно использовать SoapUi.
Документацию на английском языке можно загрузить тут Файл:Master-InterlookIntegrationService.docx либо с яндекс диска

Подключение к базе данных ПК «Мастер-Interlook»

В файле web.config, расположенном в папке Interlook.IntegrationService пропишите необходимые параметры подключения (красным цветом выделены значения, которые необходимо ввести). Строка подключения к базе данных ПК «Мастер-Interlook»:
<add key = "connectionString" value = "Data Source=ip-адрес сервера базе данных ПК «Мастер-Interlook»;Initial Catalog=название базы данных ПК «Мастер-Interlook»;User ID=логин пользователя ПК «Мастер-Interlook»;Password=пароль пользователя ПК «Мастер-Interlook»"/>

Настройки в файле WEB.CONFIG

Настройки задаются в секции <appSettings> файла web.config основного приложения Interlook.IntegrationService.

Описание Значение Настройка
1 Процедура перезапуска кэша cachingTime

"cachingTime" value="-1" - инициализация кэша максимально производительная: каждый отель загружается в своем потоке, данные в кэше хранятся постоянно (возможны сбои).
"cachingTime" value="-2"/> - весь кэш загружается в 2 (5,10) потока, в зависимости от значения настройки. Данные в кэше хранятся постоянно. "cachingTime" value="10"/> - кэш не загружается при старте приложения, данные в нем хранятся 10 (300,600) секунд, в зависимости от значения настройки.

<add key="cachingTime" value="-1"/>
2 Уровень использования процессора parallelismDegree

Уровень использования процессора при расчетах
Максимум - 100, минимум - 0

<add key="parallelismDegree" value="70"/>
3 Включение логирования о использовании памяти сервера LogCacheMemory

Настройка служит для включения или отключения логирования в таблицу базы данных о использовании кешем сервиса памяти сервера.
0 - выключена, 1 - включена

<add key="LogCacheMemory" value="0"/>
4 Настройка вывода Adhot типа With Cost Настройка, позволяющая выводить доплаты Adhot типа With Cost в методах SearchHotelServices и SearchHotelServicesMinHotel.

По умолчанию настройка установлена в значении false.

  • true – в ответе методов выдается значение размера доплаты Adhot типа With Cost в параметре "AddHotsWithCosts".
  • false или отсутствие настройки или любое значение отличное от true – в ответе методов выдается значение "-1" в параметре "AddHotsWithCosts".
<add key="IsAddHotsWithCosts" value="false"/>


В файле web.config для оптимальной работы сервиса нужно убедиться, что в секции <system.web> значение настройки compilation debug установлено в положении false


<compilation debug="false" targetFramework="4.0">
Предупреждение


Начиная с релизов после 01.01.2024 изменен формат файла конфигурации web.config и появилась возможность работы с новым сервисом логирования.
Описание Значение Настройка
1 Подключение к базе данных Строка подключения к базе данных
<add key="connectionString" value="Data Source=server;Initial Catalog=Base;User Id=User;Password=Password;Application Name=Interlook.IntegrationService" />
2 Процедура перезапуска кэша cachingTime

"cachingTime" value="-1" - инициализация кэша максимально производительная: каждый отель загружается в своем потоке, данные в кэше хранятся постоянно (возможны сбои).
"cachingTime" value="-2"/> - весь кэш загружается в 2 (5,10) потока, в зависимости от значения настройки. Данные в кэше хранятся постоянно. "cachingTime" value="10"/> - кэш не загружается при старте приложения, данные в нем хранятся 10 (300,600) секунд, в зависимости от значения настройки.

<add key="cachingTime" value="-1"/>
3 Уровень использования процессора parallelismDegree

Уровень использования процессора при расчетах
Максимум - 100, минимум - 0

<add key="parallelismDegree" value="70"/>
4 Включение логирования о использовании памяти сервера LogCacheMemory

Настройка служит для включения или отключения логирования в таблицу базы данных о использовании кешем сервиса памяти сервера.
0 - отключены логи и диагностика кеша,
1 - включены логи и диагностика кеша,
2 - тоже что и 1, только пишутся еще дополнительные более детальные логи)

<add key="LogCacheMemory" value="2"/>
5 Настройка для включения логирования с использование сервиса логирования Настройка, позволяющая включать и выключать запись логов в сервис логирования

По умолчанию настройка установлена в значении false.
true - включено, false - выключено

<add key="EnableLogServiceLogging" value="true" />
6 Настройка для установления уровня логирования при использовании сервиса логирования Настройка, позволяющая регулировать уровень записи логов.

Может ринимать значенимя Trace,Debug,Info,Warn,Error,Fatal,Off

<add key="LogServiceMinimumlLogLevel" value="Debug" />
7 Настройка количества попыток подключения к сервису логирования Настройка, позволяющая регулировать количество попыток подключения к сервису логирования

Значение регулирует количество попыток подключения.

<add key="LogServiceConnectionAttempts" value="10"/>
8 Адрес сервиса логирования Адрес сервиса логирования
<add key="LogService" value="http://localhost:6060" />
9 Название базы данных для сервиса логирования Настройка, позволяющая указать в какую базу данных MongoDB записывать логи
<add key="LogServiceDatabaseTarget" value="IntegrationService1"/>

Настройка в IIS

В диспетчере служб IIS в разделе Пулы приложений (Application Pool) открыть Дополнительные параметры (Advanced Settings) приложения .Net v4.5. В параметре Режим запуска (Start Mode) установить значение AlwaysRunning.
Пул приложений 1

Рекомендуется настроить перезапуск пула приложения раз в сутки, в ночное время. Для настройки перезапуска открыть Дополнительные параметры (Advanced Settings) пула приложения и в поле Моменты точного времени для перезапуска (Specific Time), меню TimeSpanArray установить время перезапуска. Значение поля Постоянный временной интервал (в минутах) (Regular Time Interval) установить в значение 0.
Пул приложений 3

В IIS на уровне сайта открыть Дополнительные параметры (Advanced Settings). В параметре Предварительная установка разрешена (Preload Enabled) установить значение true.

Пул приложений 2

Расшифровка ошибок сервера

В случае отправки в запросе к сервису данных некорректного формата в ответе любого метода сервер вернет ошибку с указанием в какой строке в XML ошибка.
"В документе XML (12, 49) присутствует ошибка." - в данном случае ошибка в 12 строке, всего 49 символов в строке с ошибкой.
В интерфейсе SoapUi при установке курсора в любое место в запросе в правом углу окна показывается номер строки и номер символа в строке.

SOAP UI

  • Ошибка в дате. Формат: DateTime

Запрос: <meg:DateFrom>2021-10-010</meg:DateFrom> Ответ: Серверу не удалось прочитать запрос. ---> System.InvalidOperationException: В документе XML (11, 47) присутствует ошибка. ---> System.FormatException: Строка "2021-10-010" не является допустимым значением AllXsd

  • Ошибка в данных. Формат: Integer

Запрос: <meg:PageSize>100000ф</meg:PageSize> Ответ: Серверу не удалось прочитать запрос. ---> System.InvalidOperationException: В документе XML (9, 37) присутствует ошибка. ---> System.FormatException: Входная строка имела неверный формат

Методы IntegrationService

Методы аутентификации

Connect (Получение аутентификационного токена)

Метод производит получение аутентификационного токена, необходимого для выполнения метода CreateReservation.
Принимаемые параметры запроса ( * – обязательный):

  • Login * – логин online пользователя
  • Password * – пароль online пользователя

Возвращаемый результат:

  • ConnectResult – идентификатор аутентификации (если аутентификация прошла успешно, то получаем идентификатор, в противном случае ошибку "Connection result code: -1. Invalid login or password")
развернутьПример


CheckConnect (Проверка активности подключения под конкретным идентификатором)

Метод проверяет наличие активного подключения под конкретным идентификатором аутентификации.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)

Возвращаемый результат:

  • CheckConnectResult – идентификатор аутентификации (true – если подключение активно, false – если подключения нет)
развернутьПример


Методы работы с путевками

CreateReservation (Бронирование путевки)

Метод производит бронирование путевки.

После получения идентификатора аутентификации при запросе к методу Connect должно пройти некоторое время для загрузки кэша. В случае формирования запроса на бронирования если кэш еще не загружен, пользователь получает сообщение "System.Exception: The Cache is loading. Try again after some time". В таком случае нужно подождать несколько секунд и повторить запрос.
Внимание! Бронирование обязательных Extra Service типа WithCost, Hardlink происходит автоматически. Вне зависимости от того передаются они в запросе или нет.
Перебронирование путевки происходит в случае, если в запросе отправлены параметры ExternalID, ID уже имеющиеся в базе данных Interlook.

Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Reserv * – класс – объект путевки
    • HasInvoices * – выставлен ли счет по путевке
      • true – счет выставлен
      • false – счет не выставлен
    • Rate * – валюта путевки
      • ID – идентификатор валюты (если не отправляем или отправляем 0 или отправляем значение, отсутствующее в базе данных, то подставляется валюта, имеющая ID=1 из таблицы Rates Базы Данных)
    • TouristServices * – массив услуг, используемых туристами
      • TouristService * – отдельная услуга, используемая туристом
        • TouristRoomNumber – номер комнаты. Если проживание, например Double, то для каждого туриста указываем одинаковый номер комнаты. Для остальных услуг - поле оставляем пустым.
        • TouristID * – идентификатор туриста
        • ServiceID * – идентификатор услуги
      • Services – массив услуг по путевке (определенного типа, в зависимости от типа услуги, например: ExcursionService, ExtraService, HotelService, TransferService)
        • HotelService * – параметры для услуги типа HotelService
          • ExternalID – отправляется при изменении сервиса (приходит в ответе метода CreateReservation в параметре ID). При создании бронирования отправляем 0 или не отправляем параметр.
          • NMen – количество взрослых туристов (если не отправляем данный параметр, то расчет ведется по NMen = 1)
          • AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
            • ParameterPair Key – ключ
              • Value – значение
          • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00).Если не отправляется, то считается текущей
          • Duration * – продолжительность услуги
          • ID * – идентификатор услуги, используемый для привязки сервиса к туристам
          • Hotel * – массив данных отель
            • AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
              • ParameterPair Key – ключ
                • Value – значение
            • ID * – идентификатор отеля
          • Room * – массив данных комната
            • RoomTypeID * – идентификатор типа комнаты
            • RoomCategoryID * – идентификатор категории комнат
            • RoomAccomodationID * – идентификатор типа размещения
          • PansionID * – идентификатор типа питания
        • TransferService – параметры для услуги типа TransferService
          • ExternalID – отправляется при изменении сервиса (приходит в ответе метода CreateReservation в параметре ID). При создании бронирования отправляем 0 или не отправляем параметр.
          • NMen – количество взрослых туристов (если не отправляем данный параметр, то расчет ведется по NMen = 1)
          • AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
            • ParameterPair Key – ключ
              • Value – значение
          • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00).Если не отправляется, то считается текущей
          • Duration – продолжительность услуги. Если не передаем данный параметр, то по умолчанию считается Duration=1
          • ID * – идентификатор услуги, используемый для привязки сервиса к туристам
          • Transfer * – массив данных трансфер
            • ID * – ключ трансфера из таблицы TransferDirecions (возвращается при запросе к методу GetTransfers)
          • Transport * – массив данных транспорта
            • ID * – ключ транспорта из таблицы Transport
        • ExtraService – параметры для услуги типа ExtraService. Если на даты проживания имеется доп. услуга AddHots WithCosts, то она автоматически добавляется в ответе, передавать ее не нужно.
          • ExternalID – отправляется при изменении сервиса (приходит в ответе метода CreateReservation в параметре ID). При создании бронирования отправляем 0 или не отправляем параметр.
          • NMen – количество взрослых туристов (если не отправляем данный параметр, то расчет ведется по NMen = 1)
          • AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
            • ParameterPair Key – ключ
              • Value – значение
          • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00).Если не отправляется, то считается текущей
          • Duration – продолжительность услуги. Если не передаем данный параметр, то по умолчанию считается Duration=1
          • ID * – идентификатор услуги, используемый для привязки сервиса к туристам
          • Code * – код сервиса (возвращается при запросе к методу GetExtraService)
        • ExcursionService - параметры для услуги типа Экскурсия
          • ExternalID – отправляется при изменении сервиса (приходит в ответе метода CreateReservation в параметре ID). При создании бронирования отправляем 0 или не отправляем параметр.
          • NMen – количество взрослых туристов (если не отправляем данный параметр, то расчет ведется по NMen = 1)
          • AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
            • ParameterPair Key – ключ
              • Value – значение
          • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00).Если не отправляется, то считается текущей
          • Duration – продолжительность услуги. Если не передаем данный параметр, то по умолчанию считается Duration=1
          • ID * – идентификатор услуги, используемый для привязки сервиса к туристам
          • ExcursionID * – идентификатор экскурсии (возвращается при запросе к методу GetExcursions)
          • CountryID – идентификатор страны, если не передаем, то в ответе получим -1.
          • CityID – идентификатор города
    • Tourists * – массив туристов по услуге
      • Tourist * – турист
        • Sex – пол (ключ = значения: Male = 0, Female = 1, Child = 2, Infant = 3)
        • BirthDate * – дата рождения туриста (в формате ГГГГ-ММ-ДДT00:00:00)
        • FirstNameLat * – имя туриста латиницей
        • SurNameLat * – отчество туриста латиницей
        • AgeType – тип возраста (Adult = 0, Child = 1, Infant = 2)
        • IsMain – устанавливает признак главного туриста по путевке (Null, 0 – нет, 1 – турист главный)
        • ID * – идентификатор туриста для привязки туриста к сервису
        • Phone – телефон туриста (в международном формате, например +70000000000, 70000000000)
        • Email – адрес электронной почты туриста
        • ForeignPassport – иностранный паспорт
        • Serie – серия
        • Number – номер
        • EndDate – дата окончания действия
    • ExternalID – ключ путевки из базы данных Interlook (При создании новой путевки можно отправить 0 или не отправлять параметр)
    • TourOperatorID – ключ путевки во внешней системе (ключ туроператора)
    • TourOperatorCode – номер из "customer reservation number"
    • ID – ключ путевки

Возвращаемый результат:

  • HasInvoices – выставлен ли счет по путевке
    • true – счет выставлен
    • false – счет не выставлен
  • AgentDiscount – скидка агента
  • Rate – валюта путевки
    • Name – название валюты
    • ID – идентификатор валюты
    • Description – описание валюты
    • NameLat – наименование валюты латиницей
    • Code – код валюты
    • CodeLat – код валюты латиницей
    • Unicode – код ISO для валюты
    • IsMain – является ли валюта главной (true – является, false – не является)
    • IsNational – является ли валюта национальной (true – является, false – не является)
  • TouristServices – массив услуг, используемых туристами
    • TouristService – отдельная услуга, используемая туристом
      • ID – идентификатор услуги, используемой туристом
      • TouristRoomNumber – номер комнаты
      • TouristID – идентификатор туриста (-1 для новой путевки)
      • ServiceID – идентификатор услуги (-1 для новой путевки)
  • Services – массив услуг по путевке (определенного типа, в зависимости от типа услуги, например: ExcursionService, ExtraService, HotelService, TransferService)
    • HotelService – параметры для услуги типа HotelService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
          • Value – значение
            • PenaltyCost - объект со значением штрафа и условиями, по которым штраф был рассчитан. Отображение параметров регулируется лицензией.
              • PolicyKey - ключ условия по штрафу в БД (-1 - "псевдоусловие", до начала всех условий, или после окончания всех, или вообще никаких условий нет)
              • DateFrom - дата начала действия условия в формате ГГГГ-ММ-ДДT00:00:00 (может быть null, обычно для "псевдоусловия": "без штрафа до...")
              • DateTo - дата окончания (может быть null, для "псевдоусловия" : "100% после ...")
              • PenaltyValue - размер штрафа
              • IsPercent - процент, указывающий, что штраф в "%" (true) или в "ночах" (false)
              • TotalPenalty - полная сумма штрафа
              • Description - описание
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • Hotel – массив данных отель
        • Name – наименование отеля
        • ID – идентификатор отеля
        • Description – описание отеля
        • NameLat – наименование отеля латиницей
        • Code – код отеля
        • CodeLat – код отеля латиницей
        • Unicode – код ISO отеля
        • City – массив данных город
          • Name – наименование города
          • ID – идентификатор города
          • Description – описание города
          • NameLat – наименование города латиницей
          • Code – код города
          • CodeLat – код города латиницей
          • Unicode – код ISO города
          • Country – массив данных страна
            • Name – наименование страны
            • ID – идентификатор страны
            • Description – описание страны
            • NameLat – наименование страны латиницей
            • Code – код страны
            • CodeLat – код страны латиницей
            • Unicode – код ISO страны
            • IsIncoming – параметр для внутреннего использования
          • CountryID – идентификатор страны в массиве данных город
          • RegionID – идентификатор региона в массиве данных город
        • RegionID – идентификатор региона
        • PriceType – наличие цен (PerPerson = 0, PerRoom = 1, All = 2, None= 1000)
        • CountCosts – количество цен
        • CityID – идентификатор города
        • HotelCategoryID – идентификатор категории отеля
      • Room – массив данных комната
        • RoomType – массив данных тип комнаты
          • Name – наименование типа комнаты
          • ID – идентификатор типа комнаты
          • Description – описание типа комнаты
          • NameLat – наименование типа комнаты латиницей
          • Code – код типа комнаты
          • CodeLat – код типа комнаты латиницей
          • Unicode – код ISO типа комнаты
          • Places – количество мест в номере
          • ExPlaces – дополнительные места в номере
          • PrintOrder – порядковый номер для печати в отчетах
        • RoomTypeID – идентификатор типа комнаты
        • RoomCategory – массив данных категории номера
          • Name – наименование категории номера
          • ID – идентификатор категории номера
          • Description – описание категории номера
          • NameLat – наименование категории номера латиницей
          • Code – код категории номера
          • CodeLat – код категории номера латиницей
          • Unicode – код ISO категории номера
          • MainPlaces – количество основных мест
          • ExtraPlaces – количество дополнительных мест
          • IsMain – параметр для внутреннего использования
        • RoomCategoryID – идентификатор категории комнат
        • RoomAccomodation – массив данных размещения
          • Name – наименование размещения
          • ID – идентификатор размещения
          • Description – описание размещения
          • NameLat – наименование размещения латиницей
          • Code – код размещения
          • CodeLat – код размещения латиницей
          • Unicode – код ISO размещения
          • PerRoom – за комнату/за человека
          • AdultMainPlaces – количество основных мест для взрослых
          • ChildMainPlaces – количество основных мест для детей
          • AdultExtraPlaces – количество дополнительных мест для взрослых
          • ChildExtraPlaces – количество дополнительных мест для детей
          • MainPlaces – общее количество основных мест
          • ExtraPlaces – общее количество дополнительных мест
          • IsMain – параметр для внутреннего использования
          • AgeFrom – возраст первого ребенка от
          • AgeTo – возраст первого ребенка по
          • Age2From – возраст второго ребенка от
          • Age2To – возраст второго ребенка по
        • RoomAccomodationID – идентификатор типа размещения
        • ID – идентификатор комнаты
        • Name – наименование типа размещения
      • RoomID – идентификатор комнаты
      • PansionID – идентификатор типа питания
    • TransferService – параметры для услуги типа TransferService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
          • Value – значение
              • Description - описание
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • Transfer – массив данных трансфера
        • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
          • ParameterPair Key – ключ
            • Value – значение
        • Name – наименование трансфера
        • ID – ключ трансфера из таблицы TransferDirecion
        • Description – описание трансфера
        • NameLat – наименование трансфера латиницей
        • Code – код трансфера
        • CodeLat – код трансфера латиницей
        • Unicode – код ISO трансфера
        • PlaceFrom – название точки откуда
        • PlaceTo – название точки куда
        • CityID – идентификатор города
        • RegionID – идентификатор региона
      • Transport – массив данных транспорта
        • Name – наименование транспорта
        • ID – идентификатор транспорта
        • Description – описание транспорта
        • NameLat – наименование транспорта латиницей
        • Code – код транспорта
        • CodeLat – код транспорта латиницей
        • Unicode – код ISO транспорта
      • PointToID – идентификатор точки куда
      • CityKey – ключ города
      • PointToName – название точки куда
      • PointFromID – идентификатор точки откуда
      • PointFromName – название точки откуда
    • ExcursionService – параметры для услуги типа ExcursionService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
        • Value – значение
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • CityKey – ключ города
      • ExcursionID – идентификатор экскурсии
    • ExtraService – параметры для услуги типа ExtraService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
          • Value – значение
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • CityKey – ключ города предоставления услуги
      • IsPackage – признак пакетной услуги
      • Code – идентификатор услуги
      • HasDuration – услуга с продолжительностью или без
  • ID – ключ путевки во внешней системе (ключ туроператора)
  • Name – наименование путевки
  • Brutto – брутто цена путевки
  • CountryID – идентификатор страны путевки
  • CityID – идентификатор города путевки
  • PartnerID – идентификатор покупателя путевки
  • AgentDiscount – скидка агента
  • Status – статус путевки (Confirmed = 0, NotConfirmed = 1, WaitingConfirmation = 2, Canceled = 3, WaitingCancelation = 4)
  • StartDate – дата начала тура (в формате ГГГГ-ММ-ДДT00:00:00)
  • EndDate – дата окончания тура (в формате ГГГГ-ММ-ДДT00:00:00)
  • Duration – продолжительность
  • CreationDate – дата создания путевки (в формате ГГГГ-ММ-ДДT00:00:00)
  • CreatorID – идентификатор создателя путевки
  • Tourists – массив туристов по услуге
    • Tourist – турист
      • Sex – пол (ключ = значения: Male = 0, Female = 1, Child = 2, Infant = 3)
      • BirthDate – дата рождения туриста (в формате ГГГГ-ММ-ДДT00:00:00)
      • FirstNameLat – имя туриста латиницей
      • LastNameLat – фамилия туриста латиницей
      • AgeType – тип возраста (Adult = 0, Child = 1, Infant = 2)
      • IsMain – устанавливает признак главного туриста по путевке (Null, 0 – нет, 1 – турист главный)
      • ExternalID – параметр для внутреннего использования
      • ID – идентификатор туриста (-1 для новой путевки )
      • Phone – телефон туриста (задается по шаблону)
      • Email – адрес электронной почты туриста
      • ForeignPassport – иностранный паспорт
        • Serie – серия
        • Number – номер
        • EndDate – дата окончания действия
      • ExternalID – не используется
  • OwnerID – идентификатор создателя путевки
  • ExternalID – ключ путевки в базе данных Interlook
  • TourOperatorID – ключ путевки во внешней системе (ключ туроператора)
  • TourOperatorCode – номер из "customer reservation number"
  • AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
    • ParameterPair Key – ключ
    • Value – значение

В случае ошибок в запросе в ответе получаем сообщение с расшифровкой ошибок.
В случае ошибки в GUID получим сообщение "Invalid user or password (Invalid GUID)."
В случае, когда сигнатура услуги не соответствует объявленному в запросе типу получим сообщение "Service labeled as '<Тип услуги в запросе>' is not a <Наименование типа услуги>".
В случае если отсутствуют туристы в запросе получим сообщение "There is no any tourist. At least one 'Tourist' must be specified."
В случае если не указано обязательное поле получим сообщение "Parameter '<Наименование параметра>' is required."
В случае если не существует записи с указанным ID в базе данных получим сообщение "There is no <Наименование сущности> with '<Наименование параметра идентификатора>' = <Значение параметра в запросе> in the database."

развернутьПример


GetReservation (Получение путевки по ключу)

Метод производит получение информации по путевке по ключу путевки.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DgKey * – ключ путевки

Возвращаемый результат:

  • HasInvoices – выставлен ли счет по путевке
    • true – счет выставлен
    • false – счет не выставлен
  • AgentDiscount – скидка агента
  • Rate – валюта путевки
    • Name – название валюты
    • ID – идентификатор валюты
    • Description – описание валюты
    • NameLat – наименование валюты латиницей
    • Code – код валюты
    • CodeLat – код валюты латиницей
    • Unicode – код ISO для валюты
    • IsMain – является ли валюта главной (true – является, false – не является)
    • IsNational – является ли валюта национальной (true – является, false – не является)
  • TouristServices – массив услуг, используемых туристами
    • TouristService – отдельная услуга, используемая туристом
      • ID – идентификатор услуги, используемой туристом
      • TouristRoomNumber – номер комнаты
      • TouristID – идентификатор туриста (-1 для новой путевки)
      • ServiceID – идентификатор услуги (-1 для новой путевки)
  • Services – массив услуг по путевке (определенного типа, в зависимости от типа услуги, например: ExcursionService, ExtraService, HotelService, TransferService)
    • HotelService – параметры для услуги типа HotelService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
          • Value – значение
            • PenaltyCost - объект со значением штрафа и условиями, по которым штраф был рассчитан. Отображение параметров регулируется лицензией.
              • PolicyKey - ключ условия по штрафу в БД (-1 - "псевдоусловие", до начала всех условий, или после окончания всех, или вообще никаких условий нет)
              • DateFrom - дата начала действия условия в формате ГГГГ-ММ-ДДT00:00:00 (может быть null, обычно для "псевдоусловия": "без штрафа до...")
              • DateTo - дата окончания (может быть null, для "псевдоусловия" : "100% после ...")
              • PenaltyValue - размер штрафа
              • IsPercent - процент, указывающий, что штраф в "%" (true) или в "ночах" (false)
              • TotalPenalty - полная сумма штрафа
              • Description - описание
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • Hotel – массив данных отель
        • Name – наименование отеля
        • ID – идентификатор отеля
        • Description – описание отеля
        • NameLat – наименование отеля латиницей
        • Code – код отеля
        • CodeLat – код отеля латиницей
        • Unicode – код ISO отеля
        • City – массив данных город
          • Name – наименование города
          • ID – идентификатор города
          • Description – описание города
          • NameLat – наименование города латиницей
          • Code – код города
          • CodeLat – код города латиницей
          • Unicode – код ISO города
          • Country – массив данных страна
            • Name – наименование страны
            • ID – идентификатор страны
            • Description – описание страны
            • NameLat – наименование страны латиницей
            • Code – код страны
            • CodeLat – код страны латиницей
            • Unicode – код ISO страны
            • IsIncoming – параметр для внутреннего использования
          • CountryID – идентификатор страны в массиве данных город
          • RegionID – идентификатор региона в массиве данных город
        • RegionID – идентификатор региона
        • PriceType – наличие цен (PerPerson = 0, PerRoom = 1, All = 2, None= 1000)
        • CountCosts – количество цен
        • CityID – идентификатор города
        • HotelCategoryID – идентификатор категории отеля
      • Room – массив данных комната
        • RoomType – массив данных тип комнаты
          • Name – наименование типа комнаты
          • ID – идентификатор типа комнаты
          • Description – описание типа комнаты
          • NameLat – наименование типа комнаты латиницей
          • Code – код типа комнаты
          • CodeLat – код типа комнаты латиницей
          • Unicode – код ISO типа комнаты
          • Places – количество мест в номере
          • ExPlaces – дополнительные места в номере
          • PrintOrder – порядковый номер для печати в отчетах
        • RoomTypeID – идентификатор типа комнаты
        • RoomCategory – массив данных категории номера
          • Name – наименование категории номера
          • ID – идентификатор категории номера
          • Description – описание категории номера
          • NameLat – наименование категории номера латиницей
          • Code – код категории номера
          • CodeLat – код категории номера латиницей
          • Unicode – код ISO категории номера
          • MainPlaces – количество основных мест
          • ExtraPlaces – количество дополнительных мест
          • IsMain – параметр для внутреннего использования
        • RoomCategoryID – идентификатор категории комнат
        • RoomAccomodation – массив данных размещения
          • Name – наименование размещения
          • ID – идентификатор размещения
          • Description – описание размещения
          • NameLat – наименование размещения латиницей
          • Code – код размещения
          • CodeLat – код размещения латиницей
          • Unicode – код ISO размещения
          • PerRoom – за комнату/за человека
          • AdultMainPlaces – количество основных мест для взрослых
          • ChildMainPlaces – количество основных мест для детей
          • AdultExtraPlaces – количество дополнительных мест для взрослых
          • ChildExtraPlaces – количество дополнительных мест для детей
          • MainPlaces – общее количество основных мест
          • ExtraPlaces – общее количество дополнительных мест
          • IsMain – параметр для внутреннего использования
          • AgeFrom – возраст первого ребенка от
          • AgeTo – возраст первого ребенка по
          • Age2From – возраст второго ребенка от
          • Age2To – возраст второго ребенка по
        • RoomAccomodationID – идентификатор типа размещения
        • ID – идентификатор комнаты
        • Name – наименование типа размещения
      • RoomID – идентификатор комнаты
      • PansionID – идентификатор типа питания
    • TransferService – параметры для услуги типа TransferService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
          • Value – значение
              • Description - описание
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • Transfer – массив данных трансфера
        • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
          • ParameterPair Key – ключ
            • Value – значение
        • Name – наименование трансфера
        • ID – ключ трансфера из таблицы TransferDirecion
        • Description – описание трансфера
        • NameLat – наименование трансфера латиницей
        • Code – код трансфера
        • CodeLat – код трансфера латиницей
        • Unicode – код ISO трансфера
        • PlaceFrom – название точки откуда
        • PlaceTo – название точки куда
        • CityID – идентификатор города
        • RegionID – идентификатор региона
      • Transport – массив данных транспорта
        • Name – наименование транспорта
        • ID – идентификатор транспорта
        • Description – описание транспорта
        • NameLat – наименование транспорта латиницей
        • Code – код транспорта
        • CodeLat – код транспорта латиницей
        • Unicode – код ISO транспорта
      • PointToID – идентификатор точки куда
      • CityKey – ключ города
      • PointToName – название точки куда
      • PointFromID – идентификатор точки откуда
      • PointFromName – название точки откуда
    • ExcursionService – параметры для услуги типа ExcursionService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
        • Value – значение
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • CityKey – ключ города
      • ExcursionID – идентификатор экскурсии
    • ExtraService – параметры для услуги типа ExtraService
      • ExternalID – не используется
      • Price – цена брутто
      • NMen – количество взрослых туристов
      • Partner – массив данных партнера
        • Name – наименование партнера
        • ID – идентификатор партнера
        • Description – описание партнера
        • NameLat – наименование партнера латиницей
        • Code – код партнера
        • CodeLat – код партнера латиницей
        • Unicode – код ISO партнера
        • PartnersGroupID – идентификатор группы партнера
        • FullName – полное наименование партнера
        • Fax – факс партнера
        • Address – адрес партнера
        • Zip – почтовый код партнера
        • Email – email партнера
        • Phones – телефон партнера
      • PartnerID – идентификатор поставщика услуги (можно передать 0 – тогда он подберется автоматически расчетчиком)
      • Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
      • PacketKey – идентификатор пакета услуги
      • AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ – значение)
        • ParameterPair Key – ключ
          • Value – значение
      • DetailBrutto – подробности брутто
      • Notes – примечания к услуге
      • Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
      • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
      • StartDay – не используется
      • Duration – продолжительность услуги
      • RateBrutto – валюта брутто
      • Brutto – цена брутто
      • ServiceClassID – идентификатор класса услуги
      • TouristCount – количество туристов, пользующихся услугой
      • ID – идентификатор услуги (-1 для новой путевки )
      • Status – статус услуги
        • Name – наименование статуса услуги
        • ID – идентификатор статуса услуги
        • Description – описание статуса услуги
        • NameLat – наименование статуса услуги латиницей
        • Code – код статуса услуги
        • CodeLat – код статуса услуги латиницей
        • Unicode – код ISO статуса услуги
      • CityKey – ключ города предоставления услуги
      • IsPackage – признак пакетной услуги
      • Code – идентификатор услуги
      • HasDuration – услуга с продолжительностью или без
  • ID – ключ путевки во внешней системе (ключ туроператора)
  • Name – наименование путевки
  • Brutto – брутто цена путевки
  • CountryID – идентификатор страны путевки
  • CityID – идентификатор города путевки
  • PartnerID – идентификатор покупателя путевки
  • AgentDiscount – скидка агента
  • Status – статус путевки (Confirmed = 0, NotConfirmed = 1, WaitingConfirmation = 2, Canceled = 3, WaitingCancelation = 4)
  • StartDate – дата начала тура (в формате ГГГГ-ММ-ДДT00:00:00)
  • EndDate – дата окончания тура (в формате ГГГГ-ММ-ДДT00:00:00)
  • Duration – продолжительность
  • CreationDate – дата создания путевки (в формате ГГГГ-ММ-ДДT00:00:00)
  • CreatorID – идентификатор создателя путевки
  • Tourists – массив туристов по услуге
    • Tourist – турист
      • Name – имя
      • Sex – пол (ключ = значения: Male = 0, Female = 1, Child = 2, Infant = 3)
      • FirstName – имя туриста
      • LastName – фамилия туриста
      • SurName – отчество туриста
      • BirthDate – дата рождения туриста (в формате ГГГГ-ММ-ДДT00:00:00)
      • FirstNameLat – имя туриста латиницей
      • LastNameLat – фамилия туриста латиницей
      • SurNameLat – отчество туриста латиницей
      • AgeType – тип возраста (Adult = 0, Child = 1, Infant = 2)
      • Citizen –не используется
      • IsMain – устанавливает признак главного туриста по путевке (Null, 0 – нет, 1 – турист главный)
      • ExternalID – параметр для внутреннего использования
      • ID – идентификатор туриста (-1 для новой путевки )
      • Phone – телефон туриста (задается по шаблону)
      • Email – адрес электронной почты туриста
      • ForeignPassport – иностранный паспорт
        • IssuedBy – кем выдан
        • Serie – серия
        • Number – номер
        • IssueDate – дата выдачи
        • EndDate – дата окончания действия
      • ExternalID – не используется
  • OwnerID – идентификатор создателя путевки
  • ExternalID – ключ путевки в базе данных Interlook
  • TourOperatorID – ключ путевки во внешней системе (ключ туроператора)
  • TourOperatorCode – номер из "customer reservation number"
  • AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
    • ParameterPair Key – ключ
    • Value – значение


развернутьПример


GetArrivalsByDate (Получение списка туристов на дату начала тура)

Метод возвращает данные по списку прилетов в формате json. Метод возвращает данные по главному туристу из путевки. В случае если у главного туриста не задан номер телефона, вернутся данные следующего туриста по путевке, у которого задан номер телефона.
Если у главного туриста аннулирована услуга проживания в отеле, то вернутся данные следующего туриста у которого задан номер телефона.
За доступность метода для пользователя отвечает настройка ShowhotelReservationsByDate. По умолчанию настройка отключена.
Для включения настройки необходимо из клиентского приложения Master-Interlook перейти в Master-Interlook → Settings → Online users → User → Person connection → edit role.
Если у пользователя не включена настройка ShowhotelReservationsByDat - доступа к этому методу нет, в ответ будет возвращаться сообщение о недостаточности прав. Проверка проводится по идентификатору аутентификации Guid.

Настройка доступа
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • ArrivalDate * – дата заезда
  • CountryKey – ключ страны
  • RegionKey – ключ региона
  • CityKey – ключ города
  • HotelKey – ключ отеля

Возвращаемый результат:

  • GetArrivalsByDateResult – результат поиска
    • ReservationId – номер путевки в клиенте Interlook
    • Email – электронный адрес если есть
    • Name – имя фамилия туриста
    • Phone – номер телефона (выводится в формате только цифр, обрабатывается при формирование ответа)
    • CheckIn – дата заезда
    • CheckOut – дата выезда
    • HotelId – ключ отеля
    • HasTransferArrival – трансфер в отель (true – есть трансфер в отель, если трансфера в заявке нет выводится false)
    • FlightArrival – номер прямого рейса
    • FlightDeparture – номер обратного рейса
    • FlightArrivalTime – время вылета прямого перелета
    • FlightDepartureTime – время вылета обратного перелета
развернутьПример


GetDeparturesByDate (Получение списка туристов на дату окончания тура)

Метод возвращает данные по списку вылетов в формате json. Метод возвращает данные по главному туристу из путевки. В случае если у главного туриста не задан номер телефона, вернутся данные следующего туриста по путевке, у которого задан номер телефона.
Если у главного туриста аннулирована услуга проживания в отеле, то вернутся данные следующего туриста у которого задан номер телефона.
За доступность метода для пользователя отвечает настройка ShowhotelReservationsByDate. По умолчанию настройка отключена.
Для включения настройки необходимо из клиентского приложения Master-Interlook перейти в Master-Interlook → Settings → Online users → User → Person connection → edit role.
Если у пользователя не включена настройка ShowhotelReservationsByDat - доступа к этому методу нет, в ответ будет возвращаться сообщение о недостаточности прав. Проверка проводится по идентификатору аутентификации Guid.

Настройка доступа
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DepartureDate * – дата выезда
  • CountryKey – ключ страны
  • RegionKey – ключ региона
  • CityKey – ключ города
  • HotelKey – ключ отеля

Возвращаемый результат:

  • GetDeparturesByDateResult – результат поиска
    • ReservationId – номер путевки в ИЛ(выводим номер путевки который видим в интерук клиенте)
    • Email – электронный адрес если есть
    • Name – имя фамилия туриста
    • Phone – номер телефона (выводится в формате только цифры, не смотря на то как это в интерлке, обрабатывается при формирование ответа)
    • CheckIn – дата заезда
    • checkOut – дата выезда
    • HotelId – ключ отеля
    • HasTransferArrival – трансфер в отель (true – есть трансфер в отель, если трансфера в заявке нет выводится false)
    • HasTransferDeparture – трансфер из отеля (true – есть трансфер из отеля, если трансфера в заявке нет выводится false)
    • FlightArrival – номер прямого рейса
    • FlightDeparture – номер обратного рейса
    • FlightArrivalTime – время вылета прямого перелета
    • FlightDepartureTime – время вылета обратного перелета
развернутьПример


CancelReservation (Аннулирование путевки)

Метод производит аннуляцию путевки.
Выдача результатов метода регулируется лицензией.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DgKey * – ключ путевки (не номер путевки)
  • AnnulReasonID * – ключ причины аннуляции (1001 – Cancel of the touroperator, 1009 – sdf. Если такой ключ причины аннуляции отсутствует в базе данных, то получим сообщение There is no this annulating reason in database)
  • Note – комментарий к аннуляции

Возвращаемые значения.

  • CancelReservationResult – результат аннуляции.

В случае успешного аннулирования в ответе получаем полную характеристику удаленной путевки с датой отмены.
В случае ошибки получаем в ответ расшифровку ошибки.
В случае некорректности идентификатора аутентификации ошибка примет вид: "Invalid user or password (Invalid GUID)".
Если отсутствует один из обязательных параметров или значение некорректно " Check the parameter 'dgKey' = 0. There is no any reservation for you in the database".

развернутьПример


CancelReservationExtended (Аннулирование путевки с выводом информации о штрафах)

Метод производит аннуляцию путевки и выдает информацию о штрафе.
Выдача результатов метода регулируется лицензией.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DgKey * – ключ путевки
  • AnnulReasonID * – ключ причины аннуляции (1001 – Cancel of the touroperator, 1009 – sdf. Если такой ключ причины аннуляции отсутствует в базе данных, то получим сообщение There is no this annulating reason in database)
  • Note – комментарий к аннуляции

Возвращаемые значения.

  • Number – номер сервиса
  • ResultMessage – результат аннуляции с полным описанием. В случае успешного аннулирования в ответе получаем полную характеристику удаленной путевки с датой отмены. В случае ошибки получаем в ответ расшифровку ошибки.
    • PenaltyCost - объект со значением штрафа и условиями, по которым штраф был рассчитан
      • PolicyKey - ключ условия по штрафу в БД (-1 - "псевдоусловие", до начала всех условий, или после окончания всех, или вообще никаких условий нет)
      • DateFrom - дата начала действия условия в формате ГГГГ-ММ-ДДT00:00:00 (может быть null, обычно для "псевдоусловия": "без штрафа до...")
      • DateTo - дата окончания (может быть null, для "псевдоусловия" : "100% после ...")
      • PenaltyValue - размер штрафа
      • IsPercent - процент, указывающий, что штраф в "%" (true) или в "ночах" (false)
      • TotalPenalty - полная сумма штрафа
      • Description - описание


развернутьПример


GetReservationsFrom (Отбор данных по дате создания путевки)

Метод производит вывод данных по дате создания путевки.

Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DateFrom * – дата от
  • DateTo – дата до

Возвращаемый результат:

  • Key – ключ путевки
  • Code – номер путевки

В случае ошибок в запросе в ответе получаем сообщение с расшифровкой ошибок.
В случае ошибки в GUID получим сообщение "Invalid user or password (Invalid GUID)."
В случае если дата начала больше даты окончания получим сообщение "Parameter 'DateTo' can't be less than 'DateFrom'."
В случае отсутствия одного из обязательных параметров получим сообщение "Parameter '<значение параметра>' is required."

развернутьПример


CreateReservationMessage (Создание сообщения для путевки)

Метод создает сообщение для конкретной путевки.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DgKey * – ключ путевки
  • Message * – текст сообщения
  • SenderName * – имя отправителя сообщения

Возвращаемый результат: не возвращает результата

развернутьПример


GetReservationMessages (Получение сообщений по путевке)

Метод производит получение сообщений для конкретной путевки.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DgKey * – ключ путевки
  • MessageDirection * – директория расположения сообщений (по умолчанию 1)

Возвращаемый результат:

  • DogovorMessageItem – результат поиска
    • Id – идентификатор сообщения
    • IsOutgouing – исходящее (true - исходящее, false - входящее )
    • DogovorId – номер путевки
    • DateCreate – дата создания сообщения
    • SenderName – имя отправителя
    • IsRead – прочитано (true - прочитано, false - не прочитано )
    • TourOperKey – ключ туроператора
    • Processed – статус обработки
    • Text – текст сообщения

В случае ошибки приходит расшифровка ошибки.
При ошибке в Guid получим сообщение: "Invalid user or password (Invalid GUID)".
При ошибке в ключе путевки получим сообщение: "Check the parameter 'dgKey' = <значение в запросе>. There is no any reservation for you in the database".
В случае отсутствия в выбранной директории сообщений получим ответ: "Ok. There is no any message with 'messageDirection' = <значение в запросе>".

развернутьПример


Методы поиска

SearchHotelServices (Получение вариантов проживаний по параметрам запроса)

Метод производит получение возможных вариантов проживаний по параметрам запроса.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – объект с параметрами запроса
    • PageSize * – размер страницы возвращаемых данных, то есть на каком количестве рассчитанных цен останавливаться и выдавать результат поиска. Если задано PageSize = 5, то поиск пойдет по ценам и как только наберет 5 рассчитанных (но перебрать цен он может больше, не все цены подходят) цен, выдаст их в результат. Количество перебранных внутренних цен будет выдано в строке TotalCount.
    • RowIndexFrom * – с какой строчки выдавать результат. Для первой страницы указываем RowIndexFrom = 0 – перебор идет с самой первой цены. Чтобы получить вторую страницу или последующие страницы поиска в RowIndexFrom надо передавать внутренний номер цены на котором остановился поиск предыдущей страницы цен (этот номер будет в ответе в строке TotalCount)
    • DateFrom * – дата «С»
    • DateTo * – дата «По»
    • RegionKeys – идентификаторы регионов (если не заданы города и отели – поиск по всем регионам, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
    • CityKeys – идентификаторы городов (если не заданы отели – ищем поиск для всех отелей городов, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
    • HotelKeys – идентификаторы отелей (если заданы отели – поиск только для них, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
    • RoomDescriptions – идентификаторы описаний комнат. Если не предавать будет искать для всех
    • PansionKeys – идентификаторы питаний. Если не передавать будет искать для всех
    • Ages – возраст детей (если не указан, то размещения с детьми не ищутся, туристы считаются взрослыми)
    • Pax * – размещение
    • Tariffs – идентификаторы тарифов по которым рассчитывать результат. Если не передавать будет считать по тарифу Ordinary
    • CacheGuid – идентификатор поиска, который ускоряет переход по страницам. При первом поиске его передавать не нужно. Поиск вернет этот идентификатор в параметре ResponseGuid. Далее, используя пейджинг, передаем этот идентификатор дальше (но только в рамках одного поиска!)
    • ResultView – тип вывода результата (1 – cортировка по суточной цене с группировкой по отелям, 2 – сортировка по суточной цене)
    • QuotaTypes – фильтр по типу квоты(0 – запрос, 1 – квота, 2 – стоп). Получаем все возможные результаты. Если не указано, то значение=0
    • Mode – не указываем или указываем 0

Возвращаемый результат:

  • DataRequestResult – результат поиска
    • ResultTable – таблица с результатом
      • HotelServices – услуга отеля
        • HotelName – наименование отеля
        • HotelKey – ключ отеля
        • RtCode – тип номера
        • RtKey – ключ типа номера
        • RcName – категория номера
        • RcKey – ключ категории номера
        • RdName – тип+категория номера
        • RdKey – ключ тип+категория номера
        • AcName – тип размещения
        • AcKey – ключ типа размещения
        • PnCode – тип питания
        • PnKey – ключ типа питания
        • TotalCost – конечная стоимость проживания в отеле включая обязательные доплаты Cost + AdHotCost. Сортировка по минимальной цене производиться по параметру TotalCost от наименьшей цены к наибольшей
        • Cost – размер обязательной доплаты Cost
        • AddHotsCost – размер обязательной доплаты AdHot
        • AddHotsWithCosts – размер обязательной доплаты AdHot типа With costs (выдает -1 если настройка отображения Adhot типа With Costs в конфиге Integration Service Interlook. Описание настройки Master-Interlook:Обмен. Настройка Web-сервиса Master-Interlook#Настройка параметров конфига web.config Integration Service )
        • DetailBrutto – формула расчета цены
        • QuoteType – тип квоты. Может принимать 3 значения: 0 – на запрос,1 – в квоте, 2 – стоит стоп сейл.
        • CountryKey – ключ страны предоставления услуги
        • CityKey – ключ города предоставления услуги
        • CityName – наименование города предоставления услуги
        • HotelWebSite – адрес сайта отеля
        • TariffId – идентификатор тарифа
        • TariffName – наименование тарифа
        • TariffDescription – описание тарифа
        • AddHots – идентификатор Adhot
        • ContractPrKey – ключ партнера, предоставляющего услугу
        • HotelImage – фото отеля
        • Rate – валюта
        • AddHotsWithCostID – идентификатор AddHotsWithCost
    • ColunmNames – название столбцов таблицы
      • HotelName – наименование отеля
      • HotelKey – ключ отеля
      • RtCode – тип номера
      • RtKey – ключ типа номера
      • RcName – категория номера
      • RcKey – ключ категории номера
      • RdName – тип+категория номера
      • RdKey – ключ тип+категория номера
      • AcName – тип размещения
      • AcKey – ключ типа размещения
      • PnCode – тип питания
      • PnKey – ключ типа питания
      • TotalCost – конечная стоимость проживания в отеле включая обязательные доплаты Cost + AdHotCost. Сортировка по минимальной цене производиться по параметру TotalCost от наименьшей цены к наибольшей
      • Cost – размер обязательной доплаты Cost
      • AddHotsCost – размер обязательной доплаты AddHotsCost
      • DetailBrutto – формула расчета цены
      • QuoteType – тип квоты. Может принимать 3 значения: 0 – на запрос,1 – в квоте, 2 – стоит стоп сейл.
      • CountryKey – ключ страны предоставления услуги
      • CityKey – ключ города предоставления услуги
      • CityName – наименование города предоставления услуги
      • HotelWebSite – адрес сайта отеля
      • TariffId – идентификатор тарифа
      • TariffName – наименование тарифа
      • TariffDescription – описание тарифа
      • AddHots – идентификатор Adhot
      • ContractPrKey – ключ партнера, предоставляющего услугу
      • HotelImage – фото отеля
      • Rate – валюта
      • AddHotsWithCostID – идентификатор AddHotsWithCost
    • TotalCount – номер строки, на которой закончился поиск
    • PageSize – количество возвращаемых строк данных
    • PageIndex – номер строки, с которой начали поиск
    • IsLastPage – при отображении последней страницы результатов поиска с отелями параметр IsLastPage принимает значение true. Если не обрабатывать параметр IsLastPage, то следующее значение TotalCount вернет пустой результат по отелям
    • AdditionalData – список обязательных Addhots
      • ArrayOfAnyType – массив типов услуг
        • anyType – тип услуги
          • ExternalID – параметр для внутреннего использования
          • Price – стоимость
          • NMen – количество туристов по путевке
          • PartnerID – идентификатор партнера
          • Quota – квота по услуге
          • PacketKey – ключ пакета
          • AdditionalParams – массив дополнительных параметры (представляются в виде пары ключ – значение)
            • ParameterPair Key – ключ
              • Value – значение
          • Tourists – туристы
          • DetailNetto – подробности нетто
          • DetailBrutto – подробности брутто
          • Notes – примечания к услуге
          • Name – наименование услуги
          • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
          • StartDay – день предоставления услуги
          • Duration – продолжительность услуги
          • RateBrutto – валюта брутто
          • Brutto – цена брутто
          • RateNetto – валюта нетто
          • Netto – цена нетто
          • ServiceClassID – идентификатор класса услуги
          • TouristCount – количество туристов, пользующихся услугой
          • ID – идентификатор услуги (-1 для новой путевки )
          • Status – статус услуги
            • Name – наименование статуса услуги
            • ID – идентификатор статуса услуги
            • Description – описание статуса услуги
            • NameLat – наименование статуса услуги латиницей
            • Code – код статуса услуги
            • CodeLat – код статуса услуги латиницей
            • Unicode – код ISO статуса услуги
          • CityKey – ключ города предоставления услуги
          • IsPackage – признак пакетной услуги
          • Code – идентификатор услуги
          • HasDuration – услуга с продолжительностью или без
    • ResponseGuid – идентификатор ответа, который необходимо передать, если мы двигаемся по тому же поиску используя пейджинг

В случае ошибок в запросе в ответе получаем сообщение с расшифровкой ошибок.
В случае ошибки в GUID получим сообщение "Invalid user or password (Invalid GUID)."
В случае если дата начала больше даты окончания получим сообщение "Parameter 'DateTo' can't be less than 'DateFrom'."
В случае отсутствия одного из обязательных параметров получим сообщение "Parameter '<значение параметра>' is required."
В случае отсутствия ключа отеля, ключа города, ключа региона получим сообщение "At least one of the following parameters must be specified: 'RegionKeys', 'CityKeys' or 'HotelKeys'."

развернутьПример


SearchHotelServicesMinHotel (Получение одной минимальной рассчитанной цены для отеля)

Метод выводит одну минимальную (сортировка по суточной цене) рассчитанную цену для отеля.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – объект с параметрами запроса
    • PageSize * – размер страницы возвращаемых данных, то есть на каком количестве рассчитанных цен останавливаться и выдавать результат поиска. Если задано PageSize = 5, то поиск пойдет по ценам и как только наберет 5 рассчитанных (но перебрать цен он может больше, не все цены подходят) цен, выдаст их в результат. Количество перебранных внутренних цен будет выдано в строке TotalCount.
    • RowIndexFrom * – с какой строчки выдавать результат. Для первой страницы указываем RowIndexFrom = 0 – перебор идет с самой первой цены. Чтобы получить вторую страницу или последующие страницы поиска в RowIndexFrom надо передавать внутренний номер цены на котором остановился поиск предыдущей страницы цен (этот номер будет в ответе в строке TotalCount)
    • DateFrom * – дата «С»
    • DateTo * – дата «По»
    • RegionKeys – идентификаторы регионов (если не заданы города и отели – поиск по всем регионам, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
    • CityKeys – идентификаторы городов (если не заданы отели – ищем поиск для всех отелей городов, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
    • HotelKeys – идентификаторы отелей (если заданы отели – поиск только для них, должно быть заполнено RegionKeys или CityKeys или HotelKeys)
    • RoomDescriptions – идентификаторы описаний комнат. Если не предавать будет искать для всех (возвращается при запросе к методу GetRoomFescriptions)
    • PansionKeys – идентификаторы питаний. Если не передавать будет искать для всех (возвращается при запросе к методу GetPansions)
    • Ages – возраст детей
    • Pax * – размещение
    • Tariffs – идентификаторы тарифов по которым рассчитывать результат. Если не передавать будет считать по тарифу Ordinary (0 - Ordinary, 1 - SPO)
    • CacheGuid – идентификатор поиска, который ускоряет переход по страницам. При первом поиске его передавать не нужно. Поиск вернет этот идентификатор в параметре ResponseGuid. Далее, используя пейджинг, передаем этот идентификатор дальше (но только в рамках одного поиска!)
    • ResultView – тип вывода результата (1 – cортировка по суточной цене с группировкой по отелям, 2 – сортировка по суточной цене)
    • QuotaTypes – фильтр по типу квоты(0 – запрос, 1 – квота, 2 – стоп). Получаем все возможные результаты. Если не указано, то значение=0
    • Mode – не указываем или указываем 0

Возвращаемый результат:

  • DataRequestResult – результат поиска
    • ResultTable – таблица с результатом
      • HotelServices – услуга отеля
        • HotelName – наименование отеля
        • HotelKey – ключ отеля
        • RtCode – тип номера
        • RtKey – ключ типа номера
        • RcName – категория номера
        • RcKey – ключ категории номера
        • RdName – тип+категория номера
        • RdKey – ключ тип+категория номера
        • AcName – тип размещения
        • AcKey – ключ типа размещения
        • PnCode – тип питания
        • PnKey – ключ типа питания
        • TotalCost – конечная стоимость проживания в отеле включая обязательные доплаты Cost + AdHotCost. Сортировка по минимальной цене производиться по параметру TotalCost от наименьшей цены к наибольшей
        • Cost – размер обязательной доплаты Cost
        • AddHotsCost – размер обязательной доплаты AdHot
        • AddHotsWithCosts – размер обязательной доплаты AdHot типа With costs (выдает -1 если настройка отображения Adhot типа With Costs в конфиге Integration Service Interlook. Описание настройки Master-Interlook:Обмен. Настройка Web-сервиса Master-Interlook#Настройка параметров конфига web.config Integration Service )
        • DetailBrutto – формула расчета цены
        • QuoteType – тип квоты. Может принимать 3 значения: 0 – на запрос,1 – в квоте, 2 – стоит стоп сейл.
        • CountryKey – ключ страны предоставления услуги
        • CityKey – ключ города предоставления услуги
        • CityName – наименование города предоставления услуги
        • HotelWebSite – адрес веб-сайта отеля
        • TariffId – идентификатор тарифа
        • TariffName – наименование тарифа
        • TariffDescription – описание тарифа
        • AddHots – идентификатор Adhot
        • ContractPrKey – ключ партнера предоставляющего услугу
        • HotelImage – фото отеля
        • AddHotsWithCostID – идентификатор AddHotsWithCost
        • Rate – валюта
    • ColunmNames – название столбцов таблицы
      • HotelName – наименование отеля
      • HotelKey – ключ отеля
      • RtCode – тип номер
      • RtKey – ключ типа номера
      • RcName – категория номера
      • RcKey – ключ категории номера
      • RdName – тип+категория номера
      • RdKey – ключ тип+категория номера
      • AcName – тип размещения
      • AcKey – ключ типа размещения
      • PnCode – тип питания
      • PnKey – ключ типа питания
      • TotalCost – конечная стоимость проживания в отеле включая обязательные доплаты Cost + AdHotCost. Сортировка по минимальной цене производиться по параметру TotalCost от наименьшей цены к наибольшей
      • Cost – размер обязательной доплаты Cost
      • AddHotsCost – размер обязательной доплаты AddHotsCost
      • DetailBrutto – формула расчета цены
      • QuoteType – тип квоты. Может принимать 3 значения: 0 – на запрос,1 – в квоте, 2 – стоит стоп сейл.
      • CountryKey – ключ страны предоставления услуги
      • CityKey – ключ города предоставления услуги
      • CityName – наименование города предоставления услуги
      • HotelWebSite – адрес сайта отеля
      • TariffId – идентификатор тарифа
      • TariffName – наименование тарифа
      • TariffDescription – описание тарифа
      • AddHots – доплата
      • ContractPrKey – ключ партнера, предоставляющего услугу
      • HotelImage – фото отеля
      • AddHotsWithCostID – идентификатор AddHotsWithCost
      • Rate – валюта
    • TotalCount – номер строки, на которой закончился поиск
    • PageSize – количество возвращаемых строк данных
    • PageIndex – номер строки, с которой начали поиск
    • IsLastPage – при отображении последней страницы результатов поиска с отелями параметр IsLastPage принимает значение true. Если не обрабатывать параметр IsLastPage, то следующее значение TotalCount вернет пустой результат по отелям
    • AdditionalData – список обязательных Adhot
      • ArrayOfAnyType – массив типов услуг
        • anyType – тип услуги
          • ExternalID – параметр для внутреннего использования
          • Price – стоимость
          • NMen – количество туристов по путевке
          • PartnerID – идентификатор партнера
          • Quota – квота по услуге
          • PacketKey – ключ пакета
          • AdditionalParams – массив дополнительных параметры (представляются в виде пары ключ – значение)
            • ParameterPair Key – ключ
              • Value – значение
          • Tourists – туристы
          • DetailNetto – подробности нетто
          • DetailBrutto – подробности брутто
          • Notes – примечания к услуге
          • Name – наименование услуги
          • StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
          • StartDay – день предоставления услуги
          • Duration – продолжительность услуги
          • RateBrutto – валюта брутто
          • Brutto – цена брутто
          • RateNetto – валюта нетто
          • Netto – цена нетто
          • ServiceClassID – идентификатор класса услуги
          • TouristCount – количество туристов, пользующихся услугой
          • ID – идентификатор услуги (-1 для новой путевки )
          • Status – статус услуги
            • Name – наименование статуса услуги
            • ID – идентификатор статуса услуги
            • Description – описание статуса услуги
            • NameLat – наименование статуса услуги латиницей
            • Code – код статуса услуги
            • CodeLat – код статуса услуги латиницей
            • Unicode – код ISO статуса услуги
          • CityKey – ключ города предоставления услуги
          • IsPackage – признак пакетной услуги
          • Code – идентификатор услуги
          • HasDuration – услуга с продолжительностью или без
    • ResponseGuid – идентификатор ответа

В случае ошибок в запросе в ответе получаем сообщение с расшифровкой ошибок и/или номер строки с ошибкой.
В случае ошибки в GUID получим сообщение "Invalid user or password (Invalid GUID)."
В случае если дата начала больше даты окончания получим сообщение "Parameter 'DateTo' can't be less than 'DateFrom'."
В случае отсутствия одного из обязательных параметров получим сообщение "Parameter '<значение параметра>' is required."
В случае отсутствия ключа отеля, ключа города, ключа региона получим сообщение "At least one of the following parameters must be specified: 'RegionKeys', 'CityKeys' or 'HotelKeys'."

развернутьПример


SearchActualCostCalculationVariant (Поиск возможных вариантов типов комнат, категорий комнат, размещений и питаний на которые есть актуальные цены по отелю)

Метод выдает возможные варианты типов комнат, категорий комнат, размещений и питаний на которые есть актуальные цены по отелю.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – объект с параметрами запроса:
    • HotelId * – идентификатор отеля (обязательный параметр, значения 0 и -1 не допустимы)
    • DateFrom * – дата «с»
    • DateTo * – дата «по»
    • ValidateQuoata – проверять ли квоту (true – проверять, false – нет)
    • QuotaTypes – фильтр по типу квоты (0 – запрос, 1 – квота, 2 – стоп)
    • CheckAdHot – учитывать ли цены на обязательные адхоты (true – учитывать, false – нет)
    • Rate * – код валюты, в которой будет вестись расчет

Возвращаемый результат:

  • SearchActualCostCalculationVariantResult – результат поиска
    • CostCalculationVariant – массив данных
      • RoomAccommodationId – ключ размещения
      • RoomTypeId – ключ типа комнаты
      • RoomCategoryId – ключ категории комнаты
      • PansionId – ключ питания
      • RoomAccommodationName – код размещения
      • RoomTypeName – код типа комнаты
      • RoomCategoryName – код категории комнаты
      • PansionName – код питания
      • CountAdult – количество взрослых
      • CountChildren – количество детей
      • Quota – значение квоты
развернутьПример


Методы работы с ценами

GetSpoList (Получение списка SPO согласно запросу)

Метод возвращает список SPO согласно запросу.
Важный момент: возвращается информация только по тем Costoffers, на которые есть публикация партнеру (группе партнера) пользователя, которые подключились к веб сервису.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – класс с параметрами запроса
    • SvKey * – ключ класса услуги (1 – проживание, 2 – трансфер, 4 – экскурсия, 5 – экстрасервис, 0 или -1 не принимаются)
    • PublicationDateBegin * – дата публикации SPO «с»
    • PublicationDateEnd * – дата публикации цены «по»

Возвращаемый результат:

  • SPOInfo – результат поиска
    • ResultTable – таблица с результатом
    • Id – ключ SPO
    • Name – название SPO
    • PeriodBeforeCheckIn – период до заезда
    • SaleDateBegin – дата с которой возможно бронирование
    • SaleDateEnd – дата до которой возможно бронирование
    • Comment – описание SPO
    • CreateDate – дата создания
    • UpdateDate – дата обновления
    • SpoType – тип SPO (Ordinary – 0, Spo – 1)
    • SvKey – класс услуги
    • COLinkServices – услуги SPO
      • COLinkService – конкретная услуга SPO
        • SvKey – ключ типа услуги
        • Code – ключ услуги
        • DurationMin – минимальная продолжительность
        • DurationMax – максимальная продолжительность
        • IsDisable – заблокирована ли услуга
        • DisableDate – дата блокировки
    • COServices – информация о ценах на услуги в этом SPO
      • COService – информация о цене на конкретную услугу в этом SPO
        • Code – идентификатор услуги
        • CostCount – количество цен для услуги в SPO
        • CostLastUpdate – дата последнего изменения (добавления, удаления) цен для услуги в этом СПО
развернутьПример


GetCosts (Получение брутто цены по параметрам запроса)

Метод возвращает брутто цены по параметрам запроса.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – объект с параметрами запроса
    • SpoId * – ключ SPO ((Параметр CO_Id таблицы CostOffers). Список SPO возвращается при запросе к методу GetSpoList)
    • TariffId * – ключ тарифа ((В таблице цен соответствует параметру CS_CVId). При установке "-1" подбираются все тарифы)
    • SvKey * – тип услуги(1 – проживание, 2 – трансфер, 4 – экскурсия, 5 – экстрасервис)
    • Code * – ключ услуги (Для отеля это ключ из таблицы Partners. Для всех остальных услуг – это ключ SL_KEY из таблицы ServiceList. Так же эти ключи можно получить методами веб сервиса: GetServiceList, GetExcursions, GetTransfers, GetHotels)
    • PriceType – тип цены проживания (0 – за человека, 1 – за комнату, 2 – все). Если не указан, то запрашивается 2.
    • DownloadOnlyActualCosts * – закачка только актуальных цен (1 – получать актуальные, 0 – получать все)
    • DownloadUpdateCostsFromDate * – закачивать цены только с выбранной даты (1 – настройка включена, 0 – получаем все)
    • CostsUpdateDateBegin * – дата, с которой закачивать цены (используется при установке параметра DownloadUpdateCostsFromDate)

Возвращаемый результат:

  • GetCostsResult – результаты выдачи
    • CostInfo – массив данных
      • Id – ключ цены
      • SvKey – ключ типа услуги
      • SpoId – идентификатор SPO
      • Code – ключ услуги
      • AgeFrom – возраст «с»
      • AgeTo – возраст «по»
      • CreateDate – дата создания цены
      • CheckInDateBegin – дата заезда «с»
      • CheckInDateEnd – дата заезда «до»
      • CheckOutDateBegin – дата выезда «с»
      • CheckOutDateEnd – дата выезда «до»
      • DateBegin – дата действия цены «с»
      • DateEnd – дата действия цены «до»
      • UpdateDate – последняя дата обновления цены
      • Price – значение цены
      • Rate – валюта
      • SubCode1 – параметр цены в зависимости от типа услуги (для проживания – ключ типа номера, для трансфера – TransferType, для Adhot – ключ типа комнаты)
      • SubCode2 – параметр цены в зависимости от типа услуги (для проживания – ключ питания, для трансфера – точка начала, для Adhot – ключ отеля)
      • SubCode3 – параметр цены в зависимости от типа услуги (для проживания – ключ категории номера, для трансфера – точка окончания, для Adhot – ключ категории комнаты)
      • SubCode4 – параметр цены в зависимости от типа услуги (для проживания – размещение, для Adhot – размещение)
      • TariffId – ключ тарифа
      • Type – тип цены (1 – групповая, 0 – негрупповая. Для отеля за комнату или за человека.)
      • CountryId – ключ страны услуги
      • CityFromId – ключ города услуги
      • CityToId – ключ города услуги «куда» (для трансферов)
      • TouroperatorId – ключ туроператора
развернутьПример


SpoPriceMarkDownloaded (Получение информации о доступности конкретного SPO для продажи)

Метод возвращает информацию о доступности конкретного SPO для продажи.
Важный момент: возвращается информация только по тем Costoffers, на которые есть публикация партнеру (группе партнера) пользователя, которые подключились к веб сервису.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • SpoKey * – ключ SPO (возвращается при запросе к методу GetSpoLList)
  • VariantOfCost – вариант цены
  • SvKey – ключ класса услуги
  • Code – код услуги

Возвращаемый результат:

  • SpoPriceMarkDownloadedResult – результат поиска
    • true – SPO доступно
    • false – SPO недоступно
развернутьПример


Методы работы с услугами

GetHotels (Получение списка отелей по параметрам)

Метод возвращает список отелей по параметрам.
Принимаемые параметры запроса ( * – обязательный):

  • СountryKey * – ключ страны (-1 для всех)
  • RegionKey * – ключ региона (-1 для всех)
  • СityKey * – ключ города (-1 для всех)

Возвращаемый результат:

  • GetHotelsResult – результаты выдачи
  • Hotel – отель
    • Name – название отеля
    • ID – идентификатор отеля
    • Description – описание отеля
    • NameLat – название отеля латиницей
    • Code – код отеля
    • CodeLat – код отеля латиницей
    • Unicode – код ISO отеля
    • City – город отеля
      • Name – название города
      • ID – идентификатор города
      • Description – описание города
      • NameLat – название города латиницей
      • Code – код города
      • CodeLat – код города латиницей
      • Unicode – код ISO города
      • CountryID – идентификатор страны отеля
      • RegionID – идентификатор региона отеля
    • RegionID – идентификатор региона отеля
    • PriceType – тип цены (PerPerson = 0, PerRoom = 1, All = 2, None = 1000)
    • CountCosts – количество цен на отель
    • CityId – идентификатор города отеля
    • HotelCategoryID – идентификатор категории отеля
развернутьПример


GetTransfers (Получение списка трансферов по параметрам)

Метод возвращает список трансферов по параметрам.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – объект с параметрами запроса
    • СountryKey * – ключ страны (-1 для всех)
    • СityKey * – ключ города (-1 для всех)
    • RegionKey * – ключ региона (-1 для всех)
    • TypeKey * – ключ типа трансфера (-1 для всех)

Возвращаемый результат:

  • GetTransferResult – результаты выдачи
    • TransferDirectionInfo – массив данных
      • ID – идентификатор трансфера
      • Name – название
      • TransferTypeID – ключ типа трансфера
      • TransferTypeName – название типа трансфера
      • CityFromID – идентификатор города откуда
      • CityFromName – название города откуда
      • CityToID – идентификатор города куда
      • CityToName – название города куда
      • PointFromID – идентификатор точки откуда
      • PointFromName – название точки откуда
      • PointToID – идентификатор точки куда
      • PointToName – название точки куда
развернутьПример


GetExcursions (Получение списка экскурсий по параметрам)

Метод возвращает экскурсии по параметрам.
Принимаемые параметры запроса ( * – обязательный):

  • СountryKey * – ключ страны (-1 для всех)
  • RegionKey * – ключ региона (-1 для всех)
  • СityKey * – ключ города (-1 для всех)

Возвращаемый результат:

  • GetExcursionsResult – результаты выдачи
    • Excursion – массив данных
      • Name – название экскурсии
      • ID – идентификатор экскурсии
      • Description – описание экскурсии
      • NameLat – название экскурсии латиницей
      • Code – код экскурсии
      • CodeLat – код экскурсии латиницей
      • Unicode – код ISO экскурсии
      • CityID – идентификатор города
      • RegionID – идентификатор региона
развернутьПример


GetServiceList (Получение списка дополнительных услуг)

Метод возвращает дополнительные услуги.
Возвращаемый результат:

  • GetServiceListResult – результаты выдачи
    • ServiceList – массив данных
      • AdditionalParams – дополнительные параметры
        • Key – ключ
        • Value – значение
      • Name – название дополнительной услуги
      • ID – идентификатор дополнительной услуги
      • NameLat – название дополнительной услуги латиницей
      • Code – код дополнительной услуги
      • CodeLat – код дополнительной услуги латиницей
      • Unicode – код ISO дополнительной услуги
      • ServiceClaseID – идентификатор класса дополнительной услуги
      • CountryID – идентификатор страны дополнительной услуги
развернутьПример


GetExtraServices (Получение списка дополнительных услуг включая услуги типа AdHot)

Метод возвращает список дополнительных услуг, в том числе и услуги типа AdHot.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – объект с параметрами запроса
    • ServiceClassKey * – ключ класса дополнительной услуги (-1 для всех)
    • СountryKey * – ключ страны дополнительной услуги (-1 для всех)
    • СityKey * – ключ города для AdHot (-1 для всех)
    • HotelKey * – ключ отеля для AdHot (-1 для всех)
    • RegionKey * – ключ региона (-1 для всех)
    • TypeKey * – тип AdHot (-1 – для всех, 1 – Manual, 2 – HardLink, 3 – WithCosts)

Возвращаемый результат:

  • GetExtraServicesResult – результаты выдачи
    • ExtraServiceInfo – массив данных
      • Id – идентификатор дополнительной услуги
      • Name – название дополнительной услуги
      • Description – описание дополнительной услуги
      • ServiceClassId – идентификатор класса дополнительной услуги
      • IsWeb – доступность дополнительной услуги в онлайн
      • DurationType – c продолжительностью или без (1 – с продолжительностью)
      • UpdateDate – дата последнего обновления дополнительной услуги
      • IsPartnerLikeHotel – партнер у AdHot такой же как и у проживания
      • LinkType – тип AdHot (1 - Manual, 2 – HardLink, 3 - WithCosts)
      • IsAddHot – является ли услуга AdHot (true – является, false – не является)
      • CountryList – список ключей стран для AdHot (если коллекция пустая – значит для всех)
      • CityList – список ключей городов для AdHot (если коллекция пустая – значит для всех)
      • HotelList – список ключей отелей для AdHot (если коллекция пустая – значит для всех)
      • RoomTypeList – список ключей типов комнат для AdHot (если коллекция пустая – значит для всех)
      • RoomCategoryList – список ключей категорий комнат для AdHot (если коллекция пустая – значит для всех)
      • AccommodationList – список ключей размещений для AdHot (если коллекция пустая – значит для всех)
      • HotelLinkTypeList – список переопределений типа AdHot для отелей
        • HotelLinkTypeEx – переопределение типа AdHot для отеля
          • HotelId – ключ отеля
          • ExtraServiceLinkType – переопределенный тип AdHot (1 – Manual, 2 – HardLink, 3 – WithCosts)
развернутьПример


GetExtraServiceWithPrices (Получение списка дополнительных услуг включая услуги типа AdHot с ценами)

Метод возвращает список дополнительных услуг, в том числе и услуги типа AdHot с ценами.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Request – объект с параметрами запроса
    • HotelKey * – ключ отеля для AdHot (-1 для всех)
    • DateFrom – дата действия от
    • DateTo – дата действия до

Возвращаемый результат:

  • GetExtraServiceWithPricesResult Message="Ok">
    • CostInfo – массив данных
      • Id – ключ цены
      • SvKey – ключ типа услуги
      • SpoId – идентификатор SPO
      • Code – ключ услуги
      • AgeFrom – возраст «с»
      • AgeTo – возраст «по»
      • CreateDate – дата создания цены
      • CheckInDateBegin – дата заезда «с»
      • CheckInDateEnd – дата заезда «до»
      • CheckOutDateBegin – дата выезда «с»
      • CheckOutDateEnd – дата выезда «до»
      • DateBegin – дата действия цены «с»
      • DateEnd – дата действия цены «до»
      • UpdateDate – последняя дата обновления цены
      • Price – значение цены
      • Rate – валюта
      • SubCode1 – параметр цены в зависимости от типа услуги (для проживания – ключ типа номера, для трансфера – TransferType, для Adhot – ключ типа комнаты)
      • SubCode2 – параметр цены в зависимости от типа услуги (для проживания – ключ питания, для трансфера – точка начала, для Adhot – ключ отеля)
      • SubCode3 – параметр цены в зависимости от типа услуги (для проживания – ключ категории номера, для трансфера – точка окончания, для Adhot – ключ категории комнаты)
      • SubCode4 – параметр цены в зависимости от типа услуги (для проживания – размещение, для Adhot – размещение)
      • TariffId – ключ тарифа
      • Type – тип цены (1 – групповая, 0 – негрупповая. Для отеля за комнату или за человека.)
      • CountryId – ключ страны услуги
      • CityFromId – ключ города услуги
      • CityToId – ключ города услуги «куда» (для трансферов)
      • TouroperatorId – ключ туроператора
      • AdHotName – название доп. услуги в отеле
      • LinkType – тип доп. услуги в отеле: 1 - Manual (услуга, добавляемая по желанию), 2 – HardLink (обязательная услуга в отеле), 3 - WithCosts (обязательная услуга, добавляемая при наличии цены в период бронирования отеля)
      • DurationType – услуга c продолжительностью или без (1 – цена указана за сутки, 0 - цена указана за весь период проживания)
развернутьПример


CalculateSingleCost (Расчет стоимости услуги по ее параметрам стандартным механизмом расчета)

Метод рассчитывает стоимость услуги по ее параметрам стандартным механизмом расчета.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • SvKey * – ключ типа услуги
  • СountryKey * – ключ страны
  • Сode * – ключ услуги
  • Subcode1 * – параметр цены в зависимости от типа услуги (для проживания – ключ типа номера, для трансфера – TransferType)
  • Subcode2 * – параметр цены в зависимости от типа услуги (для проживания – ключ питания, для трансфера – точка начала)
  • Subcode3 * – параметр цены в зависимости от типа услуги (для проживания – ключ категории номера, для трансфера – точка окончания)
  • Subcode4 * – параметр цены в зависимости от типа услуги (для проживания – размещение)
  • TourOperatorGroupKey * – ключ группы туроператора
  • TourOperatorKey * – ключ туроператора (продавца)
  • MrKey * – ключ рынка
  • FilialKey * – ключ филиала
  • TafiffKey * – ключ тарифа
  • Pax * – Pax по услуге
  • Ages * – список с возрастами детей
  • CheckInDate * – дата «с»
  • CheckOutDate * – дата «по»
  • CityKey * – ключ города
  • CityKeyTo * – ключ города «куда»
  • Rate * – код валюты
  • PricePerRoom * – за комнату или за человека
  • OnlyPublished * – учитывать только опубликованные цены
  • ServiceProviderKey * – ключ поставщика услуги

Возвращаемый результат:

  • CalculateSingleCostResult – результаты выдачи
    • Brutto – рассчитанная брутто цена
    • ProviderKey – ключ поставщика услуги
    • IsCalcBrutto
    • CancellationPolicies – Политика аннуляции
    • PolicyKey – ключ политики
    • DateFrom – дата "от"
    • DateTo – дата "до"
    • PenaltyValue – значение штрафа
    • IsPercent - процент, указывающий, что штраф в "%" (true) или в "ночах" (false)
развернутьПример


Методы работы со справочниками

GetRegions (Получение списка регионов)

Метод возвращает список регионов. Принимаемые параметры запроса (* – обязательный):

  • СountryKey * – идентификатор страны (-1 для всех)

Возвращаемый результат:

  • GetRegionsResult – результат поиска
    • Region – массив данных
      • Name – название региона
      • ID – идентификатор региона
      • Description – описание региона
      • NameLat – наименование региона латиницей
      • Code – код региона
      • CodeLat – код региона латиницей
      • Unicode – код ISO региона
      • CountryID – идентификатор страны
развернутьПример


GetCities (Получение списка городов)

Метод возвращает список городов. Принимаемые параметры запроса (* – обязательный):

  • СountryKey * – идентификатор страны (-1 для всех)
  • RegionKey * – идентификатор региона (-1 для всех)

Возвращаемый результат:

  • GetCitiesResult – результат поиска
    • City – массив данных
      • Name – название города
      • ID – идентификатор города
      • Description – описание города
      • NameLat – наименование города латиницей
      • Code – код города
      • CodeLat – код города латиницей
      • Unicode – код ISO города
      • CountryID – идентификатор города
      • RegionID – идентификатор региона
развернутьПример


GetCountries (Получение списка стран)

Метод возвращает список стран.
Возвращаемый результат:

  • GetCountriesResult – результат поиска
    • Country – массив данных
      • Name – название страны
      • ID – идентификатор страны
      • Description – описание страны
      • NameLat – наименование страны латиницей
      • Code – код страны
      • CodeLat – код страны латиницей
      • Unicode – код ISO страны
      • IsIncoming – параметр для внутреннего использования
развернутьПример


GetRoomType (Получение списка типов комнат)

Метод возвращает список типов комнат.
Возвращаемый результат:

  • GetRoomTypeResult – результат поиска
    • RoomType – массив данных
      • Name – название типа комнаты
      • ID – идентификатор типа комнаты
      • Description – описание типа комнаты
      • NameLat – наименование типа комнаты
      • Code – код типа комнаты
      • CodeLat – код типа комнаты латиницей
      • Unicode – код ISO типа комнаты
      • Places – количество основных мест
      • ExPlaces – количество дополнительных мест
      • PrintOrder – печать отчета
развернутьПример


GetRoomCategories (Получение списка категорий комнат)

Метод возвращает список категорий комнат.
Возвращаемый результат:

  • GetRoomCategoriesResult – результат поиска
    • RoomCategory – массив данных
      • Name – название категории комнаты
      • ID – идентификатор категории комнаты
      • Description – описание категории комнаты
      • NameLat – наименование категории комнаты
      • Code – код категории комнаты
      • CodeLat – код категории комнаты латиницей
      • Unicode – код ISO категории комнаты
      • MainPlaces – количество основных мест
      • ExtraPlaces – количество дополнительных мест
      • IsMain – параметр для внутреннего пользования
развернутьПример


GetPansions (Получение списка типов питаний)

Метод возвращает список типов питаний.
Возвращаемый результат:

  • GetPansionsResult – результат поиска
    • Pansion – массив данных
      • Name – название типа питания
      • ID – идентификатор типа питания
      • Description – описание типа питания
      • NameLat – наименование типа питания латиницей
      • Code – код типа питания
      • CodeLat – код типа питания латиницей
      • Unicode – код ISO типа питания
развернутьПример


GetRatings (Получение массива категорий (звездностей) отелей)

Метод возвращает массив категорий отелей.
Возвращаемый результат:

  • GetRatingsResult – результат поиска
    • HotelCategory – массив данных
      • Name – название категории отеля
      • ID – идентификатор категории отеля
      • Description – описание категории отеля
      • NameLat – наименование категории отеля латиницей
      • Code – код категории отеля
      • CodeLat – код категории отеля латиницей
      • Unicode – код ISO категории отеля
развернутьПример


GetFlights (Получение списка авиарейсов)

Метод возвращает список авиарейсов.
Возвращаемый результат:

  • GetFlightsResult – результат поиска
    • Flight – массив данных
      • AirportFrom – трансферный узел в пункте отбытия
        • Name – название трансферного узла из справочника Flight numbers
        • ID – идентификатор города трансферного узла
        • Description – название города трансферного узла из справочника Pickup point list
        • NameLat – наименование трансферного узла
        • Code – код трансферного узла
        • CodeLat – код трансферного узла латиницей
        • Unicode – код ISO трансферного узла
        • RegionID – идентификатор региона расположения трансферного узла
        • CityID – идентификатор города расположения трансферного узла
      • AirportTo – трансферный узел в пункте прибытия
        • Name – название трансферного узла из справочника Flight numbers
        • ID – идентификатор города трансферного узла
        • Description – название города трансферного узла из справочника Pickup point list
        • NameLat – наименование трансферного узла
        • Code – код трансферного узла
        • CodeLat – код трансферного узла латиницей
        • Unicode – код ISO трансферного узла
        • RegionID – идентификатор региона расположения трансферного узла
        • CityID – идентификатор города расположения трансферного узла
      • TimeFrom – время от
      • TimeTo – время до
      • DateFrom – дата от
      • DateTo – дата до
      • IsArrival
      • Available
      • ID – идентификатор строки из таблицы Charter из БД
      • Name – наименование из справочника Flight numbers
      • Number – номер перелета из справочника Flight numbers
      • ArrivalFlightNumber – номер рейса прибытия из справочника Flight numbers
      • DepartureFlightNumber – номер рейса вылета из справочника Flight numbers


развернутьПример


GetAirport (Получение списка трансферных узлов)

Метод возвращает список трансферных узлов.
Возвращаемый результат:

  • GetFlightsResult – результат поиска
    • Airport – массив данных
      • Name – название трансферного узла из справочника Pickup point list
      • ID – идентификатор трансферного узла
      • Description – название города трансферного узла из справочника Pickup point list
      • NameLat – название города трансферного узла латиницей
      • Code – код города трансферного узла латиницей
      • CodeLat – код города трансферного узла латиницей
      • Unicode – код ISO города трансферного узла латиницей
      • RegionID – идентификатор региона расположения трансферного узла
      • CityID – идентификатор города расположения трансферного узла
развернутьПример


GetProviders (Получение списка партнеров, которые являются поставщиками услуг)

Метод возвращает список партнеров системы, которые являются поставщиками услуг.
Возвращаемый результат:

  • GetProvidersResult – результат поиска
    • Partner – массив данных
      • Name – название партнера
      • ID – идентификатор партера
      • Description – описание партнера
      • NameLat – название партнера латиницей
      • Code – код партнера
      • CodeLat – код партнера латиницей
      • Unicode – код ISO партнера
      • PartnersGroupID – идентификатор группы партнера
      • FullName – полное название партнера
      • Fax – факс партнера
      • Address – адрес партнера
      • Zip – почтовый код партнера
      • Email – e-mail партнера
      • Phones – телефоны партнера
развернутьПример


GetTransports (Получение списка транспортных средств)

Метод возвращает список транспортных средств.
Возвращаемый результат:

  • GetTransportsResult – результат поиска
    • Transport – массив данных
      • Name – название транспортного средства
      • ID – идентификатор транспортного средства
      • Description – описание транспортного средства
      • NameLat – название транспортного средства латиницей
      • Code – код транспортного средства
      • CodeLat – код транспортного средства латиницей
      • Unicode – код ISO транспортного средства
развернутьПример


GetTransferTypes (Получение списка типов трансферов)

Метод возвращает список типов трансферов.
Возвращаемый результат:

  • GetTransferTypesResult – результат поиска
    • Transport – массив данных
      • Name – название трансфера
      • ID – идентификатор трансфера
      • Description – описание трансфера
      • NameLat – наименование трансфера латиницей
      • Code – код трансфера
      • CodeLat – код трансфера латиницей
      • Unicode – код ISO трансфера
развернутьПример


GetRates (Получение списка валют)

Метод возвращает список валют.
Возвращаемый результат:

  • GetRatesResult – результат поиска
    • Rate – массив данных
      • Name – название валюты
      • ID – идентификатор валюты
      • Description – описание валюты
      • NameLat – описание валюты латиницей
      • Code – код валюты
      • CodeLat – код валюты латиницей
      • Unicode – код ISO валюты
      • IsMain – признак валюты "главная"
      • IsNational – признак валюты «национальная»
развернутьПример


GetServicePackage (Получение списка вариантов пакетных услуг)

Метод возвращает список вариантов пакетных услуг.
Возвращаемый результат:

  • GetServicePackageResult – результат поиска
    • ServiceList – массив данных
      • Name – название варианта
      • ID – идентификатор варианта
      • Description – описание варианта
      • NameLat – описание варианта латиницей
      • Code – код варианта
      • CodeLat – код варианта латиницей
      • Unicode – код ISO варианта
      • ServiceClaseID – идентификатор класса дополнительной услуги
      • CountryID – ключ страны варианта
развернутьПример


GetDLStatuses (Получение списка статусов услуг)

Метод возвращает список статусов услуг.
Возвращаемый результат:

  • GetDLStatusesResult – результат поиска
    • StatusService – массив данных
      • Name – название статуса услуги
      • ID – идентификатор статуса услуги
      • Description – описание статуса услуги
      • NameLat – описание статуса услуги латиницей
      • Code – код статуса услуги
      • CodeLat – код статуса услуги латиницей
      • Unicode – код ISO статуса услуги
развернутьПример


GetTariffs (Получение списка тарифов для определенного типа услуг)

Метод возвращает тарифы для определенного типа услуг.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • SvKey * – ключ типа услуги

Возвращаемый результат:

  • GetTariffsResult – результат поиска
    • Tariff – массив данных
      • ID – идентификатор тарифа
      • Name – наименование тарифа
      • Description – описание тарифа
      • NameLat – наименование тарифа латиницей
      • Code – код тарифа
      • CodeLat – код тарифа латиницей
      • Unicode – код ISO тарифа
      • SvKey – ключ типа услуги
      • Comment – описание
      • CreateDate – дата создания
развернутьПример


GetRoomDescriptions (Получение массива описаний комнат)

Метод возвращает массив описаний комнат.
Принимаемые параметры запроса ( * – обязательный):

  • RoomTypeId * – ключ типа комнаты (0 – для всех)
  • RoomCategoryId * – ключ категории комнаты (0 – для всех)

Возвращаемый результат:

  • GetRoomDescriptionsResult – результат поиска
    • AdditionalDescription – массив данных
      • Name – наименование описания комнаты
      • ID – идентификатор описания комнаты
      • Description – описание
      • NameLat – наименование описания комнаты латиницей
      • Code – код описания комнаты
      • CodeLat – код описания комнаты латиницей
      • Unicode – код ISO описания комнаты
развернутьПример


GetAccommodations (Получение размещения отелей)

Метод возвращает размещения отелей.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)

Возвращаемый результат:

  • GetAccommodationsResult – результат поиска
    • Message – идентификатор размещения
    • Data – массив объектов с данными
      • AccomodationInfo – массив данных с размещением
        • Id – идентификатор размещения
        • Code – код размещения
        • Name – название размещения
        • IsPerRoom – за комнату или за человека
        • NameUnicode – название размещения в Unicode
        • CountAdultMain – количество взрослых на главном месте
        • CountChildMain – количество детей на главном месте
        • CountAdultExtra – количество взрослых на доп. месте
        • CountChildExtra – количество детей на доп. месте
        • ChildrenAges – строка с описание возрастов детей
        • IsWeb – доступность для Interlook-Web
        • IsPackage – можно ли добавлять в пакет
        • UpdateDate – дата последнего обновления размещения
        • ClildrenAgesList – список с возрастами детей
          • AccomadationAge – массив данных с возрастом
            • Id – идентификатор записи
            • AgeFrom – возраст «с»
            • AgeTo – возраст «по»
            • CountMen – количество взрослых в размещении
            • IsMain – на главном ли месте ребенок этого возраста
            • UpdateDate – дата последнего обновления записи
развернутьПример


GetRoomAccommodations (Получение размещения отелей и первых 2 значений возрастов из списка возрастов детей)

Метод возвращает размещения отелей и первые 2 значения возрастов из списка возрастов детей.
Возвращаемый результат:

  • GetRoomAccommodationsResult – результат поиска
    • RoomAccomodation – массив данных
      • Name – название размещения
      • ID – идентификатор размещения
      • Description – описание размещения
      • NameLat – наименование размещения латиницей
      • Code – код размещения
      • CodeLat – код размещения латиницей
      • Unicode – код ISO размещения
      • PerRoom – за комнату
      • AdultMainPalces – количество взрослых основных мест
      • ChildMainPalces – количество детских основных мест
      • AdultExtraPalces – количество взрослых дополнительных мест
      • ChildExtraPalces – количество детских дополнительных мест
      • MainPlaces – количество основных мест
      • ExtraPlaces – количество дополнительных мест
      • IsMain – есть ли основные места
      • AgeFrom – возраст детей «с»
      • AgeTo – возраст детей «по»
      • Age2From – возраст детей «с»
      • Age2To – возраст детей «по»
развернутьПример


GetClientInfo (Выдача информации по партнёру, к которому относится on-line user)

Метод выдает информацию по партнёру, к которому относится on-line user, под которым осуществлен запрос в методе Connect.
Принимаемые параметры запроса ( * – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)

Возвращаемый результат:

  • Name – наименование партнера
  • MarketName – перечень рынков из карточки партнера
  • Address – адрес из карточки партнера
развернутьПример


Методы интеграции с системами оплаты

GetReservationPenalties (Получение штрафов по путевке до того, как ее аннулировать)

Метод возвращает размеры штрафов по путевке до того, как ее аннулировать.
Работа метода регулируется лицензией.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • ReservationKey * – ключ путевки
  • CancellationDate – дата аннуляции, на которую выдается условие и сумма штрафа. Если не указана, то получаем все возможные правила аннуляции вплоть до заезда.

Возвращаемый результат:

  • GetReservationPenaltiesResult – результат поиска
    • Penalty – штраф
      • ServicePenalty – сервис штрафов
        • ServiceClassID
        • ID – идентификатор штрафа
        • Name – наименование штрафа
        • PenaltyData – массив данных штрафа
          • PenaltyDataInfo – массив данных
            • TotalPenalty – полная сумма штрафа
            • RateCode – код валюты
            • PolicyDescription – условия штрафа
            • CancellationPolicyData – массив данных аннуляции
              • PolicyKey – ключ аннуляции
              • DateFrom – дата с
              • DateTo – дата по
              • PenaltyValue – значение штрафа
              • IsPercent - процент, указывающий, что штраф в "%" (true) или в "ночах" (false)
        • Hotel – отель
          • ID – идентификатор отеля
          • Name – наименование отеля
        • RoomType – тип комнаты
          • ID – идентификатор комнаты
          • Name – название комнаты
        • RoomCategory – категория номера
          • ID – идентификатор категории номера
          • Name – наименование категории номера
        • Accommodation – размещение
          • ID – идентификатор размещения
          • Name – наименование размещения
        • Pansion – тип питания
          • ID – идентификатор типа питания
          • Name – наименование типа питания

В случае ошибок получим сообщение с расшифровкой.
В случае некорректного Guid получим сообщение:"Invalid user or password (Invalid GUID)".
В случае отсутствия договора с указанным ключом для текущего партнера получим сообщение:"Check the parameter 'reservationKey' = <значение в запросе>. There is no any reservation for you in the database.".

развернутьПример


CreatePayment (Создание платежа по путевке)

Метод создает платеж по путевке.
Принимаемые параметры запроса (* – обязательный):

  • UserToken * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Date * – дата создания платежа
  • Sum * – сумма платежа
  • CurrencyIsoCode * – ISO код валюты платежа
  • ReservationCode * – код путевки
  • PaymentId * – идентификатор платежа (задается вручную для последующего идентифицирования платежа). Уникальный код, указывается пользователем один раз, не должен повторяться при следующей оплате по данной заявке.

Возвращаемый результат:

  • CreatePaymentResult – результат выдачи
    • 0 – NoError – ошибок нет
    • 1 – DogovorNotFound – путевка с таким кодом не найдена
    • 2 – InternalError – внутренняя ошибка
    • 3 – DogovorAnnulate – путевка аннулирована
    • 4 – DogovorPayed – путевка оплачена
    • 7 – ExistingPaymentID – платеж с таким внешним идентификатором уже существует
    • 8 – IncorrectPaymentType – по путевке есть платежи запрещенных типов
    • 9 – NotAllowedPartnerKey – партнер по путевке не разрешен
    • 10 – FailureSignature – ошибка подписи
    • 11 – NoInvoices – нет инвойсов (счетов) по путевке
развернутьПример


GetPaymentInformation (Поиск информации о платеже с заданным идентификатором платежа из внешней системы)

Метод возвращает информацию о платеже с заданным идентификатором платежа из внешней системы.
Принимаемые параметры запроса (* – обязательный):

  • UserToken * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • ReservationCode * – код путевки
  • ExternalPaymentId * – идентификатор платежа (Параметр PaymentId в запросе метода CreatePayment)

Возвращаемый результат:

  • GetPaymentInformationResult – результат выдачи
    • IsPaymentExists – показывает, есть ли запрошенный платеж
      • true – платеж с указанным идентификатором по указанной путевке существует
      • false – запрошенного платежа нет
    • PaymentInformationResult – массив данных платежа
      • InternalPaymentId – идентификатор платежа в системе Interlook,
      • DogovorCode – код путевки,
      • PaymentSum – сумма платежа,
      • PaymentNationalSum – сумма платежа в национальной валюте,
      • PaymentRateISOCode – ISO код валюты платежа
      • CreateDate – дата проведения платежа
    • ErrorCode – код ошибки
      • 0 – NoError – ошибок нет
      • 1 – DogovorNotFound – путевка с таким кодом не найдена
      • 2 – InternalError – внутренняя ошибка
      • 3 – DogovorAnnulate – путевка аннулирована
      • 4 – DogovorPayed – путевка оплачена
      • 7 – ExistingPaymentID – платеж с таким внешним идентификатором уже существует
      • 8 – IncorrectPaymentType – по путевке есть платежи запрещенных типов
      • 9 – NotAllowedPartnerKey – партнер по путевке не разрешен
      • 10 – FailureSignature – ошибка подписи
      • 11 – NoInvoices – нет инвойсов (счетов) по путевке
развернутьПример


GetCancellationPolicyInfoWithPenalty (Получение информации по расчету штрафов по отелю )

Данный функционал доступен начиная с релиза 11.20


Метод возвращает информацию по расчету штрафов по отелю.
Выдача результатов метода регулируется лицензией.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DateFrom * – дата начала проживания
  • DateTo * – дата окончания проживания
  • HotelKey * – идентификатор отеля
  • PansionKey – идентификатор питания
  • AccommodationKey – идентификатор размещения, необязательный если передаем Pax.
  • RoomTypeKey – идентификатор типа комнаты
  • RoomCategoryKey – идентификатор категории номера
  • Pax * – Pax по услуге
  • Ages* – список с возрастами детей. Если ищем размещение без детей передаем пустой параметр (<meg:Ages></meg:Ages>)
  • CancellationDate – дата аннуляции (если не указана – берется текущая)

Возвращаемый результат:

  • GetCancellationPolicyInfoWithPenaltyResult – результат выдачи
    • CancellationPolicyInfoWithPenalty – массив данных
      • HotelKey – идентификатор отеля
      • HotelName – наименование отеля
      • AccomodatioKey – идентификатор размещения
      • AccomodatioName – наименование размещения
      • RoomTypeKey – идентификатор типа комнаты
      • RoomTypeName – наименование типа комнаты
      • RoomCategoryKey – идентификатор категории номера
      • RoomCategoryName – наименование категории номера
      • PansionKey – идентификатор питания
      • PansionName – наименование питания
      • PolicyDescripion – описание политики аннуляции и полной суммы штрафа
      • CancellationDate – дата аннуляции
      • PolicyData – массив данных
        • CancellationPolicyWithPenaltyValue – массив данных по расчету штрафа
          • PolicyKey – ключ политики
          • DateFrom – дата "от"
          • DateTo – не задана
          • PenaltyValue – значение штрафа
          • IsPercent – параметр, указывающий, что штраф в "%" (true) или в "ночах" (false)
          • PenaltyTotal – общая сумма штрафа
развернутьПример


CheckReservation (Получение информации о платеже, необходимом для путевки, в выбранной валюте)

Метод возвращает информацию о платеже, необходимом для путевки, в выбранной валюте.
Принимаемые параметры запроса (* – обязательный):

  • UserToken * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DgCode * – код путевки
  • CurrencyIsoCode * – ISO код валюты платежа

Возвращаемый результат:

  • CheckReservationResult – результат выдачи
    • Amount – сумма платежа
    • RateCode – ISO код валюты платежа
    • NationalCurrencyPrice – сумма платежа в национальной валюте
    • NationalRateCode – ISO код национальной валюты
    • CustomCurrencyPrice – сумма платежа в произвольной валюте
    • CustomRateCode – ISO код произвольной валюты платежа
    • ErrorCode – код результата
      • 0 – NoError – ошибок нет
      • 1 – DogovorNotFound – путевка с таким кодом не найдена
      • 2 – InternalError – внутренняя ошибка
      • 3 – DogovorAnnulate – путевка аннулирована
      • 4 – DogovorPayed – путевка оплачена
      • 7 – ExistingPaymentID – платеж с таким внешним идентификатором уже существует
      • 8 – IncorrectPaymentType – по путевке есть платежи запрещенных типов
      • 9 – NotAllowedPartnerKey – партнер по путевке не разрешен
      • 10 – FailureSignature – ошибка подписи
      • 11 – NoInvoices – нет инвойсов (счетов) по путевке
    • FilialKey – идентификатор филиала партнера
    • BeginTourDate – дата начала тура по путевке
    • EndTourDate – дата окончания тура путевки
развернутьПример


CreatePaymentForDogovor (Создание платежа по путевке по выставленному инвойсу)

Метод создает платеж по путевке, у которой выставлен инвойс.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DgKey * – ключ путевки
  • Payment * – размер платежа

Возвращаемый результат:

  • CreatePaymentForDogovorResult – результат выдачи
    • OrderId – идентификатор платежа

В случае отсутствия созданного инвойса по путевке получим сообщение: "There is no invoice".

развернутьПример


Метод работы с квотами

CheckQuota (Проверка доступности номера отеля на период)

Метод возвращает информацию о доступности номера отеля на период.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DateFrom – дата с
  • DateTo – дата по
  • HotelId * – ключ отеля
  • RoomTypeId * – ключ типа комнаты (-1 для всех)
  • RoomCategoryId * – ключ категории комнаты (-1 для всех)

Возвращаемый результат:

  • ServiceResult – результат поиска
  • QuotaSimpleInfo – массив данных
    • RoomTypeId – ключ типа комнаты
    • RoomCategoryId – ключ категории комнаты
    • Quota – информация о квоте (0 – на запрос, 1 – есть квота, 2 – стоп)
    • RoomVariantName – наименование варианта комнаты (комбинации из таблицы RoomVariant)
    • Date – не заполняется
развернутьПример


GetQuotaInfo (Проверка доступности номера отеля на период с детализацией по дням)

Метод возвращает информацию о доступности номера отеля на период с детализацией по дням.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • DateFrom * – дата с
  • DateTo * – дата по
  • HotelId * – ключ отеля
  • RoomTypeId * – ключ типа комнаты (-1 для всех)
  • RoomCategoryId * – ключ категории комнаты (-1 для всех)

Возвращаемый результат:

  • GetQuotaInfoResult – результат поиска
  • QuotaSimpleInfo – массив данных
    • RoomTypeId – ключ типа комнаты
    • RoomCategoryId – ключ категории комнаты
    • Quota – информация о квоте (0 – на запрос, 1 – есть квота, 2 – стоп)
    • RoomVariantName – наименование варианта комнаты (комбинации из таблицы RoomVariant)
    • Date – день
развернутьПример


GetChangeQuotaAndStop (Получение информации по квотам и стопам в отеле)

Метод передает информацию по квотам и стопам в отеле. Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • HotelKey * – ключ отеля
  • Date – дата, с которой получаем изменения (если не отправляем, то берется текущая)
  • UseRoomDescription * – как сопоставляем категорию и тип комнаты (через общее описание комнаты или по-отдельности)
  • LoadQuaota * – загружать или нет изменения по квотам
  • LoadStop * – загружать или нет изменения по стопам

Возвращаемый результат:

  • GetChangeQuotaAndStopResult – результат поиска
    • QuotaStopInfo – массив данных
      • ID – не используется
      • SvKey – ключ сервис класса (для отеля = 1)
      • Code – ключ отеля
      • SubCode1Name – название типа комнаты
      • SubCode1 – ключ типа комнаты
      • SubCode2 – не используется
      • SubCode3Name – название категории комнаты
      • SubCode3 – ключ категории комнаты
      • RoomDescriptionID – ключ описания комнаты
      • RoomDescriptionName – название описания комнаты
      • Place – количество мест (2 и больше, 1 – мест мало или одно, 0 – нет мест в квоте, -1 – стоп отменен (если IsStop=true) или квота удалена(если IsStop=false)), -2 – стоп отменен и квот при этом нет)
      • IsStop – стоит ли стоп на текущую дату
      • Date – дата текущей квоты (стопа)
      • UpdateDate – дата обновления
      • Release – релиз-период
развернутьПример


GetHotelQuotaStopInfo (Получение информации по отелям, у которых были изменения в квотах или стопах с определенной даты)

Метод возвращает отели, у которых были изменения в квотах или стопах с определенной даты.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Date * – дата, с которой будем искать отели с измененными квотами или стопами

Возвращаемый результат:

  • GetHotelQuotaStopResult – результат поиска
    • HotelQuotaStopInfo – массив данных
      • HotelKey – ключ отеля
      • UpdateDateQuota – дата последнего изменения в квотах по отелю
      • UpdateDateStop – дата последнего изменения в стопах по отелю
развернутьПример


GetQuotaStop (Получение информации по установленным стопам на номера в отеле)

Метод возвращает информацию по установленным стопам на номера в отеле.
Принимаемые параметры запроса (* – обязательный):

  • Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
  • Date * – дата, с которой будем искать отели с измененными квотами или стопами
  • HotelKey * – ключ отеля

Возвращаемый результат:

  • GetQuotaStopResult – результат поиска
    • QuoteHotel – массив данных
      • Code – ключ отеля
      • StartDate – дата начала
      • EndDate – дата окончания
      • Date – дата
      • CreateDate – дата создания
      • ID – не используется
      • IsRemove – удалена или нет
      • Total – количество мест
      • Sold – продано
      • Free – свободно
      • HotelKey – ключ отеля
      • RoomTypeKey – ключ типа комнаты
      • RoomCategoryKey – ключ категории комнаты
      • QuoteType – тип квоты
      • IsStopSale – установлен ли стоп на продажу
    • RoomTypeId – ключ типа комнаты
    • RoomCategoryId – ключ категории комнаты
развернутьПример