Master-Interlook:HotelService
Версия статьи от 14-11-2022.
Доступно начиная с релиза 11.20 |
Содержание
Введение
Сервис InterlookHotelService предназначен для работы с отелями. Работает с методами REST API. Для вызова методов REST API можно использовать SoapUi.
Для доступа к сервису у онлайн пользователя должен быть установлен признак Hotel/Service в настройке Person connection и в настройках Role активирован параметр Show hotel reservations by date.
Методы HotelService
Методы аутентификации
Connect (Получение аутентификационного токена)
Принимаемые параметры запроса ( * – обязательный):
- Login * – логин online пользователя
- Password * – пароль online пользователя
Возвращаемый результат:
- ConnectResult – идентификатор аутентификации (если аутентификация прошла успешно. то получаем идентификатор, в противном случае результат -1)
Вызов метода Connect <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
<tem:Connect>
<!--Optional:-->
<tem:login>mk1</tem:login>
<!--Optional:-->
<tem:password>123</tem:password>
</tem:Connect>
</soapenv:Body>
</soapenv:Envelope>
Возвращаемый результат метода Connect <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<ConnectResponse xmlns="http://tempuri.org/">
<ConnectResult>123c02db-3d47-4db5-861b-758be524a5fe</ConnectResult>
</ConnectResponse>
</soap:Body>
</soap:Envelope>
|
CheckConnect (Проверка активности подключения под конкретным идентификатором)
Метод проверяет наличие активного подключения под конкретным идентификатором аутентификации.
Принимаемые параметры запроса ( * – обязательный):
- Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
Возвращаемый результат:
- CheckConnectResult – идентификатор аутентификации (true – если подключение активно, false – если подключения нет)
Вызов метода CheckConnect <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:tem="http://tempuri.org/">
<soap:Header/>
<soap:Body>
<tem:CheckConnect>
<!--Optional:-->
<tem:guid>123c02db-3d47-4db5-861b-758be524a5fe</tem:guid>
</tem:CheckConnect>
</soap:Body>
</soap:Envelope>
Возвращаемый результат метода CheckConnect <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<CheckConnectResponse xmlns="http://tempuri.org/">
<CheckConnectResult>true</CheckConnectResult>
</CheckConnectResponse>
</soap:Body>
</soap:Envelope>
|
Методы поиска
SearchBookings (Получение списка забронированных заявок)
Метод предназначен для поиска забронированных заявок. Отбираются те заявки, у которых партнер предоставления услуги совпадает с партнером для логина, под которым осуществляется поиск.
Принимаемые параметры запроса ( * – обязательный):
- Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
- hotelID – массив данных с ключами отелей. Можно передавать как один так и несколько ключей отелей. Если не передаём данный параметр, то в ответ получаем все заказы, подходящие под выбранные даты.
- dateInfo * – по какой дате осуществлять поиск (1 - дата создания заявки, 2 - дата заезда в отель, 3 - дата выезда из отеля)
- dateFrom * – дата начала
- dateTo * – дата окончания
- checkInFrom – дата заезда от
- checkInTo – дата заезда по
- New – возвращает новые бронирования с датой, попадающей в указанное выше условие
- change – возвращает измененные бронирования с изменениями, внесенными в выбранный период
- cancel – возвращает информацию об отмененных бронированиях за выбранный период
- inwork – возвращает информацию по заявкам взятым отелем в работу.
Заявка получает статус InWork в следующих случаях:
- если через HotelService в методе ManageBooking по заявке передан параметр <hotelWorkStatus>true</hotelWorkStatus>
- если по заявке распечатано или отправлено какое-либо из уведомлений по кнопке Actions в окне Interlook.
- showConfirmed - отображает путевки со статусом Confirmed (false или отсутствие настройки означает, что путевки со статусом Confirmed не отображаются)
Возвращаемый результат:
- BookingInfo – массив данных брони
- Booking – номер брони в системе Interlook
- BookingID – ключ заявки из базы данных
- Action – новая, отмененная или измененная заявка
- CreationDate – дата создания услуги в заявке
- ChangeDate – не используется
- CancelDate – не используется
- CustomerMarket – данные туроператора, оформившего заявку
- CustomerMarketId – ключ туроператора, оформившего заявку
- CustomerMarketName – имя туроператора, оформившего заявку
- HotelServices – массив данных по сервисам отелей
- HotelServiceInfo – информация по сервису отеля
- HotelServiceId – ключ сервиса отеля
- HotelServiceName – имя сервиса отеля
- Hotel – массив данных по отелям
- HotelId – ключ отеля
- HotelName – имя отеля
- Pansion – тип питания
- PansionId – ключ питания
- PansionName – имя питания
- RoomType – тип номера
- RoomTypeId – ключ типа номера
- RoomTypeName – имя типа номера
- RoomAccomodation – тип размещения
- AccommodationId – ключ типа размещения
- AccommodationName – имя типа размещения
- RoomCategory – категория номер
- RoomCategoryId – ключ категории номера
- RoomCategoryName – имя категории номера
- Status – статус по услуге проживания
- StatusId – ключ статуса по услуге проживания
- StatusName – имя статуса по услуге проживания
- CheckIn – дата заезда в отель
- CheckOut – дата выезда из отеля
- Tourists – массив данных туристов
- TouristInfo – массив данных по туристу
- Name – имя туриста
- BirthDate – дата рождения туриста
- Sex – пол туриста
- HotelServiceId – ключ услуги проживания с которой связан турист
- TouristInfo – массив данных по туристу
- CostOffers – массив данных по CostOffers, по которым рассчитана цена услуги
- CostOfferInfo – массив данных по конкретному CostOffer
- CostOfferName – название CostOffer (Если заявка не аннулирована, то выводим название CostOffer по цене netto. Если заявка аннулирована со штрафами, то выводим название CostOffer по цене брутто. Если заявка аннулирована без штрафов, то выводим текст "Canceled without penalty")
- CostOfferDateBegin – дата начала действия CostOffer
- CostOfferDateEnd – дата окончания действия CostOffer
- CostOfferDuration – продолжительность проживания до данному CostOffer
- CostOfferInfo – массив данных по конкретному CostOffer
- Penalty – информация о штрафах по аннулированной заявке
- FlightInfo – секция информации об авиаперелете
- Tourist – Фамилия и имя туриста
- Charters – секция авиаперелета
- CharterInfo – секция информации об авиаперелете
- Type – тип авиаперелета (Arrival или Departure)
- Date – дата заезда/выезда из отеля
- Details – наименование авиаперелета (номер рейса - время прилета/вылета)
- CharterInfo – секция информации об авиаперелете
- HotelServiceInfo – информация по сервису отеля
- MessageInfo – массив данных сообщений
- Id – идентификатор сообщения
- IsOutgoing – исходящее (true - исходящее, false - входящее)
- DateCreate – дата создания сообщения
- IsRead – прочитано (true - прочитано, false - не прочитано )
- Text – текст сообщения
- BookingInfo – массив данных брони
Вызов метода SearchBookings <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
<tem:SearchBookings>
<!--Optional:-->
<tem:guid>fd57bdcb-35e0-41b1-9743-eba763211e49</tem:guid>
<!--Optional:-->
<tem:hotelID>
<!--Zero or more repetitions:-->
<tem:int>2930</tem:int>
</tem:hotelID>
<tem:dateInfo>1</tem:dateInfo>
<tem:dateFrom>2022-08-19</tem:dateFrom>
<tem:dateTo>2022-08-30</tem:dateTo>
<tem:New>1</tem:New>
<tem:change>1</tem:change>
<tem:cancel>1</tem:cancel>
<tem:inwork>1</tem:inwork>
</tem:SearchBookings>
</soapenv:Body>
</soapenv:Envelope>
Возвращаемый результат метода SearchBookings <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<SearchBookingsResponse xmlns="http://tempuri.org/">
<SearchBookingsResult>
<BookingInfo>
<Booking>MT140101AAL</Booking>
<BookingID>37608</BookingID>
<Action>Changed</Action>
<CreationDate>2022-08-25T14:37:12.25</CreationDate>
<ChangeDate xsi:nil="true"/>
<CancelDate xsi:nil="true"/>
<CustomerMarket>
<CustomerMarketId>2</CustomerMarketId>
<CustomerMarketName>Russian Market</CustomerMarketName>
</CustomerMarket>
<HotelServices>
<HotelServiceInfo>
<HotelServiceId>171495</HotelServiceId>
<HotelServiceName>HTL::Kiev/Red/Double Room/2AD/Jakuzzi/BB</HotelServiceName>
<Hotel>
<HotelId>2930</HotelId>
<HotelName>Red</HotelName>
</Hotel>
<Pansion>
<PansionId>3</PansionId>
<PansionName>Bed and Breakfast</PansionName>
</Pansion>
<RoomType>
<RoomTypeId>3</RoomTypeId>
<RoomTypeName>Double Room</RoomTypeName>
</RoomType>
<RoomAccomodation>
<AccommodationId>5558</AccommodationId>
<AccommodationName>2AD</AccommodationName>
</RoomAccomodation>
<RoomCategory>
<RoomCategoryId>20</RoomCategoryId>
<RoomCategoryName>Jakuzzi</RoomCategoryName>
</RoomCategory>
<Status>
<StatusId>1</StatusId>
<StatusName>Wait</StatusName>
</Status>
<CheckIn>2022-08-20T00:00:00</CheckIn>
<CheckOut>2022-08-27T00:00:00</CheckOut>
<Tourists>
<TouristInfo>
<Name>Vladimirov Alex</Name>
<BirthDate>1979-08-10T00:00:00</BirthDate>
<Sex>MR</Sex>
<HotelServiceId>171495</HotelServiceId>
</TouristInfo>
<TouristInfo>
<Name>Vladimirovicha Alexa</Name>
<BirthDate>1972-08-11T00:00:00</BirthDate>
<Sex>MR</Sex>
<HotelServiceId>171495</HotelServiceId>
</TouristInfo>
</Tourists>
<CostOffers>
<CostOfferInfo>
<CostOfferName>kolesnyk2/kolesnyk2</CostOfferName>
<CostOfferDateBegin>2022-08-20T00:00:00</CostOfferDateBegin>
<CostOfferDateEnd>2022-08-27T00:00:00</CostOfferDateEnd>
<CostOfferDuration>7</CostOfferDuration>
</CostOfferInfo>
</CostOffers>
<Penalty/>
</HotelServiceInfo>
</HotelServices>
<Flights>
<FlightInfo>
<Tourist>Vladimirov Alex</Tourist>
<Charters>
<CharterInfo>
<Type>Arrival</Type>
<Date>2022-08-20T00:00:00</Date>
<Details>A123-A124 (A123 - 16:00)</Details>
</CharterInfo>
<CharterInfo>
<Type>Departure</Type>
<Date>2022-08-27T00:00:00</Date>
<Details>A123-A124 (A124 - 15:00)</Details>
</CharterInfo>
</Charters>
</FlightInfo>
<FlightInfo>
<Tourist>Vladimirovicha Alexa</Tourist>
<Charters>
<CharterInfo>
<Type>Arrival</Type>
<Date>2022-08-20T00:00:00</Date>
<Details>A123-A124 (A123 - 16:00)</Details>
</CharterInfo>
<CharterInfo>
<Type>Departure</Type>
<Date>2022-08-27T00:00:00</Date>
<Details>A123-A124 (A124 - 15:00)</Details>
</CharterInfo>
</Charters>
</FlightInfo>
</Flights>
<Messages/>
</BookingInfo>
</SearchBookingsResult>
</SearchBookingsResponse>
</soap:Body>
</soap:Envelope>
|
SearchBookingsJSON (Получение списка забронированных заявок в формате JSON)
Метод предназначен для поиска забронированных заявок. Отбираются те заявки, у которых партнер предоставления услуги совпадает с партнером для логина, под которым осуществляется поиск.
Принимаемые параметры запроса ( * – обязательный):
- Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
- hotelID – массив данных с ключами отелей. Можно передавать как один так и несколько ключей отелей. Если не передаём данный параметр, то в ответ получаем все заказы, подходящие под выбранные даты.
- dateInfo * – по какой дате осуществлять поиск (1 - дата создания заявки, 2 - дата заезда в отель, 3 - дата выезда из отеля)
- dateFrom * – дата начала
- dateTo * – дата окончания
- checkInFrom – дата заезда от
- checkInTo – дата заезда по
- New – возвращает новые бронирования с датой, попадающей в указанное выше условие
- change – возвращает измененные бронирования с изменениями, внесенными в выбранный период
- cancel – возвращает информацию об отмененных бронированиях за выбранный период
- inwork – возвращает информацию по заявкам взятым отелем в работу
Заявка получает статус InWork в следующих случаях:
- если через HotelService в методе ManageBooking по заявке передан параметр <hotelWorkStatus>true</hotelWorkStatus>
- если по заявке распечатано или отправлено какое-либо из уведомлений по кнопке Actions в окне Interlook.
- showConfirmed - отображает путевки со статусом Confirmed (false или отсутствие настройки означает, что путевки со статусом Confirmed не отображаются)
Возвращаемый результат:
- Booking – номер брони в системе Interlook
- BookingID – ключ заявки из базы данных
- Action – новая, отмененная или измененная заявка
- CreationDate – дата создания услуги в заявке
- ChangeDate – не используется
- CancelDate – не используется
- CustomerMarket – данные туроператора, оформившего заявку
- CustomerMarketId – ключ туроператора, оформившего заявку
- CustomerMarketName – имя туроператора, оформившего заявку
- HotelServices – массив данных по сервисам отелей
- CheckIn – дата заезда в отель
- CheckOut – дата выезда из отеля
- Tourists – массив данных туристов
- Name – имя туриста
- BirthDate – дата рождения туриста
- Sex – пол туриста
- HotelServiceId – ключ услуги проживания с которой связан турист
- Notes – не указывается
- HotelServiceId – ключ сервиса отеля
- HotelServiceName – имя сервиса отеля
- Hotel – массив данных по отелям
- HotelId – ключ отеля
- HotelName – имя отеля
- Pansion – тип питания
- PansionId – ключ питания
- PansionName – имя питания
- RoomType – тип номера
- RoomTypeId – ключ типа номера
- RoomTypeName – имя типа номера
- RoomAccomodation – тип размещения
- AccommodationId – ключ типа размещения
- AccommodationName – имя типа размещения
- RoomCategory – категория номер
- RoomCategoryId – ключ категории номера
- RoomCategoryName – имя категории номера
- Status – статус по услуге проживания
- StatusId – ключ статуса по услуге проживания
- StatusName – имя статуса по услуге проживания
- CheckIn – дата заезда в отель
- CheckOut – дата выезда из отеля
- Tourists – массив данных туристов
- TouristInfo – массив данных по туристу
- Name – имя туриста
- BirthDate – дата рождения туриста
- Sex – пол туриста
- HotelServiceId – ключ услуги проживания с которой связан турист
- TouristInfo – массив данных по туристу
- CostOffers – массив данных по CostOffers, по которым рассчитана цена услуги
- CostOfferInfo – массив данных по конкретному CostOffer
- CostOfferName – название CostOffer (Если заявка не аннулирована, то выводим название CostOffer по цене netto. Если заявка аннулирована со штрафами, то выводим название CostOffer по цене брутто. Если заявка аннулирована без штрафов, то выводим текст "Canceled without penalty")
- CostOfferDateBegin – дата начала действия CostOffer
- CostOfferDateEnd – дата окончания действия CostOffer
- CostOfferDuration – продолжительность проживания до данному CostOffer
- CostOfferInfo – массив данных по конкретному CostOffer
- Penalty – информация о штрафах по аннулированной заявке
- FlightInfo – секция информации об авиаперелете
- Tourist – Фамилия и имя туриста
- Charters – секция авиаперелета
- CharterInfo – секция информации об авиаперелете
- Type – тип авиаперелета (Arrival или Departure)
- Date – дата заезда/выезда из отеля
- Details – наименование авиаперелета (номер рейса - время прилета/вылета)
- CharterInfo – секция информации об авиаперелете
- MessageInfo – массив данных сообщений
- Id – идентификатор сообщения
- IsOutgoing – исходящее (true - исходящее, false - входящее)
- DateCreate – дата создания сообщения
- IsRead – прочитано (true - прочитано, false - не прочитано )
- Text – текст сообщения
Вызов метода SearchBookingsJSON <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
<tem:SearchBookingsJSON>
<!--Optional:-->
<tem:guid>fd57bdcb-35e0-41b1-9743-eba763211e49</tem:guid>
<!--Optional:-->
<tem:hotelID>
<!--Zero or more repetitions:-->
<tem:int>2930</tem:int>
</tem:hotelID>
<tem:dateInfo>1</tem:dateInfo>
<tem:dateFrom>2022-08-20</tem:dateFrom>
<tem:dateTo>2022-08-28</tem:dateTo>
<tem:New>1</tem:New>
<tem:change>1</tem:change>
<tem:cancel>1</tem:cancel>
<tem:inwork>1</tem:inwork>
</tem:SearchBookingsJSON>
</soapenv:Body>
</soapenv:Envelope>
Возвращаемый результат метода SearchBookingsJSON <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<SearchBookingsJSONResponse xmlns="http://tempuri.org/">
<SearchBookingsJSONResult>[{"Booking":"MT140101AAH","BookingID":37601,"Action":"New","CreationDate":
"2022-08-23T11:36:30.907","ChangeDate":null,"CancelDate":null,"CustomerMarket":{"CustomerMarketId":2,
"CustomerMarketName":"Russian Market"},"HotelServices":[{"CheckIn":"2022-08-20T00:00:00","CheckOut"
"2022-08-27T00:00:00","Tourists":[{"Name":"Vladimirov Alex","BirthDate":"1979-08-10T00:00:00","Sex":
"MR","HotelServiceId":171448},{"Name":"Vladimirovicha Alexa","BirthDate":"1972-08-11T00:00:00","Sex":
"MR","HotelServiceId":171448}],"CostOffers":[{"CostOfferName":"kolesnyk2/kolesnyk2","CostOfferDateBegin"
:"2022-08-20T00:00:00","CostOfferDateEnd":"2022-08-27T00:00:00","CostOfferDuration":7}],"Penalty":"",
"Notes":null,"HotelServiceId":171448,"HotelServiceName":"HTL::Kiev/Red/Double Room/2AD/Jakuzzi/BB",
"Hotel":{"HotelId":2930,"HotelName":"Red"},"Pansion":{"PansionId":3,"PansionName":"Bed and Breakfast"}
,"RoomType":{"RoomTypeId":3,"RoomTypeName":"Double Room"},"RoomAccomodation":{"AccommodationId":5558,
"AccommodationName":"2AD"},"RoomCategory":{"RoomCategoryId":20,"RoomCategoryName":"Jakuzzi"},"Status"
:{"StatusId":1,"StatusName":"Wait"}}],"Flights":[],"Messages":[]},{"Booking":"MT140101AAJ","BookingID"
:37602,"Action":"New","CreationDate":"2022-08-23T11:37:05.227","ChangeDate":null,"CancelDate":null,
"CustomerMarket":{"CustomerMarketId":2,"CustomerMarketName":"Russian Market"},"HotelServices":
[{"CheckIn":"2022-08-20T00:00:00","CheckOut":"2022-08-27T00:00:00","Tourists":[{"Name":"Vladimirov Alex",
"BirthDate":"1979-08-10T00:00:00","Sex":"MR","HotelServiceId":171454},{"Name":"Vladimirovicha Alexa"
,"BirthDate":"1972-08-11T00:00:00","Sex":"MR","HotelServiceId":171454}],"CostOffers":[{"CostOfferName"
:"kolesnyk2/kolesnyk2","CostOfferDateBegin":"2022-08-20T00:00:00","CostOfferDateEnd":"2022-08-27T00:00
:00","CostOfferDuration":7}],"Penalty":"","Notes":null,"HotelServiceId":171454,"HotelServiceName":
"HTL::Kiev/Red/Double Room/2AD/Jakuzzi/BB","Hotel":{"HotelId":2930,"HotelName":"Red"},"Pansion":
{"PansionId":3,"PansionName":"Bed and Breakfast"},"RoomType":{"RoomTypeId":3,"RoomTypeName":"Double Room"}
,"RoomAccomodation":{"AccommodationId":5558,"AccommodationName":"2AD"},"RoomCategory":{"RoomCategoryId":
20,"RoomCategoryName":"Jakuzzi"},"Status":{"StatusId":1,"StatusName":"Wait"}}],"Flights":[],"Messages":
[]},{"Booking":"MT140101AAK","BookingID":37607,"Action":"Changed","CreationDate":"2022-08-25T14:35:38.033",
"ChangeDate":null,"CancelDate":null,"CustomerMarket":{"CustomerMarketId":2,"CustomerMarketName"
:"Russian Market"},"HotelServices":[{"CheckIn":"2022-08-20T00:00:00","CheckOut":"2022-08-27T00:00:00"
,"Tourists":[{"Name":"Vladimirov Alex","BirthDate":"1979-08-10T00:00:00","Sex":"MR","HotelServiceId"
:171489},{"Name":"Vladimirovicha Alexa","BirthDate":"1972-08-11T00:00:00","Sex":"MR","HotelServiceId"
:171489}],"CostOffers":[{"CostOfferName":"kolesnyk2/kolesnyk2","CostOfferDateBegin":"2022-08-20T00:00:00"
,"CostOfferDateEnd":"2022-08-27T00:00:00","CostOfferDuration":7}],"Penalty":"","Notes":null,
"HotelServiceId":171489,"HotelServiceName":"HTL::Kiev/Red/Double Room/2AD/Jakuzzi/BB","Hotel"
:{"HotelId":2930,"HotelName":"Red"},"Pansion":{"PansionId":3,"PansionName":"Bed and Breakfast"}
,"RoomType":{"RoomTypeId":3,"RoomTypeName":"Double Room"},"RoomAccomodation":{"AccommodationId"
:5558,"AccommodationName":"2AD"},"RoomCategory":{"RoomCategoryId":20,"RoomCategoryName":"Jakuzzi"}
,"Status":{"StatusId":1,"StatusName":"Wait"}}],"Flights":[{"Tourist":"Vladimirov Alex","Charters"
:[{"Type":"Arrival","Date":"2022-08-20T00:00:00","Details":"A123-A124 (A123 - 16:00)"},{"Type"
:"Departure","Date":"2022-08-27T00:00:00","Details":"A123-A124 (A124 - 15:00)"}]},{"Tourist":
"Vladimirovicha Alexa","Charters":[{"Type":"Arrival","Date":"2022-08-20T00:00:00","Details":
"A123-A124 (A123 - 16:00)"},{"Type":"Departure","Date":"2022-08-27T00:00:00","Details":
"A123-A124 (A124 - 15:00)"}]}],"Messages":[]}]</SearchBookingsJSONResult>
</SearchBookingsJSONResponse>
</soap:Body>
</soap:Envelope>
|
GetMarkets (Получение списка рынков)
Метод предназначен для отображения всех существующих рынков.
Принимаемые параметры запроса ( * – обязательный):
Отсутствуют.
Возвращаемый результат:
- GetMarketsResult – массив данных рынков
- Name – наименование рынка
- Id – идентификатор рынка
Вызов метода GetMarkets <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
<tem:GetMarkets/>
</soapenv:Body>
</soapenv:Envelope>
Возвращаемый результат метода GetMarkets <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<GetMarketsResponse xmlns="http://tempuri.org/">
<GetMarketsResult>
<MarketInfo Name="!test" Id="61"/>
<MarketInfo Name="<All>" Id="0"/>
<MarketInfo Name="1111" Id="33"/>
<MarketInfo Name="1112" Id="34"/>
<MarketInfo Name="12" Id="32"/>
<MarketInfo Name="12" Id="40"/>
<MarketInfo Name="1t1" Id="44"/>
<MarketInfo Name="1t2" Id="45"/>
<MarketInfo Name="1t3" Id="46"/>
<MarketInfo Name="1t4" Id="47"/>
<MarketInfo Name="1t5" Id="48"/>
<MarketInfo Name="1t6" Id="49"/>
<MarketInfo Name="21" Id="36"/>
<MarketInfo Name="234" Id="37"/>
<MarketInfo Name="313" Id="38"/>
<MarketInfo Name="34" Id="35"/>
<MarketInfo Name="34" Id="41"/>
<MarketInfo Name="4" Id="51"/>
<MarketInfo Name="434" Id="39"/>
<MarketInfo Name="45" Id="42"/>
<MarketInfo Name="456" Id="43"/>
<MarketInfo Name="Balkan Market" Id="5"/>
<MarketInfo Name="France Market" Id="8"/>
<MarketInfo Name="Greek Market" Id="3"/>
<MarketInfo Name="Italy Market" Id="9"/>
<MarketInfo Name="market12^*#$)_22_ 09" Id="22"/>
<MarketInfo Name="market1FAD" Id="11"/>
<MarketInfo Name="market2083" Id="13"/>
<MarketInfo Name="market25C5" Id="16"/>
<MarketInfo Name="market8085" Id="14"/>
<MarketInfo Name="market9873" Id="10"/>
<MarketInfo Name="marketA5F9" Id="18"/>
<MarketInfo Name="marketD84E" Id="15"/>
<MarketInfo Name="marketF3A6" Id="19"/>
<MarketInfo Name="marketF415" Id="21"/>
<MarketInfo Name="marketFCFE" Id="20"/>
<MarketInfo Name="marketFFDC" Id="12"/>
<MarketInfo Name="mk" Id="31"/>
<MarketInfo Name="mk_market" Id="30"/>
<MarketInfo Name="Old" Id="6"/>
<MarketInfo Name="qwer" Id="50"/>
<MarketInfo Name="Russian Market" Id="2"/>
<MarketInfo Name="test new" Id="56"/>
<MarketInfo Name="test1211" Id="53"/>
<MarketInfo Name="Мой личный рынок" Id="25"/>
<MarketInfo Name="ук" Id="55"/>
</GetMarketsResult>
</GetMarketsResponse>
</soap:Body>
</soap:Envelope>
|
Методы передачи изменений по услугам
ManageBooking (Передача изменений по услуге проживания в Interlook)
Принимаемые параметры запроса ( * – обязательный):
- guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
- hotelServiceId * – ключ услуги проживания (возвращается при запросе к методу SearchBookings)
- status – фильтр для отбора услуг с определенным статусом (1 - Wait, 2 - Confirmed, 3 - notConfirmed)
- message – сообщение для пользователя Interlook
- hotelWorkStatus – отметка отеля по заявке (true - отель взял заявку в работу, false - отель заявку в работу не взял). При отправке этого параметра формируется запись в историю по заявке и сообщение от провайдера.
- ManageBookingResult – массив данных
- HotelServiceId – ключ сервиса отеля
- HotelServiceName – имя сервиса отеля
- Hotel – массив данных по отелям
- HotelId – ключ отеля
- HotelName – имя отеля
- Pansion – тип питания
- PansionId – ключ питания
- PansionName – имя питания
- RoomType – тип номера
- RoomTypeId – ключ типа номера
- RoomTypeName – имя типа номера
- RoomAccomodation – тип размещения
- AccommodationId – ключ типа размещения
- AccommodationName – имя типа размещения
- RoomCategory – категория номер
- RoomCategoryId – ключ категории номера
- RoomCategoryName – имя категории номера
- Status – статус по услуге проживания
- StatusId – ключ статуса по услуге проживания
- StatusName – имя статуса по услуге проживания
- Hotel – массив данных по отелям
Вызов метода ManageBooking <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
<tem:ManageBooking>
<!--Optional:-->
<tem:guid>69ad76b6-3551-403d-934e-18d8358a60e2</tem:guid>
<tem:hotelServiceId>163806</tem:hotelServiceId>
<tem:status>1</tem:status>
<!--Optional:-->
<tem:message>яварааааааааарвя</tem:message>
<tem:hotelWorkStatus>false</tem:hotelWorkStatus>
</tem:ManageBooking>
</soapenv:Body>
</soapenv:Envelope>
Возвращаемый результат метода ManageBooking <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<ManageBookingResponse xmlns="http://tempuri.org/">
<ManageBookingResult Message="Ok">
<Data>
<ManageBookingResult>
<HotelServiceId>163806</HotelServiceId>
<HotelServiceName>HTL::Kiev/Hilton/Double Room/2AD/Jakuzzi/BB</HotelServiceName>
<Hotel>
<HotelId>2935</HotelId>
<HotelName>Hilton</HotelName>
</Hotel>
<Pansion>
<PansionId>3</PansionId>
<PansionName>Bed and Breakfast</PansionName>
</Pansion>
<RoomType>
<RoomTypeId>3</RoomTypeId>
<RoomTypeName>Double Room</RoomTypeName>
</RoomType>
<RoomAccomodation>
<AccommodationId>5558</AccommodationId>
<AccommodationName>2AD</AccommodationName>
</RoomAccomodation>
<RoomCategory>
<RoomCategoryId>20</RoomCategoryId>
<RoomCategoryName>Jakuzzi</RoomCategoryName>
</RoomCategory>
<Status>
<StatusId>1</StatusId>
<StatusName>Wait</StatusName>
</Status>
</ManageBookingResult>
</Data>
</ManageBookingResult>
</ManageBookingResponse>
</soap:Body>
</soap:Envelope>
|
Методы создания цен
CreateCostOffer (Создание ценового предложения)
Метод предназначен для занесения цен на объекты размещения.
Принимаемые параметры запроса ( * – обязательный):
- Guid * – идентификатор аутентификации (возвращается при запросе к методу Connect)
- costOffer – массив данных CostOffer
- HotelId * – ключ отеля
- RateId * – ключ валюты
- CostOfferTypeId – ключ типа CostOffer (Ordinary или SPO. Если не указан, то отправляется Ordinary. Если в запросе имеется и заполнена секция Rules, то CostOffer автоматически определяется с типом SPO)
- MarketIds – ключ рынка (если не указан, то отправляется 0 - все. Возвращается при запросе к методу GetMarkets)
- SaleDateBegin – дата с которой возможно бронирование (если не указана, то берется в соответствии с текущей)
- SaleDateEnd – дата до которой возможно бронирование
- NameFromProvider – наименование для провайдера (если не указан, то записывается пустое)
- PeriodBeforeCheckIn – период до заезда (если не указан, то отправляется 0)
- Comment – комментарий
- MinDays – минимальная продолжительность (если не задано, то устанавливается 1)
- MaxDays – максимальная продолжительность (если не задано, то устанавливается 365)
- prices – массив данных цен
- PriceRequest – массив данных цены
- DateFrom * – дата начала (если не указана, то берется текущая)
- DateTo * – дата окончания (если не указана, то берется из списка цен максимальная дата выезда)
- DateCheckinFrom – дата заезда от (если не указан, то минимальная)
- DateCheckinTo – дата заезда по (если не указан, то максимальная)
- DateCheckoutFrom – дата выезда от (если не указан, то минимальная)
- DateCheckoutTo – дата выезда по (если не указан, то максимальная)
- WeekDays – день недели (если не указано, то проставляются все)
- AccomodationId * – ключ типа размещения
- RoomTypeId * – ключ типа комнаты
- RoomCategoryId * – ключ категории комнаты
- PansionId * – ключ типа питания
- Price * – цена
- TarifId – (если не указан, то устанавливается 0 - ordinary. Берется из таблицы Tariffs Базы Данных)
- PriceRequest – массив данных цены
- rules – массив данных правил изменения цены
- XYRuleRequst – массив данных правил изменения цены
- ExcludeBy – какие именно ночи должны быть бесплатными (принимает значения Last - последняя, Min - дешевая, Max - дорогая)
- Sign – значение количества рассчитываемых ночей (принимает значения "=" или "-")
- XFrom – от какой продолжительности проживания действует акция
- XTo – до какой продолжительности проживания действует акция
- Y – количество бесплатных ночей или значение продолжительности проживания
- XYRuleRequst – массив данных правил изменения цены
Возвращаемый результат:
- CreateCostOfferResponse – массив данных CostOffer
- Id – идентификатор CostOffer
- Name – наименование CostOffer
- CostOfferType – тип CostOffer
- Rate – валюта
- CreateDate – дата создания CostOffer
- Markets – наименование рынка
- XYRuleResponse – массив данных правил изменения цены
- ExcludeBy – какие именно ночи должны быть бесплатными (принимает значения Last - последняя, Min - дешевая, Max - дорогая)
- Sign – значение количества рассчитываемых ночей (принимает значения "=" или "-")
- XFrom – от какой продолжительности проживания действует акция
- XTo – до какой продолжительности проживания действует акция
- Y – количество бесплатных ночей или значение продолжительности проживания
- CostInfoResponse – массив данных цены
- Id – идентификатор цены
- Code – идентификатор отеля
- CheckInDateBegin – дата заезда «с»
- CheckInDateEnd – дата заезда «до»
- CheckOutDateBegin – дата выезда «с»
- CheckOutDateEnd – дата выезда «до»
- DateBegin – дата действия цены «с»
- DateEnd – дата действия цены «до»
- Price – значение цены
- RoomTypeId – ключ типа номера
- PansionId – ключ питания
- RoomCategoryId – ключ категории номера
- AccommodationId – ключ типа размещения
- TariffId – ключ тарифа (В таблице цен соответствует параметру CS_CVId)
- Type – тип цены (Per Room - за комнату, Per Person - за человека)
В случае некорректного запроса в ответе приходит описание ошибки и номер строки, в которой указаны некорректные данные.
Вызов метода CreateCostOffer <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
<tem:CreateCostOffer>
<!--Optional:-->
<tem:guid>342d6612-f6d4-4149-a365-275a7701c306</tem:guid>
<!--Optional:-->
<tem:costOffer>
<tem:HotelId>2930</tem:HotelId>
<tem:RateId>1</tem:RateId>
<tem:CostOfferTypeId>Ordinary</tem:CostOfferTypeId>
<!--Optional:-->
<tem:MarketIds>
<!--Zero or more repetitions:-->
<tem:int>2</tem:int>
</tem:MarketIds>
<tem:SaleDateBegin>2022-10-01</tem:SaleDateBegin>
<tem:SaleDateEnd>2045-10-01</tem:SaleDateEnd>
<!--Optional:-->
<tem:NameFromProvider>New Name</tem:NameFromProvider>
<tem:PeriodBeforeCheckIn>1</tem:PeriodBeforeCheckIn>
<!--Optional:-->
<tem:Comment>NewComment</tem:Comment>
<tem:MinDays>1</tem:MinDays>
<tem:MaxDays>7</tem:MaxDays>
</tem:costOffer>
<!--Optional:-->
<tem:prices>
<!--Zero or more repetitions:-->
<tem:PriceRequest>
<tem:DateFrom>2022-10-01</tem:DateFrom>
<tem:DateTo>2028-10-01</tem:DateTo>
<tem:DateCheckinFrom>2022-10-01</tem:DateCheckinFrom>
<tem:DateCheckinTo>2025-10-01</tem:DateCheckinTo>
<tem:DateCheckoutFrom>2028-10-01</tem:DateCheckoutFrom>
<tem:DateCheckoutTo>2028-10-01</tem:DateCheckoutTo>
<!--Optional:-->
<tem:WeekDays>1234567</tem:WeekDays>
<tem:AccomodationId>5558</tem:AccomodationId>
<tem:RoomTypeId>3</tem:RoomTypeId>
<tem:RoomCategoryId>20</tem:RoomCategoryId>
<tem:PansionId>3</tem:PansionId>
<tem:Price>932</tem:Price>
<tem:TarifId>0</tem:TarifId>
</tem:PriceRequest>
</tem:prices>
<!--Optional:-->
<tem:rules>
<!--Zero or more repetitions:-->
<tem:XYRuleRequst>
<tem:ExcludeBy>Last</tem:ExcludeBy>
<!--Optional:-->
<tem:Sign>=</tem:Sign>
<tem:XFrom>1</tem:XFrom>
<tem:XTo>5</tem:XTo>
<tem:Y>1</tem:Y>
</tem:XYRuleRequst>
</tem:rules>
</tem:CreateCostOffer>
</soapenv:Body>
</soapenv:Envelope>
Возвращаемый результат метода CreateCostOffer <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<CreateCostOfferResponse xmlns="http://tempuri.org/">
<CreateCostOfferResult Message="Ok">
<Data>
<CreateCostOfferResponse>
<Id>2549</Id>
<Name>2022.10.01 - 2028.10_Russian Market_1-7_<All>_Mouzenidis Travel 1_Red_53</Name>
<CostOfferType>SPO</CostOfferType>
<Rate>EU</Rate>
<CreateDate>2022-11-14T13:14:07.047</CreateDate>
<Markets>Russian Market</Markets>
<XYRules>
<XYRuleResponse>
<ExcludeBy>Last</ExcludeBy>
<Sign>-</Sign>
<XFrom>1</XFrom>
<XTo>5</XTo>
<Y>1</Y>
</XYRuleResponse>
</XYRules>
<CostsInfo>
<CostInfoResponse>
<Id>807703</Id>
<Code>2930</Code>
<CheckInDateBegin>2028-10-01T00:00:00</CheckInDateBegin>
<CheckInDateEnd>2028-10-01T00:00:00</CheckInDateEnd>
<CheckOutDateBegin>2028-10-01T00:00:00</CheckOutDateBegin>
<CheckOutDateEnd>2028-10-01T00:00:00</CheckOutDateEnd>
<DateBegin>2022-10-01T00:00:00</DateBegin>
<DateEnd>2028-10-01T00:00:00</DateEnd>
<Price>956.1700</Price>
<RoomTypeId>3</RoomTypeId>
<PansionId>3</PansionId>
<RoomCategoryId>20</RoomCategoryId>
<AccomodationId>5558</AccomodationId>
<TariffId>0</TariffId>
<Type>PerPax</Type>
</CostInfoResponse>
</CostsInfo>
</CreateCostOfferResponse>
</Data>
</CreateCostOfferResult>
</CreateCostOfferResponse>
</soap:Body>
</soap:Envelope>
|