API от intui.travel предназначен для интеграции данных от сервиса поиска трансферов в ваш проект.
API от intui.travel предназначен для интеграции данных от сервиса поиска трансферов в проект партнёра.
С помощью API вы можете:
- получить и вывести результаты поиска — автомобили с ценами и дополнительными опциями, полученными при помощи метода поиска, описанного ниже. Пример такой страницы (без ID и subID) https://www.intui.travel/transfer/avstriya/airport_vena/innsbruk_siti/;
- сделать каталог маршрутов для определенного аэропорта, как по ссылке (без ID и subID) https://www.intui.travel/transfer/avstriya/airport_vena/. Для этого используйте описанные ниже методы получения ID транспортных узлов и резортов/отелей.
- автоматически формировать ссылки на заказ трансфера и размещать их у себя на сайте.
Важно: для сформированных ссылок обязательно используйте форму создания ссылок в личном кабинете, чтобы переходы и бронирования попали в статистику партнёрской программы Travelpayouts и приносили вам вознаграждения.
Для работы с API необходимо опыт разработки. Если у вас нет такого опыта, вы можете найти программиста на одной из фриланс бирж.
Поиск транспортного узла
Метод
POST
URL
Зависит от языка, на котором вы хотите получать данные:
- RU — https://intui.travel/ajax/AjaxFindLocation/hub/
- EN — https://en.intui.travel/ajax/AjaxFindLocation/hub/
- DE — https://de.intui.travel/ajax/AjaxFindLocation/hub/
- IT — https://it.intui.travel/ajax/AjaxFindLocation/hub/
- FR — https://fr.intui.travel/ajax/AjaxFindLocation/hub/
- ES — https://es.intui.travel/ajax/AjaxFindLocation/hub/
- CN — https://cn.intui.travel/ajax/AjaxFindLocation/hub/
Запрос
Формат запроса
Headers:
x-requested-with: “XMLHttpRequest”
Body(form-data):
searchStr: [string]
Параметры запроса
- searchStr (string) — название города или места отправления (поддерживается только латиница).
Пример запроса (JavaScript)
var formdata = new FormData();
formdata.append("searchStr[]", "Moscow");
fetch("https://www.intui.travel/ajax/AjaxFindLocation/hub/", {
method: 'POST',
headers: {
"x-requested-with": "XMLHttpRequest"
},
body: formdata,
redirect: 'follow'
}).then(r => r.json())
Пример запроса (Curl)
curl 'https://www.intui.travel/ajax/AjaxFindLocation/hub/' \
-H 'x-requested-with: XMLHttpRequest' \
-H 'Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryzBiECeofvtmY4KUD' \
--data-binary $'------WebKitFormBoundaryzBiECeofvtmY4KUD\r\nContent-Disposition: form-data; name="searchStr[]"\r\n\r\nMoscow\r\n------WebKitFormBoundaryzBiECeofvtmY4KUD--\r\n'
Ответ
[
{
"label": "<b>Moscow</b> Sheremetyevo Airport (<b>Moscow</b> Sheremetyevo Airport) (SVO)<small>Russia</small>",
"value": "Moscow Sheremetyevo Airport (Moscow Sheremetyevo Airport) (SVO), Russia",
"country_id": "65_417",
"value_en": "Airport",
"dt": ""
}
]
Параметры ответа
- label (string) — название транспортного узла / города с HTML-тегами для размещения на странице;
- value (string) — название транспортного узла / города без тегов;
- country_id (integer) — первое число ID страны, второе ID локации;
-
value_en (string) — тип транспортного узла:
- Airport — аэропорт;
- Train — железнодорожная станция;
- Bus — автобусная станция;
- Sea — морской порт;
- Geo — населённый пункт.
- dt — не используется.
Поиск города или отеля
Метод
POST
URL
Зависит от языка, на котором вы хотите получать данные:
- RU — https://www.intui.travel/ajax/AjaxFindLocation/resort/
- EN — https://en.intui.travel/ajax/AjaxFindLocation/resort/
- DE — https://de.intui.travel/ajax/AjaxFindLocation/resort/
- IT — https://it.intui.travel/ajax/AjaxFindLocation/resort/
- FR — https://fr.intui.travel/ajax/AjaxFindLocation/resort/
- ES — https://es.intui.travel/ajax/AjaxFindLocation/resort/
- CN — https://cn.intui.travel/ajax/AjaxFindLocation/resort/
Запрос
Формат запроса
Headers:
x-requested-with: “XMLHttpRequest”
Body(form-data):
searchStr: [string]
ag_ap: string
Параметры запроса
- ag_ap (string) — соответствует country_id, полученному при поиске транспортного узла. Используйте этот параметр для предварительной фильтрации результатов запроса;
- searchStr (string) — поисковый запрос пользователя.
Пример запроса (JavaScript)
var formdata = new FormData();
formdata.append("searchStr[]", "Kemer");
formdata.append("ag_ap", "14_121”");
fetch("https://www.intui.travel/ajax/AjaxFindLocation/resort/", {
method: 'POST',
headers: {
"x-requested-with": "XMLHttpRequest"
},
body: formdata,
redirect: 'follow'
}).then(r => r.json())
Пример запроса (Curl)
curl 'https://www.intui.travel/ajax/AjaxFindLocation/resort/' \
-H 'x-requested-with: XMLHttpRequest' \
-H 'Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryozW4ItWXXUHkybK7' \
--data-binary $'------WebKitFormBoundaryozW4ItWXXUHkybK7\r\nContent-Disposition: form-data; name="searchStr[]"\r\n\r\nKemer\r\n------WebKitFormBoundaryozW4ItWXXUHkybK7\r\nContent-Disposition: form-data; name="ag_ap"\r\n\r\n14_121”\r\n------WebKitFormBoundaryozW4ItWXXUHkybK7--\r\n'
Ответ
Пример ответа
[
{
"label": "<b>Kemer</b> city centre Кемер район центра города",
"value": "Kemer city centre Кемер район центра города",
"value_en": "r",
"dt": "60.8_66",
"country_id": "148650"
},
{
"label": "Erendiz <b>Kemer</b> Resort",
"value": "Erendiz Kemer Resort",
"value_en": "h",
"dt": "112.5_110",
"country_id": "r1075h16671_b"
}
]
Параметры ответа
- label (string) — название локации (транспортного узла / города) с HTML-тегами для размещения на странице;
- value (string) — название локации (транспортного узла / города) без тегов;
-
value_en (string) — тип локации:
- r — район/место;
- h — отель.
- country_id (string) — если просто число, то ID района/места. Если в начале стоит r, то сначала идёт ID района/места, потом после h идёт ID отеля. Например, r1075h16671_b — ResortId = 1075 hotelId=16671.
- dt — TBD
Получение ссылки на страницу поиска доступных трансферов
Метод
GET
Url
Зависит от языка, на котором вы хотите получать данные:
- RU — https://www.intui.travel/transfer/search/
- EN — https://en.intui.travel/transfer/search/
- DE — https://de.intui.travel/transfer/search/
- IT — https://it.intui.travel/transfer/search/
- FR — https://fr.intui.travel/transfer/search/
- ES — https://es.intui.travel/transfer/search/
- CN — https://cn.intui.travel/transfer/search/
Запрос
Параметры запроса
Звёздочкой отмечены обязательные поля.
- AirportGroupId* (integer) — ID группы аэропорта. Первое число в параметре country_id из запроса транспортного узла;
- AirportId* (integer) — ID аэропорта. Второе число в параметре country_id из запроса транспортного узла;
- ResortId* (integer) — ID резорта. Значение country_id из запроса города или отеля;
- hotelId (integer) — ID отеля. Значение country_id из запроса города или отеля;
- NumberOfAdults* (integer) — количество взрослых;
- NumberOfChildren (integer) — количество детей от 2 до 12 лет;
- NumberOfInfants (integer) — количество младенцев до двух лет;
- leaving_datetime (integer) — время отъезда (timestamp);
- come_datetime (integer) — время прибытия (timestamp);
- forcibly_currency* (string) — код валюты, в которой будут показаны цены на страницах списка трансферов. Возможные значения: EUR, USD, RUB, GBP, AUD, SGD, CNY, CAD, INR, UAH, CHF, ZAR, AED, ILS, HKD, CZK, BRL, JPY, по умолчанию — EUR);
- BookingTypeId* (integer) — тип трансфера (где 1 — из аэропорта и обратно (в аэропорт), 2 — из аэропорта, 3 — в аэропорт).
Пример ссылки
https://www.intui.travel/transfer/search/?transfer_search[AirportGroupId]=14&transfer_search[AirportId]=121&transfer_search[ResortId]=1075&transfer_search[NumberOfAdults]=3&transfer_search[BookingTypeId]=2&transfer_search[forcibly_currency]=EUR&partnerID=2871992
Получение доступных трансферов
Метод
GET
Описание
Возвращает список всех возможных трансферов доступных к бронированию. Для того, чтобы получить список возможных маршрутов, необходимо задать точки посадки и высадки.
Существует три способа задания точек:
- AR — по коду транспортного узла и идентификатору города / отеля.
- IG — международный код IATA транспортного узла и GPS координаты отеля/виллы/апартаментов/Адрес высадки или посадки.
- GEO — GPS координаты точки посадки и высадки (точки GPS можно получить из любых источников / карт).
Для способов AR и IG можно получить кэшированную базу по всем транспортным узлам / городам / отелям по ссылке https://drive.google.com/drive/folders/1YR3dk9WQmOmMQD-dT8FrQe8uWbMLYs1c?ths=true или использовать параметры из методов, описанных выше.
Запрос
Общие параметры для методов AR и IG.
Звёздочкой отмечены обязательные поля.
- apikey* — чтобы получить ключ API, напишите в службу поддержки Travelpayouts;
-
coordinatesType* (string) — способ определения начальной и конечной точек маршрута:
- AR;
- IG;
- GEO.
-
bookingType* (integer) — направление трансфера:
- 1 — трансфер Туда и Обратно
- 2 — трансфер только Туда
- 3 — трансфер только Обратно
По умолчанию 2.
При выборе coordinatesType параметр bookingType не заполняется (необязательный, игнорируется при запросе).
Внимание! Для маршрута типа GEO невозможно получить посадку по типу bookingType 1 (туда обратно).
- adults* (integer) — количество взрослых пассажиров. Значение по умолчанию — 1;
- children (integer) — количество детей (возраст от 2 до 12 лет). Значение по умолчанию — 0;
- infants (integer) — количество младенцев (возраст до 2 лет). Значение по умолчанию — 0;
-
lang (string) — языковая версия, в которой нужно вернуть текстовые значения. Возможные значения:
- en (значение по умолчанию);
- ru;
- de;
- es;
- it;
- fr;
- cn.
Если транспортная компания не предоставила инструкций на каком-либо языке, то будет предоставлена инструкция на английском языке.
- multiprice (boolean) — параметр, указывающий, нужно ли возвращать стоимость трансферов в четырех основных валютах (EUR, USD, RUB, GBP). Значение по умолчанию — false. Если установлено значение false, то в массиве цен будут значения только для валюты, переданной в переменной currency (по умолчанию — EUR);
- currency (string) — код валюты, в которой будут показаны цены на страницах списка трансферов и оформления деталей бронирования (см. ниже возвращаемые переменные IntuiUrlTransfersList, IntuiUrlOrderSingle и IntuiUrlOrderBoth). Возможные значения: EUR (значение по умолчанию), USD, RUB, GBP, AUD, SGD, CNY, CAD, INR, UAH, CHF, ZAR, AED, ILS, HKD, CZK, BRL, JPY;
- childseat (integer) — количество детских кресел, доступных у поставщика;
- booster (integer) — количество бустеров, доступных у поставщика;
-
arrivalDateTime* (integer) — время прибытия пассажира в ТУ (для трансфера из ТУ) (кратное 5 минутам, в формате ISO 8601 YYYY-MM-DDThh:mm:ss);
Внимание! Для GEO маршрута arrivalDateTime отдает значение local date & time of pick-up (кратное 5 минутам, в формате ISO 8601 YYYY-MM-DDThh:mm:ss); -
departureDateTime* (integer) — время посадки пассажира (для трансфера в ТУ) (кратное 5 минутам, в формате ISO 8601 YYYY-MM-DDThh:mm:ss)
Внимание! Для GEO маршрута departureDateTime необязательно для заполнения для BookingCreate.
Для arrivalDateTime, departureDateTime при пустых значениях будет учитываться самое ближайшее время с доступными трансферами. В случае, если даты передаются пользователем, но меньше доступных дат для трансфера, значения также будут скорректированы системой. При значении, не кратном 5 минутам, система выберет ближайшее кратное время.
Параметры, специфичные для метода AR
- ResortId (integer) — идентификатор района города, являющегося одной из точек маршрута трансфера;
- iata (integer) — международный код IATA ТУ, являющегося второй точкой маршрута трансфера.
Параметры, специфичные для метода IG
- iata (integer) — международный код IATA ТУ, являющегося второй точкой маршрута трансфера;
- gpsLatR (float) — широта координаты GPS точки города, являющейся вторым пунктом маршрута;
- gpsLngR (float) — долгота координаты GPS точки города, являющейся вторым пунктом маршрута.
Параметры, специфичные для метода GEO
- gpsLatR (float) — широта координаты GPS точки, являющейся первым пунктом маршрута;
- gpsLngR (float) — долгота координаты GPS точки, являющейся первым пунктом маршрута;
- gpsLatEnd (float) — широта координаты GPS точки, являющейся конечным пунктом маршрута;
- gpsLngEnd (float) — долгота координаты GPS точки, являющейся конечным пунктом маршрута.
Пример запрос для AR
$url = 'https://api.intui.travel/ver1_0/GetAvailCar/';
$parameters = array(
apikey : ******************************
coordinatesType : AR
iata : HBA
ResortId : 107074
gpsLatR :
gpsLngR :
gpsLatEnd :
gpsLngEnd :
bookingType : 1
adults : 1
childs : 0
infants : 0
childseat : 0
booster : 0
arrivalDateTime : 2022-01-01T10:00:00
pickupDateTime :
departureDateTime :
currency : EUR
productid :
lang : en
multiprice : 1
)
//
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($parameters));
$response = curl_exec($curl);
curl_close($curl);
$result = json_decode($response);
var_dump($result);
Ответ
Пример ответа для методов AR, IG и GEO можно посмотреть здесь.
Параметры ответа
-
status (string) — статус ответа. Возможные значения:
- ok — запрос успешен;
- authorization_error — неверные данные авторизации;
- wrong_params — неверные обязательные параметры.
-
LocationInfo — объект, в котором содержится информация о точках маршрута:
- ResortId — идентификатор района города.
- AirportId — идентификатор ТУ.
- AirportGroupId — идентификатор страны.
- ResortName — название района города в запрашиваемой языковой версии.
- ResortCenterLatitude — широта GPS-координаты центра района (может понадобиться для вычисления оптимального выбора трансфера).
- ResortCenterLongitude — долгота GPS-координаты центра района.
- Distance — расстояние от центра района до ТУ.
- HotelLatitude — широта GPS-координаты отеля (может понадобиться для вычисления оптимального выбора трансфера). Координаты отеля будут возвращены в случае поиска по методу «AR» с указанием ID вместо координат центра района и расстояния.
-
HotelLongitude — долгота GPS-координаты отеля (может понадобиться для вычисления оптимального выбора трансфера)
Координаты отеля будут возвращены в случае поиска по методу «AR» с указанием ID вместо координат центра района и расстояния. - AirportName — название ТУ в запрашиваемой языковой версии.
- AirportGroupName — название страны в запрашиваемой языковой версии.
-
StationType — Тип транспортного узла. Возможные значения:
- AIR — аэропорт;
- STN — железнодорожный вокзал;
- BUS — автобусная станция;
- PRT — морской порт.
- StationCode — международный код IATA транспортного узла либо псевдокод ТУ, который вернулся в параметрах ответа методов DestinationAirportToMPoint или DestinationPointToMAirport.
- IntuiUrlTransfersList — ссылка на страницу списка трансферов на заданную дату для выбранного маршрута на сайте intui.travel. Срок жизни ссылки — 24 часа.
- travelling — массив, в котором содержатся все возможные транспортные средства по направлению из ТУ.
-
info — объект основной информации о транспортном средстве и поездке:
- productid — идентификатор транспортного средства.
- bookingTypeId — направление (Только для типа GEO).
- transfertime — ориентировочное время поездки в минутах.
- advanced_booking — минимальное время от бронирования до трансфера (количество часов).
- free_cancellation — количество часов, за которое можно бесплатно отменить заказ. Бесплатная отмена возможна от одного часа и зависит от настройки на конкретном автомобиле. Переменная нефиксированная, для каждого предложения свои рамки отмены без штрафа. В случае когда бесплатная отмена не предусмотрена, система возвращает значение равное 0.
- maxpax — максимальная вместимость салона автомобиля (для приватных типов трансфера).
- luggage — максимальная вместимость багажа автомобиля (для приватных типов трансфера).
- perperson — расчёт будет вестись за каждого пассажира (для шаттлов).
-
vehicle_type — тип транспортного средства. Возможные значения:
- shuttle — автобус-шаттл;
- private — индивидуальный трансфер.
- vehicle_description — краткое описание транспортного средства — информация о типе кузова, годе выпуска, марке автомобиля.
-
vehicle_class — класс транспортного средства для приватных авто в случае, если компания перевозчик указала его. Возможные значения:
- N/a (в случае, если значение не задано);
- Economy class;
- Standard;
- Eco-Electric car;
- Business;
- Luxury;
- Moto taxi;
- Boat;
- Speed Boat;
- Ferry;
- Plane;
- See plane;
- Helicopter;
- Car+Boat.
-
vehicle_class_index — идентификационный номер класса транспортного средства. Возможные значения:
- 1 (Economy class);
- 2 (Standard);
- 3 (Eco-Electric car);
- 4 (Business);
- 5 (Luxury);
- 6 (Moto taxi);
- 7 (Boat);
- 8 (Speed Boat);
- 9 (Ferry);
- 10 (Plane);
- 11 (See plane);
- 12 (Helicopter);
- 13 (Car+Boat).
-
type_vehicle — тип транспортного средства. Возможные значения:
- N/A;
- Sedan;
- High class sedan;
- Superior High class sedan;
- Minivan;
- Minibus;
- Bus;
- Coach;
- Station Wagon;
- Limousine;
- SUV;
- Car 4×4;
- Boat;
- Speedboat;
- Catamaran;
- Car + Boat;
- Car + Speedboat;
- Minivan + boat;
- Minivan + speedboat;
- Motorbike;
- Hatchback.
-
type_vehicle_id — индекс типа транспортного средства. Возможные значения:
- 0 (N/A);
- 1 (Sedan);
- 2 (High class sedan);
- 3 (Superior High class sedan);
- 4 (Minivan);
- 5 (Minibus);
- 6 (Bus);
- 7 (Coach);
- 8 (Station Wagon);
- 9 (Limousine);
- 10 (SUV);
- 11 (Car 4×4);
- 12 (Boat);
- 13 (Speedboat);
- 14 (Catamaran);
- 15 (Car + Boat);
- 16 (Car + Speedboat);
- 17 (Minivan + boat);
- 18 (Minivan + speedboat);
- 19 (Motorbike);
- 20 (Hatchback).
- route_description — прочая информация о маршруте и автомобиле.
- carImgUrl — ссылка на фотографию автомобиля.
- meetingPointScheme — ссылка на фотографию схемы встречи клиента.
- interiorImgUrl — ссылка на фотографию интерьера автомобиля.
- driverPhotoUrl — ссылка на фотографию водителя.
- intuiUrlOrderSingle — ссылка на страницу оформления деталей заказа трансфера в одну сторону (для travelling — из ТУ, для returning — в ТУ) на сайте intui.travel. Срок жизни ссылки — 24 часа.
-
intuiUrlOrderBoth — ссылка на страницу оформления деталей заказа трансфера в обе стороны. Срок жизни ссылки — 24 часа.
Важно! Чтобы сделать ссылку партнёрской и получать доход от бронирований, совершенных после перехода по ней, скопируйте её и вставьте в поле Адрес целевой страницы в разделе Ссылки партнёрской программы intui.travel. Далее, скопируйте готовую партнёрскую ссылку из поля справа.
Если пользователь выбрал конкретный вариант трансфера, рекомендовано возвращать ссылку IntuiUrlOrderSingle и IntuiUrlOrderBoth, если конкретный вариант трансфера не выбран — IntuiUrlTransfersList.
В случае, если возвращается ссылка IntuiUrlTransfersList, можно дополнительно передать параметр названия пункта назначения apiHotelName=YourNameOfHotel, который будет использован при отображении результатов на посадочной странице. -
apiHotelName — название пункта назначения.
Внимание! Данный параметр будет обработан только при посадке на маршрут до Резорта, с использованием ResortId, но не будет обработан при посадке на маршрут, полученный с использованием HotelId!
-
conditions — объект, содержащий в себе условия предоставления трансфера, если такие имеются (в противном случае может быть равен false):
- instruction — инструкция для клиента по прибытию/отъезду (в зависимости от сегмента).
- maximum_waiting_time — максимальное время и условия ожидания по прибытию /отъезду (в зависимости от сегмента).
- luggage_information — информация о багаже.
- children_infants — информация о детях и младенцах.
- additional_info — дополнительная информация по маршруту.
-
additional — дополнительная информация об автомобиле (при отсутствии дополнений возвращается false):
- car_licensing — номер лицензии транспортного средства.
- driver_licensing — номер лицензии водителя.
- driver_langs — на каких языках разговаривает водитель (языки перечислены через запятую).
- available_currency — какую валюту принимает водитель коды валют через запятую).
- card_payment — возможен ли расчёт банковской картой с водителем (1 — доступно, 0 — нет).
- wheelchair_access — адаптирована ли машина для перевозки инвалидов (1 — доступно, 0 — нет).
- covid19 — дезинфекция автомобиля транспортной компанией (1-доступно, 0-нет).
- wi_fi — есть бесплатный wi-fi (1 — доступно, 0 — нет).
- ski — можно перевозить лыжи/сноуборды (1 — доступно, 0 — нет).
- free_water — предоставляется вода без дополнителной оплаты (1 — доступно, 0 — нет).
- dvd — авто оборудовано DVD-плеером (1 — доступно, 0 — нет).
- console — имеется игровая приставка (1 — доступно, 0 — нет).
- free_refreshment — предоставляются освежающие полотенца без дополнительной оплаты (1 — доступно, 0 — нет).
- free_map — карта города/острова в подарок (1 — доступно, 0 — нет).
- charger — возможность бесплатно воспользоваться зарядкой для телефона (1 — доступно, 0 — нет).
- support24 — возможность круглосуточной поддержки клиентов поставщиком (1 — доступно, 0 — нет).
- no_smoking — машина для некурящих (1 — доступно, 0 — нет).
- woman_driver — водитель — женщина (1 — доступно, 0 — нет).
- pets_are_allow — допускается перевозка домашних животных (1 — доступно, 0 — нет).
- conditioner — кондиционер (1 — доступно, 0 — нет).
- golf_bag — разрешается перевозить сумку для гольфа (1 — доступно, 0 — нет).
- bike_allowed — перевозка велосипедов разрешена (1 — доступно, 0 — не доступно).
- music_instr_allowed — музыкальные инструменты разрешены к перевозке (1-доступно, 0-нет).
- flightdelayedsupplierwait — если рейс задерживается, транспортная компания ждёт клиента до 2 часов без дополнительной оплаты (1 — доступно, 0 — нет (ожидание в рамках установленного по маршруту времени (см. переменную maximum_waiting_time)), только TP2 и TS2.
- meet_greet — водитель встречает клиента с табличкой. Обязательно предоставить телефон клиента, чтобы водитель мог связаться звонком или по SMS (1 — доступно, 0 — нет).
- NumberFulfilledOrders — количество выполненных перевозчиком заказов.
- response_time — время ответа перевозчиком. Значения могут быть в минутах, Instant,ND — нет данных.
- EvaluationReviews — средний рейтинг перевозчика.
-
pricing — объект, содержащий в себе общую и детальную информацию о стоимости трансфера:
- allprice — общая стоимость трансфера в валюте, указанной в переменной currency, либо в четырёх основных валютах при значении multiprice (необходимо учитывать, что при бронировании трансфера в обе стороны для каждого сегмента цена возвращается отдельно).
- detailprice — объект с детальным расчётом цены за трансфер. В случае оплаты за пассажира, как например в шаттлах — объект detailprice содержит информацию о стоимости (price) за одного взрослого (type: Adult), ребёнка (type: Child), младенца (type: Infants), а также количество человек (units), учтённых в каждой из этих категорий. В случае оплаты за транспортное средство в объекте будет содержаться стоимость за одно транспортное средство (price) и количество транспортных средств (зависит от вместимости средства), необходимых для перевозки всех заявленных пассажиров (units).
- returning — структура массива returning аналогична массиву travelling и содержит в себе все возможные транспортные средства по направлению в ТУ
Полезные советы
- Вы может создать поисковую форму для определенного Транспортного узла на вашей стороне сразу с заполненным названием транспортного узла в поле.
- Для метода GetAvCars вы можете использовать ваши данные — код IATA или GEO координаты аэропортов, вокзалов и городов, отелей.
- В случае, если результаты поиска содержат более 10 автомобилей, лучше делать lazy load в интерфейс клиента или догружать данные в фоновом режиме.
- Можно использовать пример страницы результатов поиска для того, чтобы показать клиенту доступные предложения и дополнительные опции по автомобилям: https://www.intui.travel/transfer/turciya/airport_antaliya/kemer_raion_centra_goroda/
- Можно настроить сортировку по необходимым параметрам: цене, вместимости автомобиля, типу трансфера.
- Можно на своей стороне настроить фильтры для клиента по классу машин и дополнительным опциям автомобиля.