API от Travelata.ru

В статье приводится описание запросов к API интернет-магазина туров Travelata.ru, которые возвращают список стран, курортов, отелей и самые дешевые туры. Для работы с Travelata необходимо зарегистрироваться в партнёрской программе Travelpayouts.

Список самых дешевых туров

Запрос возвращает список самых дешевых туров и ссылки на них с группировкой по дням:

https://api-gateway.travelata.ru/statistic/cheapestTours

Данные обновляются в реальном времени.

Внимание! С ростом количества запросов к API будет введена http авторизация для партнёра.

Параметры запроса

  • countries[] — id страны тура (можно получить с помощью запроса Список стран). Поддерживается только одна страна в запросе. При передачи нескольких стран - будет сгенерирована ошибка;
  • departureCity — id города вылета (можно найти в файле Справочник городов вылета для API.xlsx);
  • nightRange[from] — минимальное количество ночей;
  • nightRange[to] — максимальное количество ночей;
  • resorts[] — массив уникальных идентификаторов курортов;
  • meals[] — массив уникальных идентификаторов типов питания;
  • touristGroup[adults] — количество взрослых;
  • touristGroup[kids] — количество детей (от 2 до 11 лет);
  • touristGroup[infants] — количество младенцев (до 2 лет);
  • hotelCategories[] — категория отеля (используется для фильтрации по категории отелей);
  • ratingMin — минимально допустимый рейтинг отеля. Дополняет ограничения по параметру hotelCategories;
  • ratingMax — максимально допустимый рейтинг отеля. Дополняет ограничения по параметру hotelCategories;
  • checkInDateRange[to], checkInDateRange[from] — период от и до дат заселения в отель.

Важно: Запрос на поиск туров возможен в интервале 30 дней (период между checkInDateRange[from] и checkInDateRange[to]).

Запрос

https://api-gateway.travelata.ru/statistic/cheapestTours?countries[]=92&departureCity=2&nightRange[from]=4&resorts[]=2175&nightRange[to]=10&touristGroup[adults]=2&touristGroup[kids]=0&touristGroup[infants]=0&hotelCategories[]=2&hotelCategories[]=7&checkInDateRange[from]=2019-10-23&checkInDateRange[to]=2019-10-24

Ответ

{
"data":[
{
"tourIdentity":"ulHelbi9j08fj/5DPjePmTOBgvXglYJnHuH+dYMmo//E2YBR2GAoKYahXFq2JI4Z56E5",
"price":42994,
"publishedAt":"2020-06-04 14:23:09",
"checkinDate":"2020-10-12",
"nights":4,
"hotelId":107259,
"mealId":2,
"operatorId":55,
"resortId":2175,
"expired":"2020-06-04 16:23:08",
"tourPageUrl":"https://travelata.ru/hotel/107259/tourPage?identity=ulHelbi9j08fj%2F5DPjePmTOBgvXglYJnHuH%2BdYMmo%2F%2FE2YBR2GAoKYahXFq2JI4Z56E5",
"searchPageUrl":"https://travelata.ru/search#?fromCity=2&toCountry=92&toCity=2175&dateFrom=09.10.2020&dateTo=15.10.2020&nightFrom=4&nightTo=10&adults=2&kids=0&infants=0&hotelClass=2.7&meal=all",
"hotelName":"Naturella Hotel & Apart",
"hotelCategory":2,
"hotelCategoryName":"2*",
"hotelRating":"4.36548",
"hotelPreview":"http://images3.travelatacdn.ru/upload/2017_18/content_hotel_590b06f3c2b942.23460800.jpg?width=368&height=265"
}
],
"success":true,
"message":null
}

Параметры ответа

  • data — данные ответа:
    • tourIdentity — идентификатор тура;
    • price — стоимость тура (в рублях);
    • publishedAt — дата публикации тура;
    • checkinDate — дата заселения;
    • nights — количество ночей в туре;
    • hotelId — идентификатор отеля;
    • meailId — идентификатор типа питания;
    • operatorId — идентификатор тур оператора;
    • resortId — идентификатор курорта;
    • expired — дата, до которой доступно данное предложение в системе Travelata.ru;
    • tourPageUrl — ссылка на бронирование конкретного тура;
    • searchUrl — ссылка на страницу с результатами поиска по городу ±3 дня от даты, указанной в checkinDate;
    • hotelName — имя отеля;
    • hotelCategoryName — категория отеля;
    • hotelRating  — категория отеля;
    • hotelPreview — ссылка на превью изображения отеля.
  • success — результат выполнения запроса (true — успешно, false — завершился с ошибкой);
  • message — сообщение об ошибке.

Не забудьте применить к ссылкам генератор! После генератора, приведенная выше ссылка, будет выглядеть примерно так:

https://c18.travelpayouts.com/click?shmarker=78606&promo_id=771&source_type=customlink&type=click&custom_url=https%3A%2F%2Ftravelata.ru%2Fhotel%2F48359%2FtourPage%23%3Fidentity%3DulHelbi%2Bhk8fjP9DPjeFmTCBgvXimYJnCPXvZ5ExqvzG0pZa2GIoKYbCK0isIYEP4tMvnYKsrCIvRxx2HLzVwA%3D%3D

Yaml схема

openapi_2711.yaml

Список стран

Запрос возвращает список стран, представленных в сервисе Travelata.ru.

Запрос

http://api-gateway.travelata.ru/directory/countries

Ответ

{
"data": [
{
"id": 11,
"name": "Беларусь",
"popular": 0
}
],
"success": true,
"message": null
}

Параметры ответа

  • data — массив с полезной информацией:
    • id — уникальный идентификатор страны;
    • name — название страны;
    • popular — внутренний коэффициент популярности от Travelata.ru.
  • success — результат выполнения запроса (true — успешно, false — завершился с ошибкой);
  • message — сообщение об ошибки.

Список курортов

Запрос возвращает список курортов, представленных в сервисе Travelata.ru.

Запрос

http://api-gateway.travelata.ru/directory/resorts

Ответ

{
"data": [
{
"id": 2,
"name": "Гудаута",
"isPopular": false,
"countryId": 1,
"atFiltering": false
}
],
"success": true,
"message": null
}

Параметры ответа

  • data — массив с полезной информацией:
    • id — уникальный идентификатор курорта;
    • name — название курорта;
    • isPopular — является ли курорт популярным по данным Travelata.ru;
    • countryId — уникальный идентификатор страны;
    • atFiltering — есть ли доступные курорты в базе (true — есть, false — нет).
  • success — результат выполнения запроса (true — успешно, false — завершился с ошибкой);
  • message — сообщение об ошибки.

Список отелей

Запрос возвращает список отелей на заданном курорте.

Запрос

http://api-gateway.travelata.ru/directory/resortHotels?resortId=1843

где resortId — уникальный идентификатор курорта.

Ответ

{
"success": true,
"data": [
{
"id": 137188,
"name": "Хостел Юг (Hostel Yug)",
"resortId": 1843,
"hotelCategoryId": 10
}
],
"message": null
}

Параметры ответа

  • data — массив с полезной информацией:
    • id — уникальный идентификатор отеля;
    • name — название отеля;
    • hotelCategoryId — категория отеля;
    • resortId — уникальный идентификатор курорта.
  • success — результат выполнения запроса (true — успешно, false — завершился с ошибкой);
  • message — сообщение об ошибки.

Категории отелей

Запрос возвращает категории отелей.

Запрос

http://api-gateway.travelata.ru/directory/hotelCategories

Ответ

{
"data": [
{
"id": 17,
"name": "Пансионат"
}
],
"success": true,
"message": null
}

Параметры ответа

  • data — массив с полезной информацией:
    • id — уникальный идентификатор категории;
    • name — название категории.
  • success — результат выполнения запроса (true — успешно, false — завершился с ошибкой);
  • message — сообщение об ошибки.

Задать вопросы и внести предложения по работе с API можно здесь: https://forms.gle/4GCqGxJcFyEWfxs78

Была ли эта статья полезной?

Еще есть вопросы? Отправить запрос