Master-Interlook:IntegrationService — различия между версиями
[непроверенная версия] | [непроверенная версия] |
Kiriy (обсуждение | вклад) (→CreateReservation (бронирование путевки)) |
Kiriy (обсуждение | вклад) (→CreateReservation (бронирование путевки)) |
||
Строка 175: | Строка 175: | ||
</TD></TR></TABLE> | </TD></TR></TABLE> | ||
</div></div><br /> | </div></div><br /> | ||
− | * '''ExcursionService''' - дополнительные параметры для услуги типа Экскурсия | + | * '''ExcursionService''' - дополнительные параметры для услуги типа '''Экскурсия''' |
** '''Excursion''' – услуга экскурсии | ** '''Excursion''' – услуга экскурсии | ||
*** '''CityID''' – идентификатор города | *** '''CityID''' – идентификатор города | ||
Строка 185: | Строка 185: | ||
** '''Duration''' – продолжительность | ** '''Duration''' – продолжительность | ||
** '''SeviceClassID''' – идентификатор класса услуги | ** '''SeviceClassID''' – идентификатор класса услуги | ||
+ | * '''ExtraService''' - дополнительные параметры для услуги типа '''Экстра сервис''' | ||
+ | ** '''CityKey''' – ключ города предоставления услуги | ||
+ | ** '''Code''' – идентификатор услуги | ||
+ | ** '''HasDuration''' – с продолжительностью или без услуга | ||
+ | ** '''ServiceClassID''' – идентификатор класса услуги | ||
+ | ** '''StartDate''' – дата начала предоставления услуги (в формате ''ГГГГ-ММ-ДДT00:00:00'') | ||
+ | ** '''IsPackage''' – признак пакетной услуги | ||
+ | * '''HotelService''' - дополнительные параметры для услуги типа '''Отель''' | ||
+ | ** '''Hotel''' – отель | ||
+ | ***'''ID''' – идентификатор отеля | ||
+ | *** '''Name''' – наименование отеля | ||
+ | *** '''Description''' – описание отеля | ||
+ | *** '''City''' – город | ||
+ | **** '''ID''' – идентификатор города | ||
+ | **** '''CountryID''' – идентификатор страны | ||
+ | **** '''RegionID''' – идентификатор региона | ||
+ | *** '''RegionID''' – идентификатор региона | ||
+ | *** '''PriceType''' – наличие цен ('''PerPerson''' = 0, '''PerRoom''' = 1, '''All''' = 2, '''None'''= 1000) | ||
+ | *** '''CountCosts''' – количество цен | ||
+ | *** '''CityID''' – идентификатор города | ||
+ | *** '''HotelCategoryID''' – идентификатор категории отеля | ||
+ | ** '''Room''' – комната | ||
+ | ** '''RoomType''' – тип комнаты | ||
+ | *** '''Places''' – количество мест в номере | ||
+ | *** '''ExPlaces''' – дополнительные места в номере | ||
+ | *** '''PrintOrder''' – порядковый номер для печати в отчетах | ||
+ | ** '''RoomTypeID''' – идентификатор типа комнаты | ||
+ | ** '''RoomCategoryID''' – идентификатор категории комнат | ||
+ | ** '''RoomAccomodation''' – размещение | ||
+ | *** '''PerRoom''' – за комнату/за человека | ||
+ | *** '''AdultMainPlaces''' – основных мест для взрослых | ||
+ | *** '''ChildMainPlaces''' – основных мест для детей | ||
+ | *** '''AdultExtraPlaces''' – дополнительных мест для взрослых | ||
+ | *** '''ChildExtraPlaces''' – дополнительных мест для детей | ||
+ | *** '''MainPlaces''' – общее количество основных мест | ||
+ | *** '''ExtraPlaces''' – общее количество дополнительных мест | ||
+ | *** '''AgeFrom''' – возраст первого ребенка '''от''' | ||
+ | *** '''AgeTo''' – возраст первого ребенка '''по''' | ||
+ | *** '''Age2From''' – возраст второго ребенка '''от''' | ||
+ | *** '''Age2To''' – возраст второго ребенка '''по''' | ||
+ | *** '''RoomAccomodationID''' – идентификатор типа размещения | ||
+ | *** '''ID''' – идентификатор комнаты | ||
+ | *** '''Name''' – наименование типа размещения | ||
+ | ** '''RoomID''' – идентификатор комнаты | ||
+ | ** '''PansionID''' – идентификатор типа питания | ||
+ | * '''TransferService''' - дополнительные параметры для услуги типа Трансфер | ||
+ | ** '''ID''' – ключ трансфера из таблицы ''TransferDirecion'', получаем методом ''GetTransfers'' | ||
+ | ** '''PlaceFrom''' – название точки ''Откуда'' | ||
+ | ** '''PlaceTo''' – название точки ''Куда'' |
Версия 15:11, 14 июля 2021
Версия статьи от 14-07-2021.
Поддерживаемые версии «»: |
Содержание
Введение
API InterlookIntegrationService работает по SOAP протоколу. Для вызова методов API можно использовать SoapUi.
Методы IntegrationService
Connect (получение аутентификационного токена)
Метод производит получение аутентификационного токена, необходимого для выполнения метода CreateReservation.
Принимаемые параметры запроса ( * – обязательный):
- Login * – логин online пользователя
- Password * – пароль online пользователя
Возвращаемый результат:
- ConnectResult – идентификатор аутентификации, если аутентификация прошла успешно, -1 в противном случае
Пример
Вызов метода Connect POST /IntegrationServiceCP/IntegrationService.asmx HTTP/1.1
Host: supp-08.megatec.ru
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://www.megatec.ru/Connect"
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<Connect xmlns="http://www.megatec.ru/">
<login>sm1</login>
<password>123</password>
</Connect>
</soap:Body>
</soap:Envelope>
Возвращаемый результат метода Connect HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ConnectResponse xmlns="http://www.megatec.ru/">
<ConnectResult>30b033a8-0d5b-4a2c-bcf0-2c671e4c6169</ConnectResult>
</ConnectResponse>
</soap:Body>
</soap:Envelope>
|
CreateReservation (бронирование путевки)
Метод производит бронирование путевки.
Принимаемые параметры запроса:
- Guid – идентификатор аутентификации (возвращается при запросе к методу Connect)
- HasInvoices – выставлен ли счет по путевке (true – выставлен, false – не выставлен)
- true – счет выставлен
- false – счет не выставлен
- Rate – валюта путевки:
- ID – идентификатор валюты
- Name – название валюты
- Code – код валюты
- Unicode – код ISO для валюты
- IsMain – является ли валюта главной (true – является, false – не является)
- IsNational – является ли валюта национальной (true – является, false – не является)
- ID – идентификатор путевки (если указано -1 – создается новая путевка, если ID путевки из базы данных – перебронирование указанной)
- Netto – нетто цена путевки
- 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 – продолжительность
- CreateDate – дата создания путевки (в формате ГГГГ-ММ-ДДT00:00:00)
- CreatorID – идентификатор создателя путевки
- OwnerID – идентификатор создателя путевки
- ExternalID – идентификатор путевки из системы создающей бронь
- AdditionalParams – дополнительные параметры (представляются в виде пары ключ – значение)
- Services - услуги по путевке (определенного типа, в зависимости от типа услуги)
- Tourists – массив туристов по услуге
- Tourist – турист
- Name – имя
- Sex – пол (ключ = значения: Male = 0, Female = 1, Child = 2, Infant = 3)
- BirthDate – дата рождения туриста (в формате ГГГГ-ММ-ДДT00:00:00)
- FirstNameLat – имя туриста латиницей
- LastNameLat – фамилия туриста латиницей
- SurNameLat – отчество туриста латиницей
- AgeType – тип возраста (Adult = 0, Child = 1, Infant = 2)
- Citizen – гражданство
- IsMain – устанавливает признак главного туриста по путевке (Null, 0 – нет, 1 – турист главный)
- ExternalID – идентификатор путевки из системы создающей бронь
- ID – идентификатор туриста (-1 для новой путевки )
- Phone – телефон туриста (задается по шаблону)
- Email – адрес электронной почты туриста
- LocalPassport – гражданский паспорт
- ForeignPassport – иностранный паспорт
- Tourist – турист
- TouristServices – массив услуг, используемых туристами
- TouristService – отдельная услуга, используемая туристом
- ID – идентификатор услуги используемой туристом
- TouristID – идентификатор туриста (-1 для новой путевки)
- ServiceID – идентификатор услуги (-1 для новой путевки)
- TouristService – отдельная услуга, используемая туристом
- Services – массив услуг по путевке (определенного типа, в зависимости от типа услуги, например: ExcursionService, ExtraService, HotelService, TransferService)
- Service – общие параметры, имеющиеся у всех услуг по путевке
- ExternalID – идентификатор путевки из системы создающей бронь
- Price – цена брутто
- NMen – количество взрослых туристов
- PartnerID – идентификатор поставщика услуги(можно передать 0 – тогда он подберется автоматически расчетчиком)
- Quota – услуга на квоте (ключ = значение: None = 0, Yes = 1, No = 2, AFew = 3, Request = 4, NoFlight = 5, OnlyAgent = 6, All = 7, NotChecked = 10)
- PacketKey – идентификатор пакета услуги
- Name – наименование услуги (пример для услуги отель: HTL::Delphi/Acropol Hotel/Double Room/2AD/100 m2/BB)
- StartDate – дата предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
- EndDate – дата окончания услуги (в формате ГГГГ-ММ-ДДT00:00:00)
- StartDay – день предоставления услуги
- Duration – продолжительность услуги
- RateBrutto – валюта брутто
- Brutto – цена брутто
- RateNetto – валюта нетто
- Netto – цена нетто
- ServiceClassID – идентификатор класса услуги
- TouristCount – количество туристов, пользующихся услугой
- ID – идентификатор услуги (-1 для новой путевки )
- Notes – примечания к услуге
- Country – код страны
- City – код города
- Tourists – массив туристов по услуге
- Tourist – турист, массив данных о туристе
- Name – имя туриста
- Sex – пол (ключ = значения: Male = 0, Female = 1, Child = 2, Infant = 3)
- BirthDate – дата рождения туриста (в формате ГГГГ-ММ-ДДT00:00:00)
- FirstNameLat – имя туриста латиницей
- LastNameLat – фамилия туриста латиницей
- SurNameLat – отчество туриста латиницей
- AgeType – тип возраста (ключ = значение: Adult = 0, Child = 1, Infant = 2)
- Citizen – гражданство
- IsMain – устанавливает признак главного туриста по путевке (Null, 0 – нет, 1 – турист главный)
- ExternalID – идентификатор путевки из системы, создающей бронь
- ID – идентификатор туриста (-1 для новой путевки)
- Phone – телефон туриста (задается по шаблону)
- Email – адрес электронной почты туриста
- LocalPassport – гражданский паспорт
- ForeignPassport – иностранный паспорт
- AdditionalParams – массив дополнительных параметров (представляются в виде пары ключ = значение)
Пример
<AdditionalParams> – массив дополнительных параметров
<ParameterPair Key="ContractPrKey"> - первая пара параметров, ключ ContractPrKey – ключ сервис-провайдера
<Value xsi:type="xsd:int">1035</Value> – значение
</ParameterPair>
<ParameterPair Key="CityID"> - вторая пара параметров, ключ CityID – ключ города
<Value xsi:type="xsd:int">52</Value> – значение
</ParameterPair>
<ParameterPair Key="isSuccess"> третья пара параметров, Ключ – isSucсess
<Value xsi:type="xsd:boolean">true</Value> - значение
</ParameterPair>
</AdditionalParams>
|
- ExcursionService - дополнительные параметры для услуги типа Экскурсия
- Excursion – услуга экскурсии
- CityID – идентификатор города
- RegionID – идентификатор региона
- Name – название экскурсии
- Transport – тип транспорта
- ExcursionID – идентификатор экскурсии
- StarDate – дата предоставления экскурсии (в формате ГГГГ-ММ-ДДT00:00:00)
- Duration – продолжительность
- SeviceClassID – идентификатор класса услуги
- Excursion – услуга экскурсии
- ExtraService - дополнительные параметры для услуги типа Экстра сервис
- CityKey – ключ города предоставления услуги
- Code – идентификатор услуги
- HasDuration – с продолжительностью или без услуга
- ServiceClassID – идентификатор класса услуги
- StartDate – дата начала предоставления услуги (в формате ГГГГ-ММ-ДДT00:00:00)
- IsPackage – признак пакетной услуги
- HotelService - дополнительные параметры для услуги типа Отель
- Hotel – отель
- ID – идентификатор отеля
- Name – наименование отеля
- Description – описание отеля
- City – город
- ID – идентификатор города
- CountryID – идентификатор страны
- RegionID – идентификатор региона
- RegionID – идентификатор региона
- PriceType – наличие цен (PerPerson = 0, PerRoom = 1, All = 2, None= 1000)
- CountCosts – количество цен
- CityID – идентификатор города
- HotelCategoryID – идентификатор категории отеля
- Room – комната
- RoomType – тип комнаты
- Places – количество мест в номере
- ExPlaces – дополнительные места в номере
- PrintOrder – порядковый номер для печати в отчетах
- RoomTypeID – идентификатор типа комнаты
- RoomCategoryID – идентификатор категории комнат
- RoomAccomodation – размещение
- PerRoom – за комнату/за человека
- AdultMainPlaces – основных мест для взрослых
- ChildMainPlaces – основных мест для детей
- AdultExtraPlaces – дополнительных мест для взрослых
- ChildExtraPlaces – дополнительных мест для детей
- MainPlaces – общее количество основных мест
- ExtraPlaces – общее количество дополнительных мест
- AgeFrom – возраст первого ребенка от
- AgeTo – возраст первого ребенка по
- Age2From – возраст второго ребенка от
- Age2To – возраст второго ребенка по
- RoomAccomodationID – идентификатор типа размещения
- ID – идентификатор комнаты
- Name – наименование типа размещения
- RoomID – идентификатор комнаты
- PansionID – идентификатор типа питания
- Hotel – отель
- TransferService - дополнительные параметры для услуги типа Трансфер
- ID – ключ трансфера из таблицы TransferDirecion, получаем методом GetTransfers
- PlaceFrom – название точки Откуда
- PlaceTo – название точки Куда