XML - результаты поиска/Поиск туров/Интерфейс - Результаты поиска — различия между версиями
Материал из TourClient - Руководство пользователя
Jeka (обсуждение | вклад) м (→Запрос к сервису) |
Jeka (обсуждение | вклад) |
||
Строка 9: | Строка 9: | ||
=== Запрос к сервису === | === Запрос к сервису === | ||
+ | * Все параметры TourSearchRequest задают ограничения на найденные в результате запроса туры | ||
+ | * Если параметр не задан, это означает что такого ограничения нет и поиск от данного параметра не зависит | ||
+ | * Опциональные входные параметры могут быть не заданы вообще, либо может быть задано пустое значение: <allocCatId></allocCatId>. | ||
+ | |||
+ | |||
+ | |||
<source lang="xml"> | <source lang="xml"> | ||
Строка 18: | Строка 24: | ||
<!-- Суммарно эти параметры опеределяют запрошенную страницу --> | <!-- Суммарно эти параметры опеределяют запрошенную страницу --> | ||
− | <seatStatus>3</seatStatus> <!-- [Опционально] Наличие мест. --> | + | <seatStatus>3</seatStatus> <!-- [Опционально] Наличие мест. 1 - есть места, 2 - по запросу, 3 - все туры --> |
<cityId>1000</cityId> <!-- [Обязательно] Идентификатор города вылета. --> | <cityId>1000</cityId> <!-- [Обязательно] Идентификатор города вылета. --> | ||
Строка 118: | Строка 124: | ||
</source> | </source> | ||
− | |||
− | |||
− | |||
− | |||
<br> | <br> |
Версия 19:26, 8 июля 2014
Работа с сервисом осуществляется путем отправки POST запросов на адрес http://tourclient.ru/f/exml/user_id/tours_export .
Где user_id - ID пользователя AgentPassport.
POST-параметр request должен содержать xml запроса.
В результате сервис вернет ответ в формате xml.
Запрос к сервису
- Все параметры TourSearchRequest задают ограничения на найденные в результате запроса туры
- Если параметр не задан, это означает что такого ограничения нет и поиск от данного параметра не зависит
- Опциональные входные параметры могут быть не заданы вообще, либо может быть задано пустое значение: <allocCatId></allocCatId>.
<?xml version="1.0" encoding="UTF-8"?> <Request> <TourSearchRequest> <dataOffset>0</dataOffset> <!-- [Обязательно] Смещение блока запрашиваемого данных, относительно всех найденных результатов. --> <dataLimit>50</dataLimit> <!-- [Обязательно] Размер блока данных. --> <!-- Суммарно эти параметры опеределяют запрошенную страницу --> <seatStatus>3</seatStatus> <!-- [Опционально] Наличие мест. 1 - есть места, 2 - по запросу, 3 - все туры --> <cityId>1000</cityId> <!-- [Обязательно] Идентификатор города вылета. --> <countryId>12</countryId> <!-- [Обязательно] Идентификатор страны прилета. --> <roomSizeId>14</roomSizeId> <!-- [Опционально] Идентификатор размещения (DBL,SNGL,TRL...). --> <adults>2</adults> <!-- [Опционально]Количество взрослых. --> <children>0</children> <!-- [Опционально]Количество детей. --> <!-- [Обязательно] Должен быть задан либо roomSizeId либо adults и children --> <childAge1>0</childAge1> <!-- Возраст первого ребенка. --> <childAge2>0</childAge2> <!-- Возраст второго ребенка. --> <durationFrom>7</durationFrom> <!-- Продолжительность (количество ночей в отеле). ОТ. --> <durationTill>14</durationTill> <!-- Продолжительность (количество ночей в отеле). ДО. --> <departureFrom>2014-07-25</departureFrom> <!-- [Обязательно] Дата вылета ОТ. --> <departureTill>2014-08-10</departureTill> <!-- [Обязательно] Дата вылета ДО. --> <ticket>1</ticket> <!-- [Опционально] Наличие билета. true - только с билетом включенным в стоимость. false - только без билета 1 - только с авиабилетом, 2 - только с ж/д билетом, 3 - только с билетом на автобус, 4 - только с билетом на паром 5 - только с билетом на автомобиль --> <currency>3</currency> <!-- [Обязательно] Валюта, в которой необходимо вернуть цены (валюта запроса). --> <!-- 1 - USD, 2 - EUR, 3 - RUB, 4 - UAH --> <priceFrom>500</priceFrom> <!-- [Опционально] Цена ОТ (в валюте запроса). --> <priceTill>50000</priceTill> <!-- [Опционально] Цена ДО (в валюте запроса). --> <operatorIds> <!-- [Опционально] Массив идентификаторов туроператоров. --> <id>111</id> <id>222</id> <id>333</id> </operatorIds> <resortIds> <!-- [Опционально] Массив идентификаторов курортов. --> <id>111</id> <id>222</id> <id>333</id> </resortIds> <resortPlaceIds> <!-- [Опционально] Массив идентификаторов районов. --> <id>111</id> <id>222</id> <id>333</id> </resortPlaceIds> <allocCatId>7</allocCatId> <!-- [Опционально] Идентификатор категории отеля. --> <allocRate>3.56</allocRate> <!-- [Опционально] Рейтинг отеля (не менее заданного) --> <allocationIds> <!-- [Опционально] Массив идентификаторов отелей. --> <id>111</id> <id>222</id> <id>333</id> </allocationIds> <mealIds> <!-- [Опционально] Массив идентификаторов питаний. --> <id>111</id> <id>222</id> <id>333</id> </mealIds> <roomViewIds> <!-- [Опционально] Массив идентификаторов видов из номера. --> <id>111</id> <id>222</id> <id>333</id> </roomViewIds> <roomTypeIds> <!-- [Опционально] Массив идентификаторов типов номеров. --> <id>111</id> <id>222</id> <id>333</id> </roomTypeIds> </TourSearchRequest> <TourExtraEntities> <!-- [Опционально] Дополнительные объекты которые нужно добавить к объекту тур. Возможные значения перечислены в ниже. --> <entity>OnlineSeatsState</entity> <entity>ExtraCharges</entity> <entity>City</entity> <entity>Country</entity> <entity>RoomSize</entity> <entity>Resort</entity> <entity>ResortPlace</entity> <entity>Allocation</entity> <entity>AllocCat</entity> <entity>Meal</entity> <entity>RoomType</entity> <entity>RoomView</entity> <entity>Operator</entity> </TourExtraEntities> </Request>
Ответ сервиса
Сервис возвращает ответ, содержащий массив объектов Тур (Tours) и объект Статус поиска (SearchStatus)
<?xml version="1.0" encoding="UTF-8"?> <Result> <Tours> <!-- Массив объектов Тур. --> <Tour>...</Tour> <Tour>...</Tour> <Tour>...</Tour> ... </Tours> <SearchStatus> <!-- Статус поиска. --> ... </SearchStatus> </Result>
Подробное описание возвращаемых данных можно посмотреть в Описании объектов.
В случае ошибки сервис вернет:
<?xml version="1.0" encoding="UTF-8"?> <Result> <Error>Текст ошибки</Error> </Result>