ICS Tour API v1.20
описание взаимодействия
Общие сведения
Данные от системы запрашиваются и передаются по протоколу HTTP.
Для передачи параметров можно использовать метод GET или POST.
Данные к пользователю передаются в виде XML документов в кодировке UTF-8.
Описание взаимодействия шлюза по продажам авиабилетов можно найти здесь.
Данные об остановках продаж в отелях можно получить отдельными XML файлами.
Список методов для поиска тура
Список методов для работы с заявками
Методы
authenticate
URL: http://api.icstrvl.ru/tour-api/authenticate.xml
Проверка подлиности идентификатора сессии
Аргументы
Название |
Тип |
Обязательный |
Описание |
aid |
строка |
да |
Идентификатор сессии |
Метод для проверки подлиности ключа сессии.
Возвращает XML типа:
<result>
<agency id="Идентификатор агентства" title="Название агентства"/>
</result>
authorize
URL: http://api.icstrvl.ru/tour-api/authorize.xml
авторизация для работы с заявками
Аргументы
Название |
Тип |
Обязательный |
Описание |
login |
строка |
да |
Логин агентства |
password |
строка |
да |
Пароль агентства |
Метод возвращает строку - идентификатор сессии, которую нужно использовать в
методах, которые работают с заявками.
Возвращает XML типа:
<result>
<sessionId>Строка - идентификатор сессии</sessionId>
<login>Строка - логин агентства</login>
<agency>Строка - Название агентства</agency>
<INN>Строка - ИНН агентства</INN>
</result>
cancelOrder
URL: http://api.icstrvl.ru/tour-api/cancelOrder.xml
аннулирование заявки
Аргументы
Название |
Тип |
Обязательный |
Описание |
aid |
строка |
да |
Идентификатор сессии |
id |
строка |
да |
Id заявки на бронирование |
Метод позволяет аннулировать заявку на тур.
Доступ к методу предоставляется по запросу.
Возвращает XML типа:
<result>
<canceling id="Идентификатор заявки">
<status name="краткое название статуса: ok - прошло удачно, failed - аннуляция невозможна">расшифровка названия статуса</status>
<reason>причина в отказе аннуляции</reason>
<penalty currency="валюта штрафа">сумма штрафа</penalty>
</canceling>
</result>
cancelOrderPenalty
URL: http://api.icstrvl.ru/tour-api/cancelOrderPenalty.xml
проверка возможности аннулирования заявки и штрафы
Аргументы
Название |
Тип |
Обязательный |
Описание |
aid |
строка |
да |
Идентификатор сессии |
id |
строка |
да |
Id заявки на бронирование |
Метод позволяет унать возможна ли аннуляция заявки и какие будут за это штрафы.
Доступ к методу предоставляется по запросу.
Возвращает XML типа:
<result>
<canceling id="Идентификатор заявки">
<status name="краткое название статуса: possible - аннулирование возможно, forbidden - аннулирование запрещено, impossible - невозможно аннулирование">Расшифровка названия статуса</status>
<reason>Причина отказа в аннуляции</reason>
<penalty currency="Валюта штрафа">Сумма штрафа</penalty>
</canceling>
</result>
checkBooking
URL: http://api.icstrvl.ru/tour-api/checkBooking.xml
проверка статуса бронирования и получение идентификатора заявки на бронирование
Аргументы
Название |
Тип |
Обязательный |
Описание |
aid |
строка |
да |
Идентификатор сессии |
book_id |
целое число |
да |
Идентификатор бронирования |
Метод предназначен для того, чтобы получить идентификатор заявки на
бронирование в системе оператора, после того как получен идентификатор
бронирования из метода
makeOrder.
Возвращает XML типа:
<result>
<order create_time="Время создания заявки" book_id="Идентификатор бронирования" status="Статус бронирования" view_id="Идентификатор заявки для просмотра на web" order_id="Идентификатор заявки на бронирование"/>
</result>
getAvailableDates
URL: http://api.icstrvl.ru/tour-api/getAvailableDates.xml
список возможных дат вылета
Аргументы
Название |
Тип |
Обязательный |
Описание |
city |
целое число |
нет |
Город вылета [список: getDepartures] |
cnt |
целое число |
да |
Страна [список: getCountries] |
program |
целое число, может быть несколько |
нет |
Курортная программа [список: getPrograms] |
resort |
целое число, может быть несколько |
нет |
Курорт [список: getResorts] |
tour_type |
целое число |
нет |
Тип тура [список: getTourTypes] |
Метод возвращает список дат, на которые имеются туры.
Обязательный параметр - только страна, также поиск дат может быть ограничен
городом вылета, курортом, типом тура, курортной программой.
Возвращает XML типа:
<result>
<dates>
<date>Дата в формате YYYY-MM-DD</date>
</dates>
</result>
getAvailableDurations
URL: http://api.icstrvl.ru/tour-api/getAvailableDurations.xml
список возможных продолжительностей туров
Аргументы
Название |
Тип |
Обязательный |
Описание |
city |
целое число |
нет |
Город вылета [список: getDepartures] |
cnt |
целое число |
да |
Страна [список: getCountries] |
program |
целое число, может быть несколько |
нет |
Курортная программа [список: getPrograms] |
resort |
целое число, может быть несколько |
нет |
Курорт [список: getResorts] |
tour_type |
целое число |
нет |
Тип тура [список: getTourTypes] |
Метод возвращает продолжительности, на которые имеются туры.
Обязательный параметр - только страна, также поиск дат может быть ограничен
городом вылета, курортом, типом тура, курортной программой.
Возвращает XML типа:
<result>
<durations>
<duration>количество ночей, целое число</duration>
</durations>
</result>
getCatalog
URL: http://api.icstrvl.ru/tour-api/getCatalog.xml
список записей справочника
Аргументы
Название |
Тип |
Обязательный |
Описание |
name |
строка |
да |
Название справочника |
Метод возвращает список записей справочника.
Доступные справочники:
Возвращает XML типа:
<result>
<catalog name="Имя каталога" desc="Краткое пояснение">
<item id="Идентификатор записи">Название</item>
</catalog>
</result>
getCountries
URL: http://api.icstrvl.ru/tour-api/getCountries.xml
страны
Аргументы
Название |
Тип |
Обязательный |
Описание |
city |
целое число |
нет |
Город вылета [список: getDepartures] |
Возвращает список стран, в которые есть актуальные туры. Если передан
идентификатор города вылета, то список стран ограничивается теми странами, в
которые возможен вылет из данного города.
Возвращает XML типа:
<result>
<countries city="Идентификатор города вылета">
<country id="Идентификатор страны" position="Позиция для сортировки" name="Название страны"/>
</countries>
</result>
getCurrencyRate
URL: http://api.icstrvl.ru/tour-api/getCurrencyRate.xml
курсы валют
Возвращает текущие курсы
Возвращает XML типа:
<result>
<rates date="Дата обновления курса">
<item cur2="Валюта 2" cur1="Валюта 1">Значение курса</item>
</rates>
</result>
getDepartures
URL: http://api.icstrvl.ru/tour-api/getDepartures.xml
все города вылета
Возвращает XML типа:
<result>
<cities>
<city id="Идентификатор города вылета" name="Название города вылета"/>
</cities>
</result>
getHotelCategories
URL: http://api.icstrvl.ru/tour-api/getHotelCategories.xml
список возможных категорий отеля
Возвращает XML типа:
<result>
<categories>
<category id="Идентификатор категории отеля" name="Название категории"/>
</categories>
</result>
getHotelInfo
URL: http://api.icstrvl.ru/tour-api/getHotelInfo.xml
получение информации об отеле
Аргументы
Название |
Тип |
Обязательный |
Описание |
id |
целое число |
да |
Идентификатор отеля |
Возвращает XML типа:
<result>
<hotel category_name="Название категории отеля, строка" resort="Идентификатор курорта" category="Количество звезд отеля, целое число" name="Название отеля">
<description>Описание отеля, CDATA</description>
<main_image image_url="URL основного изображения отеля" preview_image_url="URL основного изображения отеля, уменьшенный вариант"/>
<image position="Порядок показа изображения в списке" image_url="URL дополнительного изображения отеля" preview_image_url="URL дополнительного изображения отеля, уменьшенный вариант"/>
<.../>
<image preview_image_url="URL дополнительного изображения отеля, уменьшенный вариант" image_url="URL дополнительного изображения отеля" position="Порядок показа изображения в списке"/>
</hotel>
</result>
getHotelPrices
URL: http://api.icstrvl.ru/tour-api/getHotelPrices.xml
получение ценовых предложений по отелю
Аргументы
Название |
Тип |
Обязательный |
Описание |
city |
целое число |
да |
Город вылета [список: getDepartures] |
hotel |
целое число |
да |
Отель [список: getHotels] |
duration |
целое число |
да |
Продолжительность тура |
date |
дата, формат YYYY-MM-DD |
да |
Дата вылета |
ad |
целое число |
да |
Количество взрослых |
ch |
целое число |
нет |
Количество детей |
chage |
целое число, может быть несколько |
нет |
Возраст детей |
infant |
целое число |
нет |
Инфант |
warranty |
целое число |
нет |
Только туры на гарантии, по умолчанию: 0 |
smpl |
целое число |
нет |
Если параметр установлен, то будут искаться туры только с единственным проживанием в составе |
Метод возвращает все цены в отеле на указанную дату, продолжительность и проживание (количество взрослых и детей).
Ценовые предложения сгруппированы по типам комнат.
Возвращает XML типа:
<result>
<hotel cat="Идентификатор категории отеля" country="Идентификатор страны" id="Идентификатор отеля" cat_name="Название категории отеля" currency="Название валюты страны" resort_name="Название курорта" resort="Идентификатор курорта" name="Название отеля" country_name="Название страны">
<roomType name="Название типа комнаты" id="Идентификатор типа комнаты">
<tour ad="Количество взрослых" program="Идентификатор курортной программы" nights="Количество ночей" price_rur="Стоимость пакета в рублях по курсу на день поиска" id="Идентификатор тура" price="Стоимость пакета в валюте страны" can_book="Возможность бронирования тура на момент поиска: 1 - да, 0 - нет" ticket_status_econom="Идентификатор статуса билета эконом-класса" date="Дата вылета, формат YYYY-MM-DD" ch_age="Возраст детей" ticket_status_business="Идентификатор статуса билета бизнес-класса" ch="Количество детей">
<hotel_part meal="Идентификатор типа питания в данном отеле" date2="Дата окончания проживания в данном отеле" type="Тип проживания, MAIN - основное" resort_name="Название региона" date1="Дата начала проживания в данном отеле" hotel_cat="Идентификатор категории отеля" room="Название типа комнаты в отеле" resort="Идентификатор региона" hotel_name="Название отеля" hotel_cat_name="Название категории отеля" duration="Количество ночей в этом отеле" meal_name="Название типа питания" status="Идентификатор статуса данного отеля" hotel_id="Идентификатор отеля"/>
<tarif>название тарифа</tarif>
<isFlightIncluded>Включен или нет перелет, true - да, false - нет, если нет тега, то не включен</isFlightIncluded>
<isInsuranceIncluded>Включена или нет страховка, true - да, false - нет, если нет тега, то не включена</isInsuranceIncluded>
<isTransferIncluded>Включен или нет трансфер, true - да, false - нет, если нет тега, то не включен</isTransferIncluded>
<isInnerFlightIncluded>Включен или нет внутренний перелет, true - да, false - нет, если нет тега, то не включен</isInnerFlightIncluded>
<isAccommodationIncluded>Включено или нет проживание, true - да, false - нет, если нет тега, то не включено</isAccommodationIncluded>
</tour>
</roomType>
</hotel>
</result>
getHotelStatuses
URL: http://api.icstrvl.ru/tour-api/getHotelStatuses.xml
список статусов проживания
Возвращает XML типа:
<result>
<hotel_statuses>
<hotel_status id="Идентификатор статуса" can_book="Возможность бронирования тура с таким статусом, 1 - можно, 0 - нет" name="Название статуса"/>
</hotel_statuses>
</result>
getHotels
URL: http://api.icstrvl.ru/tour-api/getHotels.xml
список отелей
Аргументы
Название |
Тип |
Обязательный |
Описание |
city |
целое число |
нет |
Город вылета [список: getDepartures] |
cnt |
целое число |
да |
Страна [список: getCountries] |
program |
целое число, может быть несколько |
нет |
Курортная программа [список: getPrograms] |
resort |
целое число, может быть несколько |
нет |
Курорт [список: getResorts] |
tour_type |
целое число |
нет |
Тип тура [список: getTourTypes] |
category |
целое число |
нет |
Категория отеля [список: getHotelCategories] |
Возвращает XML типа:
<result>
<hotels>
<hotel id="Идентификатор отеля" category_name="Название категории отеля, строка" name="Название отеля" resort="Идентификатор курорта" category="Количество звезд отеля, целое число"/>
</hotels>
</result>
getMealBasis
URL: http://api.icstrvl.ru/tour-api/getMealBasis.xml
список типов питания
Аргументы
Название |
Тип |
Обязательный |
Описание |
cnt |
целое число |
нет |
Страна [список: getCountries] |
Возвращает все возможные типы питания, но если передан необязательный параметр cnt (страна), то будут возвращены только те типы питания, которые
доступны в данной стране.
Возвращает XML типа:
<result>
<meals>
<meal name="Название типа питания" parent="Идентификатор типа питания, подтипом которого является данное питание, показывается только если указан параметр cnt" id="Идентификатор типа питания"/>
</meals>
</result>
getMeals
URL: http://api.icstrvl.ru/tour-api/getMeals.xml
список всех типов питания
Аргументы
Название |
Тип |
Обязательный |
Описание |
cnt |
целое число |
нет |
Страна [список: getCountries] |
Возвращает все возможные типы питания.
доступны в данной стране.
Возвращает XML типа:
<result>
<meals>
<meal id="Идентификатор типа питания" name="Название типа питания"/>
</meals>
</result>
getMinHotelPrices
URL: http://api.icstrvl.ru/tour-api/getMinHotelPrices.xml
получение минимальных цен на отели страны
Аргументы
Название |
Тип |
Обязательный |
Описание |
city |
целое число |
да |
Город вылета [список: getDepartures] |
cnt |
целое число |
да |
Страна [список: getCountries] |
duration |
целое число |
да |
Продолжительность тура |
date |
дата, формат YYYY-MM-DD |
да |
Дата вылета |
ad |
целое число |
да |
Количество взрослых |
ch |
целое число |
нет |
Количество детей |
resort |
целое число, может быть несколько |
нет |
Курорт [список: getResorts] |
hotel |
целое число, может быть несколько |
нет |
Отель [список: getHotels] |
chage |
целое число, может быть несколько |
нет |
Возраст детей |
infant |
целое число |
нет |
Инфант |
warranty |
целое число |
нет |
Только туры на гарантии, по умолчанию: 0 |
smpl |
целое число |
нет |
Если параметр установлен, то будут искаться туры только с единственным проживанием в составе |
Метод позволяет получить минимальные цены на все отели страны по всем
имеющимся питаниям на определенную дату вылета, продолжительность и проживание
(количество взрослых и детей).
Ценовые предложения сгруппированны по отелям.
Возвращает XML типа:
<result>
<hotels currency="Название валюты страны">
<hotel name="Название отеля" resort="Идентификатор курорта" cat_name="Название категории отеля" id="Идентификатор отеля" cat="Идентификатор категории отеля">
<tour ch_age="Возраст детей" date="Дата вылета, формат YYYY-MM-DD" infant="Количество инфантов" ch="Количество детей" ticket_status_business="Идентификатор статуса билета бизнес-класса" id="Идентификатор тура" price_rur="Стоимость пакета в рублях по курсу на день поиска" nights="Количество ночей" program="Идентификатор курортной программы" ad="Количество взрослых" ticket_status_econom="Идентификатор статуса билета эконом-класса" can_book="Возможность бронирования тура на момент поиска: 1 - да, 0 - нет" price="Стоимость пакета в валюте страны">
<hotel_part status="Идентификатор статуса данного отеля" hotel_id="Идентификатор отеля" hotel_cat_name="Название категории отеля" meal_name="Название типа питания" duration="Количество ночей в этом отеле" resort_name="Название региона" type="Тип проживания, MAIN - основное" date1="Дата начала проживания в данном отеле" hotel_cat="Идентификатор категории отеля" room="Название типа комнаты в отеле" hotel_name="Название отеля" resort="Идентификатор региона" meal="Идентификатор типа питания в данном отеле" date2="Дата окончания проживания в данном отеле"/>
<tarif>название тарифа</tarif>
<isFlightIncluded>Включен или нет перелет, true - да, false - нет, если нет тега, то не включен</isFlightIncluded>
<isInsuranceIncluded>Включена или нет страховка, true - да, false - нет, если нет тега, то не включена</isInsuranceIncluded>
<isTransferIncluded>Включен или нет трансфер, true - да, false - нет, если нет тега, то не включен</isTransferIncluded>
<isInnerFlightIncluded>Включен или нет внутренний перелет, true - да, false - нет, если нет тега, то не включен</isInnerFlightIncluded>
<isAccommodationIncluded>Включено или нет проживание, true - да, false - нет, если нет тега, то не включено</isAccommodationIncluded>
</tour>
</hotel>
</hotels>
</result>
getOrderDocument
URL: http://api.icstrvl.ru/tour-api/getOrderDocument.xml
скачать документ по заявке
Аргументы
Название |
Тип |
Обязательный |
Описание |
aid |
строка |
да |
Идентификатор сессии |
id |
целое число |
да |
Идентификатор документа, полученный из метода getOrderInfo |
getOrderInfo
URL: http://api.icstrvl.ru/tour-api/getOrderInfo.xml
получить информацию по заявке
Аргументы
Название |
Тип |
Обязательный |
Описание |
aid |
строка |
да |
Идентификатор сессии |
id |
целое число |
да |
Идентификатор заявки, полученный из метода getOrdersList |
Метод возвращает информацию по заявке. Требуется авторизация.
Возвращает XML типа:
<result>
<agency>Строка - Название агентства</agency>
<order view_id="Идентификатор заявки для просомтра на web" id="Идентификатор заявки">
<dates book="Дата бронирования" end="Дата окончания тура" begin="Дата начала тура"/>
<clients>
<client id="Идентификатор клиента">
<name>Имя клиента</name>
<birth_date>Дата рождения</birth_date>
<gender>Пол клиента</gender>
<passport end="Дата окончания паспорта" begin="Дата начала паспорта">Номер паспорта</passport>
<citizenship id="Идентификатор">Назавание гражданства</citizenship>
<visa_status id="Идентификатор из справочника
VisaStatus">Название статуса визы</visa_status>
</client>
</clients>
<content>
<part date_begin="Дата начала" description="Описание" clinet="Идентификатор клиента" status="Название статуса" type="Название типа части тура" date_end="Дата окончания" status_id="Идентификатор статуса"/>
</content>
<status status="статус заявки в целом">
<room id="Идентификатор из справочника
RoomStatus">Название статуса комнаты</room>
<ticket part="ID части тура" id="Идентификатор из справочника
TicketStatus">Название статуса билета</ticket>
</status>
<payment currency="название валюты">
<to_pay>Стоимость тура</to_pay>
<paid>Оплачено</paid>
<packet_price>Полная стоимость пакета</packet_price>
<pay_untill>заплатить до</pay_untill>
<surcharges_amount>сумма доплат</surcharges_amount>
<invoice>ссылка на скачивание счета</invoice>
</payment>
<documents status="Статус документов">
<document type="Название типа документа" uploaded="Время последней выгрузки файла, если отсутствует, то либо не загружалось, либо документ обновлен" id="Идентификатор файла" client="Идентификатор клиента, если документ привязан к конкретному туристу" type_id="Идентификатор типа документа, справочник:
DocumentType" size="Размер в байтах"/>
</documents>
</order>
</result>
document.status - возможные значения:
- unavailable - документы недоступны по данной заявке
- forbidden - скачивание документов запрещено (неполная оплата, например)
- expected - документы ожидаются, еще не готовы
- available - документы готовы и доступны для скачивания, но еще не скачивались
- updated - доступны для скачивания обновленные версии документов
- downloaded - актуальные версии документов были загружены пользователем
status.status - возможные значения:
- approved - заявка подтверждена
- processing - заявка в обработке
- canceled - заявка аннулирована
NB! Для некоторых заявок тег, описывающий услугу в составе тура -
content.part,
может иметь, в зависимости от типа услуг, дополнительные атрибуты.
Перелет:
- num - номер рейса
- class - код класса обслуживания
- departure - время вылета
- arrival - время прилета
- aircompany - название авиакомпании
- aircompany_iata - IATA код авиакомпании
- departure_ap - аэропорт вылета
- departure_ap_iata - IATA код аэропорта вылета
- arrival_ap - аэропорт прилета
- arrival_ap_iata - IATA код аэропорта прилета
Страховка:
- coverage - покрытие
- franchise - франшиза
- insurer - название компании страховщика
- currency - валюта страховки
Трансфер:
- transfer_type - тип трансфера (group, individual)
Проживание
Добавляются теги:
- room
- id - идентификатор комнаты
- name - название комнаты
- hotel - идентификатор отеля
- hotel_name - название отеля
- hotel_category - категория отеля
- resort - идентификатор курорта
- resort_name - название курорта
- country - идентификатор страны
- country_name - название страны
- meal
- id - идентификатор питания
- name - название питания
- accomodation
- id - идентификатор размещения
- name - название размещения
- adults - количество врослых
- children - количество детей
getOrderMessages
URL: http://api.icstrvl.ru/tour-api/getOrderMessages.xml
получить переписку по заявке
Аргументы
Название |
Тип |
Обязательный |
Описание |
aid |
строка |
да |
Идентификатор сессии |
id |
целое число |
да |
Идентификатор заявки, полученный из метода getOrdersList |
Метод возвращает переписку по заявке. Требуется авторизация.
Возвращает XML типа:
<result>
<agency>Строка - Название агентства</agency>
<messages order="Идентификатор заявки">
<message date="Дата отправки сообщения" id="Идентификатор сообщения" sender="Тип отправителя: manager - менеджер туроператора, agency - менеджер агентства" manager_name="Имя менеджера туроператора, если sender=manager">Текст сообщения</message>
</messages>
</result>
getOrdersList
URL: http://api.icstrvl.ru/tour-api/getOrdersList.xml
получить список заявок для агентства
Аргументы
Название |
Тип |
Обязательный |
Описание |
aid |
строка |
да |
Идентификатор сессии |
creationDateFrom |
дата, формат YYYY-MM-DD |
нет |
Дата создания заявки, начало интервала поиска |
creationDateTo |
дата, формат YYYY-MM-DD |
нет |
Дата создания заявки, окончание интервала поиска |
startDateFrom |
дата, формат YYYY-MM-DD |
нет |
Дата начала действия заявки, начало интервала поиска |
startDateTo |
дата, формат YYYY-MM-DD |
нет |
Дата начала действия заявки, окончание интервала поиска |
cnt |
целое число |
нет |
Страна заявки [список: getCountries] |
Метод возвращает список заявок агентства. Если не указан ни один из
необязательных параметров, то будут возвращены 30 заявок, последних по дате
бронирования.
Возвращает XML типа:
<result>
<agency>Строка - Название агентства</agency>
<INN>Строка - ИНН агентства</INN>
<orders count="Количество найденных заявок">
<order bookdate="Дата бронирования" persons="Количество туристов в заявке" end="Дата окончания действия заявки" updated="Время последнего изменения" id="Идентификатор заявки" nights="Количество ночей в заявке" title="Название заявки, как оно выводится в личном кабинете" cnt="Идентификатор страны" begin="Дата начала действия заявки"/>
</orders>
</result>
getPricesByHotel
URL: http://api.icstrvl.ru/tour-api/getPricesByHotel.xml
поиск минимальных цен в отелях
Аргументы
Название |
Тип |
Обязательный |
Описание |
city |
целое число |
да |
Город вылета [список: getDepartures] |
cnt |
целое число |
да |
Страна [список: getCountries] |
program |
целое число, может быть несколько |
нет |
Курортная программа [список: getPrograms] |
resort |
целое число, может быть несколько |
нет |
Курорт [список: getResorts] |
hotel |
целое число, может быть несколько |
нет |
Отель [список: getHotels] |
tour_type |
целое число |
нет |
Тип тура [список: getTourTypes] |
category |
целое число, может быть несколько |
нет |
Категория отеля [список: getHotelCategories] |
meal |
целое число, может быть несколько |
нет |
Тип питания [список: getMealBasis] |
duration |
целое число, может быть несколько |
нет |
Продолжительность тура |
duration_from |
целое число, может быть несколько |
нет |
Задает нижнюю границу продолжительности тура. Отменяет действие параметра duration |
duration_to |
целое число, может быть несколько |
нет |
Задает верхнюю границу продолжительности тура. Отменяет действие параметра duration |
date1 |
дата, формат YYYY-MM-DD |
да |
Диапазон поиска туров: дата начала |
date2 |
дата, формат YYYY-MM-DD |
да |
Диапазон поиска туров: дата окончания |
ad |
целое число |
да |
Количество взрослых |
ch |
целое число |
нет |
Количество детей |
chage |
целое число, может быть несколько |
нет |
Возраст детей |
infant |
целое число |
нет |
Инфант: 0 есть, 1 - нет |
max_price |
целое число |
нет |
Максимальная цена тура |
cur |
целое число |
нет |
Используется только вместе с параметром max_price. Указывает в какой валюте задана максимальная цена тура: 0 - рубли, 1 - валюта страны |
warranty |
целое число |
нет |
Если указан, то ищутся только туры с отелями на гарантии и с доступными билетами |
smpl |
целое число |
нет |
Если параметр установлен, то будут искаться туры только с единственным проживанием в составе |
ground |
целое число |
нет |
Если параметр установлен, то будут искаться туры без перелета (наземное обслуживание), иначе ищутся туры только с перелетом в составе |
Возвращает XML типа:
<result>
<hotels country_name="Название страны" currency="Название валюты страны" country_id="Идентификатор страны">
<hotel cat="Название категории отеля" id="Идентификатор отеля" cat_num="Категория отеля" name="Название отеля">
<resort id="Идентификатор курорта">Название курота</resort>
<boardings>
<board name="Название питания" id="Идентификатор питания">
<price duration="Продолжительность" date="Дата">
<min spo="Идентификатор СПО" book_id="Идентификатор тура" room_name="Название комнаты" room_status="Идентификатор статуса проживания" nights="Количество ночей в отеле" ticket_type="Тип билета: gds - динамический билет из GDS, gnd - наземное обслуживание, blk - блочный билет." is_nrf="Является ли тур невозвратным" nconn="Количество стыковок" program="Идентификатор программы тура" tarif="Название тарифа" room="Идентификатор комнаты" price="Минимальная стоимость"/>
<max price="Максимальная стоимость" room="Идентификатор комнаты" tarif="Название тарифа" program="Идентификатор программы тура" nconn="Количество стыковок" is_nrf="Является ли тур невозвратным" ticket_type="Тип билета: gds - динамический билет из GDS, gnd - наземное обслуживание, blk - блочный билет." nights="Количество ночей в отеле" room_status="Идентификатор статуса проживания" room_name="Название комнаты" book_id="Идентификатор тура" spo="Идентификатор СПО"/>
</price>
</board>
</boardings>
</hotel>
</hotels>
</result>
getPrograms
URL: http://api.icstrvl.ru/tour-api/getPrograms.xml
список всех курортных программ
Аргументы
Название |
Тип |
Обязательный |
Описание |
cnt |
целое число |
нет |
Страна [список: getCountries] |
city |
целое число |
нет |
Город вылета [список: getDepartures] |
tour_type |
целое число |
нет |
Тип тура [список: getTourTypes] |
Возвращает XML типа:
<result>
<programs>
<program id="Идентификатор программы" country="Идентификатор страны" name="Название программы"/>
</programs>
</result>
getResorts
URL: http://api.icstrvl.ru/tour-api/getResorts.xml
список всех курортов страны
Аргументы
Название |
Тип |
Обязательный |
Описание |
city |
целое число |
нет |
Город вылета [список: getDepartures] |
cnt |
целое число |
нет |
Страна [список: getCountries] |
program |
целое число, может быть несколько |
нет |
Курортная программа [список: getPrograms] |
tour_type |
целое число |
нет |
Тип тура [список: getTourTypes] |
Возвращает XML типа:
<result>
<resorts>
<resort name="Название курорта" country="Идентификатор страны" id="Идентификатор курорта"/>
</resorts>
</result>
getSPOList
URL: http://api.icstrvl.ru/tour-api/getSPOList.xml
информация об актуальных СПО
Аргументы
Название |
Тип |
Обязательный |
Описание |
city |
целое число |
нет |
Город вылета [список: getDepartures] |
cnt |
целое число |
нет |
Страна [список: getCountries] |
program |
целое число |
нет |
Программа [список: getPrograms] |
Возвращает XML типа:
<result>
<spos>
<spo city="Идентификатор города вылета" last-modified="Дата последнего изменения, формат YYYY-MM-DD HH:MM:SS" program="Идентификатор курортной программы" country="Идентификатор страны" id="Идентификатор СПО" num="Название СПО">
<dates>
<date>Дата вылета, формат YYYY-MM-DD</date>
</dates>
<links>
<html>Ссылка на СПО в формате HTML</html>
<tourml>Ссылка на СПО в формате TourML</tourml>
</links>
</spo>
</spos>
</result>
getSPOPartTypes
URL: http://api.icstrvl.ru/tour-api/getSPOPartTypes.xml
список типов частей тура
Возвращает XML типа:
<result>
<spo_part_types>
<spo_part_type id="Идентификатор типа" name="Название типа"/>
</spo_part_types>
</result>
getTicketStatuses
URL: http://api.icstrvl.ru/tour-api/getTicketStatuses.xml
список статусов билетов
Возвращает XML типа:
<result>
<ticket_statuses>
<ticket_status name="Название статуса" persons="Максимальное количество людей в туре, которое если не указано, то не ограничено" id="Идентификатор статуса"/>
</ticket_statuses>
</result>
getTourInfo
URL: http://api.icstrvl.ru/tour-api/getTourInfo.xml
информация о составе тура
Аргументы
Название |
Тип |
Обязательный |
Описание |
tour_id |
строка |
да |
Id тура [список: getTours] |
Возвращает XML типа:
<result>
<tour id="Идентификатор тура" currency="Название валюты" date="Дата вылета, формат YYYY-MM-DD" city="Город вылета" can_book="Возможность бронирования: 1 - да, 0 - нет">
<accomodation>
<name>Название размещения</name>
<adults n="Количество взрослых в туре"/>
<kids n="Количество взрослых в туре" age="Возраст ребенка, например, '2-11'"/>
</accomodation>
<flight infant_price="Сумма доплаты за инфанта" type="Тип рейса: gds - динамический из GDS, blk - блочный." ticket="Статус билета" ticket_name="Название статуса билета" class="Класс перелета" flight_back="Идентификатор обратного рейса" flight="Название рейса" flight_to="Идентификатор прямого рейса">
<schedule ap1_iata="IATA код аэропорта вылета" flight_name="Название рейса" date="Дата вылета" ap2_iata="IATA код аэропорта прилета" flight="Идентификатор рейса" next_flight="Идентификатор стыковочного рейса" baggage_weight="Вес оплаченного багажа (если есть информация)" oper_company="Название авиакомпании, которая выполняет рейс" oper_company_iata="IATA код авиакомпании, которая выполняет рейс" company="Название авиакомпании" time1="Время вылета" fake_id="Если присутствует, означает что flight содержит несуществующий идентификатор рейса" ap1="Название аэропорта вылета" baggage_places="Количество мест оплаченного багажа (если есть информация), если значение равно 0, то багаж за доп плату" time2="Время прилета" ap2="Название аэропорта прилета" date2="Дата прибытия" oper_flight="Рейс компании, которая выполняет рейс">
<meal description_ru="Описание питания на русском" description="Описание питания" code="Код питания"/>
</schedule>
<option flight_back="Идентификатор обратного рейса" flight="Название рейса на замену" class="Класс перелета" flight_to="Идентификатор прямого рейса" ticket_name="Название статуса билета" price="Стоимость замены" ticket="Статус билета" id="Идентификатор замены рейса">
<schedule ap1_iata="IATA код аэропорта вылета" flight_name="Название рейса" date="Дата вылета" ap2_iata="IATA код аэропорта прилета" flight="Идентификатор рейса" next_flight="Идентификатор стыковочного рейса" baggage_weight="Вес оплаченного багажа (если есть информация)" oper_company="Название авиакомпании, которая выполняет рейс" oper_company_iata="IATA код авиакомпании, которая выполняет рейс" company="Название авиакомпании" time1="Время вылета" fake_id="Если присутствует, означает что flight содержит несуществующий идентификатор рейса" ap1="Название аэропорта вылета" baggage_places="Количество мест оплаченного багажа (если есть информация), если значение равно 0, то багаж за доп плату" time2="Время прилета" ap2="Название аэропорта прилета" date2="Дата прибытия" oper_flight="Рейс компании, которая выполняет рейс">
<meal description_ru="Описание питания на русском" description="Описание питания" code="Код питания"/>
</schedule>
</option>
</flight>
<price_info>
<price currency="Название валюты">Базовая стоимость пакета без доплат</price>
<tarif>Название тарифа</tarif>
<type>Тип тарифа. NOR - обычный тариф, NRF - невозвратный тариф</type>
</price_info>
<content>
<part date1="Дата начала оказания услуги" franshise="Франшиза, только для страховки" type="Идентификатор типа услуги" coverage="Покрытие, только для страховки" name="Название части тура" date2="Дата окончания оказания услуги" id="Идентификатор части тура">
<option id="Идентификатор замены" name="Название услуги на замену" coverage="Покрытие, только для страховки" price="Стоимость замены" franshise="Франшиза, только для страховки"/>
<info>
<hotel id="Идентификатор отеля" status="Идентификатор статуса отеля" room="Название типа комнаты отеля"/>
<country id="Идентификатор страны"/>
<resort id="Идентификатор курорта"/>
<meal id="Идентификатор типа питания"/>
</info>
</part>
</content>
<description>Описание тура, CDATA</description>
<route>Маршрут, CDATA</route>
<surcharges>
<surcharge type="Тип доплаты: m - обязательная, o - необязательная" price="Стоимость доплаты в валюте страны, если этот атрибут отсутствует, это означает, что стоимость нужно уточнять у менеджера" name="Название доплаты" id="Идентификатор доплаты"/>
</surcharges>
<extra_services>
<extra_service group="Идентификатор группы доп. услуг. Если отсутствует, то дополнительная услуга не принадлежит группе." type="Тип услуги: m - обязательная, o - необязательная, gm - одна из услуг группы должна быть обязательно добавлена в тур (идентификатор группы указан в атрибуте group)" date1="Дата начала оказания услуги" price="Стоимость доплаты за услугу в валюте страны" name="Название дополнительной услуги" id="Идентификатор дополнительной услуги" date2="Дата окончания оказания услуги"/>
</extra_services>
</tour>
</result>
Теги surcharges, extra_services могут отсутствовать в
зависимости от наличия доплат или дополнительных услуг соответственно.
Тег info внутри тега part появляется только в том случае,
если описываемая часть тура является проживанием.
Внимание! Если в тегах option, surcharge или
extra_service отсутствует атрибут price, то это означает,
что стоимость данной доплаты или услуги нужно уточнять у менеджера.
getTourPrice
URL: http://api.icstrvl.ru/tour-api/getTourPrice.xml
определение окончательной стоимости тура без бронирования
Аргументы
Название |
Тип |
Обязательный |
Описание |
aid |
строка |
да |
Идентификатор сессии |
tour_id |
строка |
да |
Id тура [список: getTours] |
data |
строка в формате JSON |
нет |
Данные для бронирования |
infant |
целое число |
нет |
Присутствует ли инфант в заявке |
Метод позволяет получить стоимость тура и суммы комиссии для агентства.
Основная информация, необходимая для бронирования тура, передается в параметре
data, которая представляет собой строку формата JSON. Описание формата
строки аналогично описанию в методе makeOrder,
за исключением того, что
наличие массива clients не является обязательным.
Возвращает XML типа:
<result>
<tour currency="Валюта" id="Идентификатор тура">
<price total="Стоимость тура для агентства" commission_amount="Сумма комиссии" packet_price="Цена пакета" commission="Процент комиссии"/>
</tour>
</result>
getTourTypes
URL: http://api.icstrvl.ru/tour-api/getTourTypes.xml
список всех типов тура в зависимости от страны и города вылета
Аргументы
Название |
Тип |
Обязательный |
Описание |
city |
целое число |
нет |
Город вылета [список: getDepartures] |
cnt |
целое число |
нет |
Страна [список: getCountries] |
Возвращает XML типа:
<result>
<tour_types>
<tour_type name="Название типа" id="Идентификатор типа"/>
</tour_types>
</result>
getTours
URL: http://api.icstrvl.ru/tour-api/getTours.xml
поиск туров
Аргументы
Название |
Тип |
Обязательный |
Описание |
city |
целое число |
да |
Город вылета [список: getDepartures] |
cnt |
целое число |
да |
Страна [список: getCountries] |
program |
целое число, может быть несколько |
нет |
Курортная программа [список: getPrograms] |
resort |
целое число, может быть несколько |
нет |
Курорт [список: getResorts] |
hotel |
целое число, может быть несколько |
нет |
Отель [список: getHotels] |
tour_type |
целое число |
нет |
Тип тура [список: getTourTypes] |
category |
целое число, может быть несколько |
нет |
Категория отеля [список: getHotelCategories] |
meal |
целое число, может быть несколько |
нет |
Тип питания [список: getMealBasis] |
duration |
целое число, может быть несколько |
нет |
Продолжительность тура |
duration_from |
целое число, может быть несколько |
нет |
Задает нижнюю границу продолжительности тура. Отменяет действие параметра duration |
duration_to |
целое число, может быть несколько |
нет |
Задает верхнюю границу продолжительности тура. Отменяет действие параметра duration |
date1 |
дата, формат YYYY-MM-DD |
да |
Диапазон поиска туров: дата начала |
date2 |
дата, формат YYYY-MM-DD |
да |
Диапазон поиска туров: дата окончания |
ad |
целое число |
да |
Количество взрослых |
ch |
целое число |
нет |
Количество детей |
chage |
целое число, может быть несколько |
нет |
Возраст детей |
infant |
целое число |
нет |
Инфант: 0 есть, 1 - нет |
hotel_nonstop |
целое число |
нет |
Если указан, то ищутся только туры с отелями не в стопе |
flight_nonstop |
целое число |
нет |
Если указан, то ищутся только туры, у которых есть доступные билеты |
max_price |
целое число |
нет |
Максимальная цена тура |
cur |
целое число |
нет |
Используется только вместе с параметром max_price. Указывает в какой валюте задана максимальная цена тура: 0 - рубли, 1 - валюта страны |
page |
целое число |
нет |
Страница поиска |
pagesize |
целое число |
нет |
Максимальное количество туров на одной странице, по умолчанию 50, максимально 100 |
warranty |
целое число |
нет |
Если указан, то ищутся только туры с отелями на гарантии и с доступными билетами |
smpl |
целое число |
нет |
Если параметр установлен, то будут искаться туры только с единственным проживанием в составе |
ground |
целое число |
нет |
Если параметр установлен, то будут искаться туры без перелета (наземное обслуживание), иначе ищутся туры только с перелетом в составе |
Возвращает XML типа:
<result>
<tours prev_page="Номер предыдущей страницы результатов" page="Номер страницы результатов" currency="Название валюты страны" total="Общее количество найденных туров. Аттрибут доступен только на последней странице поиска" next_page="Номер следующей страницы результатов">
<tour ticket_status_business="Идентификатор статуса билета бизнес-класса" date="Дата вылета, формат YYYY-MM-DD" infant_price_rur="Стоимость доплаты за инфанта в рублях по курсу на день поиска, если запрошена" ticket_status_econom="Идентификатор статуса билета эконом-класса" nights="Количество ночей" price_rur="Стоимость пакета в рублях по курсу на день поиска" program="Идентификатор курортной программы" ch="Количество детей" ch_age="Возраст детей" infant_price="Стоимость доплаты за инфанта в валюте страны, если запрошена" price="Стоимость пакета в валюте страны" can_book="Возможность бронирования тура на момент поиска: 1 - да, 0 - нет" id="Идентификатор тура" ticket_type="Тип билета: gds - динамический билет из GDS, gnd - наземное обслуживание, blk - блочный билет." ad="Количество взрослых" nconn="Количество стыковок в билете">
<hotel meal_name="Название типа питания" duration="Количество ночей в этом отеле" status="Идентификатор статуса данного отеля" meal="Идентификатор типа питания в данном отеле" cat="Идентификатор категории отеля" id="Идентификатор отеля" cat_name="Название категории отеля" date2="Дата окончания проживания в данном отеле" type="Тип проживания, MAIN - основное" resort_name="Название региона" date1="Дата начала проживания в данном отеле" name="Название отеля" room="Название типа комнаты в отеле" resort="Идентификатор региона"/>
<tarif till="Дата, до которой действует ранне бронирование" early_booking="Если присутствует, то тариф раннего бронирования">название тарифа</tarif>
<tarif_type>Тип тарифа. NOR - обычный тариф, NRF - невозвратный тариф</tarif_type>
<accommodation>
<name>Название</name>
<adults>Кол-во взрослых</adults>
<kids>Кол-во детей</kids>
<infant>Кол-во инфантов</infant>
</accommodation>
</tour>
</tours>
</result>
makeOrder
URL: http://api.icstrvl.ru/tour-api/makeOrder.xml
бронирование заявки
Аргументы
Название |
Тип |
Обязательный |
Описание |
aid |
строка |
да |
Идентификатор сессии |
tour_id |
строка |
да |
Id тура [список: getTours] |
manager |
строка |
да |
Менеджер агентства |
payment_type |
целое число |
да |
Тип оплаты: 1 - наличный расчет, 2 - безналичный расчет |
data |
строка в формате JSON |
да |
Данные для бронирования |
comment |
строка |
нет |
Комментарии к заказу |
check_only |
целое число |
нет |
Если передан этот параметр, то бронирование производится не будет (для отладки) |
Метод позволяет бронировать туры, которые можно найти с помощью метода
getTours.
Основная информация, необходимая для бронирования тура, передается в параметре
data, которая представляет собой строку формата JSON.
Описание данных для бронирования, параметр data
Предположим, что TOUR - это один из тегов tour, которые возвращаются
методом getTours.
Тогда запись TOUR.flight.option.id будет
означать, что нужно взять значение атрибута id, тега option,
который является
узлом тега flight, который, в свою очередь, является узлом тега
tour, который мы получили в выборке метода.
{
"change_flight": "Идентификатор замены рейса, берется из TOUR.flight.option.id",
"change_part": [
# Массив объектов, которые указывают какую замену в какой части тура следует произвести
#
{
"part_id": "Идентификатор части тура, в которой происходит замена, TOUR.content.part.id",
"change_id": "Идентификатор замены, TOUR.content.part.option.id"
},
...
],
"surcharges": [ "Массив идентификаторов доплат, TOUR.surcharges.surcharge.id" ],
"extra_charges": [ "Массив идентификаторов дополнительных услуг, TOUR.extra_services.extra_service.id" ],
"phone": "Телефон для экстренной связи c туристами. Формат: +X(XXX)XXX-XXXX",
"email": "E-mail адрес для экстренной связи c туристами",
"clients": [
# Массив объектов, которые содержат данные о туристах в заявке
# количество элементов в массиве должно соответствовать количеству
# туристов в туре, TOUR.accomodation.adults.n + TOUR.accomodation.kids.n
#
{
"surname": "Фамилия туриста латинскими буквами",
"name": "Имя туриста латинскими буквами",
"patronymic": "Отчество туриста латинскими буквамиш, требуется только при бронировании внутри России",
"birth_date": "Дата рождения туриста, формат YYYY-MM-DD",
"gender": "Пол туриста (MR - мужской, MRS - женский)",
"citizenship": "Идентификатор гражданства туриста",
"passport_serial": "Серия паспорта, обязательна и учитывается только для российского гражданства, для других будет проигнорирована.",
"passport": "Номер паспорта",
"passport_begin": "Дата начала действия паспорта, формат YYYY-MM-DD",
"passport_end": "Дата окончания действия паспорта, формат YYYY-MM-DD"
},
...
],
}
Обязательным является только массив clients. Все остальные элементы
могут быть пустыми или отсутствовать. Например, если при бронировании
ни в одной части тура не предполагается производить замену, то массив
change_part можно не указывать или передать его пустым, если замена
рейса не планируется, то элемент change_flight передавать не надо,
и так далее.
После того как получен ответ от метода makeOrder, запрос на бронирование
тура поставлен в очередь. Его статус в очереди можно проверить с помощью
метода checkBooking, передав
в него полученный от системы book_id. То есть тур бронируется
не сразу, а в течении некоторого времени. Идентификатор брони можно получить
с помощью метода checkBooking.
Возвращает XML типа:
<result>
<booking book_id="Идентификатор номера бронирования">
<price total="Стоимость тура для агентства" commission_amount="Сумма комиссии" packet_price="Цена пакета" commission="Процент комиссии"/>
</booking>
</result>
Если передан параметр check_only, то бронирование производиться
не будет.
В параметре book_id будет не идентификатор бронирования, а слово
tested.
Так же в случае передачи параметра
check_only в тег
booking
будет добавлен тег
test_letter, который содержит заголовок
(
test_letter.subject), получателя (
test_letter.to)
и тело (
test_letter.body)
письма, которое получает агентство при бронировании. Само письмо не отсылается.
Получение информации об остановках продаж
Информацию об остановках продаж в отелях можно получать с помощью XML
файла, который находится по адресу:
URL:
http://api.icstrvl.ru/tour-api/data/stopsales.xml
Данные обновляются не чаще, чем раз в три минуты.
Файл состоит из двух основных частей - тег references - справочник и тег data - данные об остановках.
Таким образом загрузка дополнительных справочников не требуется.
Если в каком либо теге, который описывает запись справочника, стоит
атрибут fake равный true, то ID данного элемента используется
только внутри этого файла.
Описание XML:
<stopsales generated="Время формирования, формат YYYY-MM-DD HH:MM:SS">
<references>
<states>
<state name="Название страны" id="Идентификатор страны"/>
</states>
<towns>
<town state="Страна, к которой относится курорт" name="Название курорта" id="Идентификатор курорта"/>
</towns>
<categories>
<category name="Название категории отеля" id="Идентификатор категории"/>
</categories>
<hotels>
<hotel category="Идентификатор категории отеля" name="Название отеля" town="Идентификатор курорта" id="Идентификатор отеля"/>
</hotels>
<rooms>
<room id="Идентификатор типа комнаты" name="Название типа комнаты"/>
</rooms>
</references>
<data>
<item room="Идентификатор типа комнаты" hotel="Идентификатор отеля" dateend="Дата окончания действия остановки продажи (YYYY-MM-DD)" datebeg="Дата начала действия остановки продажи (YYYY-MM-DD)" checkin="Всегда true"/>
</data>
</stopsales>
Получение информации о расписании и наличии билетов на рейсах
ВНИМАНИЕ!!! Данное расписание и наличие действительно только
для авиабилетов, которые продаются в составе тура.
Если вас интересует описание шлюза продаж чартерных авиабилетов, то его можно найти здесь.
Информацию о рейсах можно получать с помощью XML
файла, который находится по адресу:
URL:
http://api.icstrvl.ru/tour-api/data/flights.xml
Данные обновляются не чаще, чем раз в двадцать минут.
Файл состоит из двух основных частей: тег references - справочник и тег data - данные об остановках.
Таким образом, загрузка дополнительных справочников не требуется.
Если в каком-либо теге, который описывает запись справочника, стоит
атрибут fake, равный true, то ID данного элемента используется
только внутри этого файла.
Описание XML:
<flights generated="Время формирования, формат YYYY-MM-DD HH:MM:SS">
<references>
<states>
<state id="Идентификатор страны" name="Название страны"/>
</states>
<towns>
<town id="Идентификатор курорта" state="Страна, к которой относится курорт" name="Название курорта"/>
</towns>
<ports>
<port name="Название аэропорта" alias="Код аэропорта" town="Идентификатор курорта" id="Идентификатор аэропорта"/>
</ports>
<companies>
<company id="Идентификатор авиакомпании" name="Название авиакомпании"/>
</companies>
<transports>
<transport name="Название типа транспорта" id="Идентификатор типа транспорта"/>
</transports>
<classes>
<class id="Идентификатор класса обслуживания" name="Название класса обслуживания"/>
</classes>
<flights>
<flight id="Идентификатор рейса" transport="Идентификатор типа транспорта" company="Идентификатор авиакомпании" name="Название рейса"/>
</flights>
</references>
<data>
<item date="Дата вылета, YYYY-MM-DD" class="Идентификатор класса обслуживания">
<out flight="Идентификатор прямого рейса">
<nights>
<night seats="наличие билетов на данную породолжительность тура" value="продолжительность тура"/>
</nights>
<from time="Время вылета" port="Идентификатор аэропорта вылета"/>
<to time="Время прибытия" port="Идентификатор аэропорта прибытия"/>
</out>
<back flight="Идентификатор обратного рейса">
<from port="Идентификатор аэропорта вылета" time="Время вылета"/>
<to time="Время прибытия" port="Идентификатор аэропорта прибытия"/>
</back>
</item>
</data>
</flights>
Один тег item описывает пару рейсов (прямой и обратный), дату вылета и класс обслуживания.
Тег out внутри описывает прямой рейс.
Тег back описывает обратный рейс в паре.
Не существует отдельно статуса на билет туда и статуса на билет обратно.
Статус устанавливается сразу на пару рейсов (прямой и обратный) на каждую
из возможных продолжительностей (3, 7, 14 ночей и тд).
Теги night внутри описывают возможную продолжительность тура при
вылете данными рейсами и наличие билетов при выбранной продолжительности.
Возможные значения:
- ok - билетов много
- few - билетов осталось мало
- no - билеты закончились
Тег
night присутствует в описании только прямого рейса (
out)
Список изменений
Версия 1.21 24.08.2024
Версия 1.20 06.04.2024
- Метод getPricesByHotel: добавлено название тарифа (tarif) для минимального и максимального тура.
Версия 1.19 27.12.2022
- Метод getPricesByHotel: добавлено количество ночей в отеле (nights) для минимального и максимального тура.
Версия 1.18 04.10.2022
Версия 1.17 31.01.2022
- Метод getPricesByHotel: добавлен идентификатор программы минимального и максимального тура.
Версия 1.16 03.11.2021
- Метод getTourInfo: в описании доп услуги extra_service появился необязательный идентификатор группы услуг и новый тип услуги gm
Версия 1.15 18.10.2021
- Метод getPricesByHotel: добавлен идентификатор статуса проживания (result.hotels.hotel.boardings.boarding.price.min.room_status и result.hotels.hotel.boardings.boarding.price.max.room_status)
Версия 1.14 13.10.2021
- Метод getTours: добавлен тип билета, включенного в тур (result.tours.tour.ticket_type)
- Метод getTourInfo: добавлен тип билета, включенного в тур (result.tour.flight.type)
Версия 1.13 16.07.2020
Версия 1.12 06.04.2020
Версия 1.11 21.01.2020
- В метод makeOrder в данные для бронирования добавлены параметры email и phone
- В метод getTourInfo добавлена информация типе тарифа price_info.type
- В метод getTourInfo добавлено описание тура tour.description
- В метод getTourInfo добавлено описание маршрута tour.route
- В метод getTours добавлена информация типе тарифа tour.tarif_type
- В метод getTours добавлена информация о проживании tour.accommodation
Версия 1.10 08.08.2016
Версия 1.9 28.12.2015
- в методе getTourInfo добавлена информация о тарифе тура
- в методе getTours добавлена информация о тарифе тура
Версия 1.8 28.11.2014
- в методе getOrderInfo появилась информация о составе тура - тег content и информация по документам заявки тег documents
- появился метод getOrderDocument, который позволяет скачать документы, доступные по заявке
- в методе getOrdersList появился атрибут тега order - updated, в котором указано время последнего изменения информации по заявке
- добавлена возможность выгрузки каталога типов документов по заявке DocumentType - метод getCatalog
Версия 1.7 13.02.2014
- в методе getTours добавлен параметр warranty, который позволяет искать туры только со статусом гарантия и с билетами, доступными для продажи
Версия 1.6 13.12.2013
- в методе getTourInfo в описании расписания рейса добавлен параметр date2 - дата прибытия рейса в пункт назначения
- добавлен метод getTourPrice для определения стоимости тура и комиссии для агентства
- если в результатах метода getTourInfo в доплатах не указан параметр price, то это означает, что цену нужно уточнять у менеджера
Версия 1.5 15.11.2013
- в методе getTourInfo в тег tour добавлен атрибут currency, который отображает валюту страны
- в методе getTourInfo в тег flight добавлен атрибут infant_price, который содержит стоимость доплаты за инфанта
- в методе getTourInfo в тег schedule добавлен атрибут next_flight, который содержит идентификатор стыковочного рейса
Версия 1.4 28.10.2013
Версия 1.3 08.10.2013
- добавлен метод makeOrder для бронирования заявок
- добавлен метод checkBooking для получения информации о бронировании
Версия 1.2 02.10.2013
- добавлен метод getCatalog для выгрузки справочников
- добавлен метод getOrderInfo для получения информации по заявке на бронирование
Версия 1.1 28.08.2013
- в методе getTourInfo в тег flight и option добавлен тег schedule, который описывает расписание рейса
- добавлен метод authorize для авторизации агентства
- добавлен метод getOrdersList для получения списка заявок агентства