XML - результаты поиска/Поиск туров/Интерфейс - Результаты поиска — различия между версиями

Материал из TourClient - Руководство пользователя
Перейти к: навигация, поиск
м (Параметр запроса - Наличие мест)
Строка 173: Строка 173:
  
  
 +
'''Обратите внимание:'''
 
* В системе TourClient считается, что для предложения есть места если есть места в отель, и есть места на хотя бы один из перелетов (эконом, бизнес) туда и обратно.
 
* В системе TourClient считается, что для предложения есть места если есть места в отель, и есть места на хотя бы один из перелетов (эконом, бизнес) туда и обратно.
 
* Если наличие мест для предложения не известно, это не означает, что для него мест нет. Это означает, что нет возможности получить эту информацию из системы туроператора.
 
* Если наличие мест для предложения не известно, это не означает, что для него мест нет. Это означает, что нет возможности получить эту информацию из системы туроператора.
 
* Информация о наличии мест соответствует информации публикуемой на сайте туроператора и не гарантирует, что места действительно есть в случае ошибок в работе самого туроператора, в публикуемой им информации или в работе его системы.
 
* Информация о наличии мест соответствует информации публикуемой на сайте туроператора и не гарантирует, что места действительно есть в случае ошибок в работе самого туроператора, в публикуемой им информации или в работе его системы.

Версия 19:30, 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>


Параметр запроса - Наличие мест

Данный параметр позволяет получать в результатах поиска только те туристические предложения, для которых системе TourClient известно наличие мест, в соответствии с информацией публикуемой на сайте туроператора. Вы должны использовать эту настройку в зависимости от вашей стратегии работы с клиентами.

Осторожно! Использование настройки может сильно сократить количество предложений, которые будет видеть пользователь сайта, если по выбранным направлениям и туроператорам у системы нет возможности определить наличие мест. Используйте данную настройку только если вы уверены, что хотите показать пользователю именно эту информацию.


Варианты настройки:

  1. Есть места - Пользователь будет получать только те предложения, для которых системе TourClient известно о наличии мест, и туроператор гарантирует, что есть места.
  2. По запросу - Пользователь будет получать только те предложения, для которых системе TourClient известно о наличии мест, и у туроператора нет информации о том, что места закончились. Т.е. будут выводиться предложения для которых есть места и места по запросу.
  3. Все - Пользователь будет получать все предложения из системы TourClient.


Обратите внимание:

  • В системе TourClient считается, что для предложения есть места если есть места в отель, и есть места на хотя бы один из перелетов (эконом, бизнес) туда и обратно.
  • Если наличие мест для предложения не известно, это не означает, что для него мест нет. Это означает, что нет возможности получить эту информацию из системы туроператора.
  • Информация о наличии мест соответствует информации публикуемой на сайте туроператора и не гарантирует, что места действительно есть в случае ошибок в работе самого туроператора, в публикуемой им информации или в работе его системы.