Open igor-barsukov opened 7 years ago
MN:
Что сделать:
Сразу после регистрации доступен API, который возвращает цены авиабилетов по заданному направлению (цены из кэша). Также доступен API для экспорта партнёрской статистики, который дайте возможность получить данные по переходам и ПОКУПКАМ в общем в виде, то есть количество человек, перешедших по партнерской ссылке, доход от платных кликов и т.д. Получить информацию о конкретной покупке конкретного пользователя не предоставляется возможным. Более того, для формирования ссылки на сайт агента для совершения покупки необходимо пройти определенную процедуру получения доступа к API поиска авиабилетов
Наиболее интересные возможности открытого API, которые мы можем использовать в рамках нашего проекта
Во всех запросах, кроме первого, в заголовке запроса необходимо указать параметр X-Access-Token со значением токена (доступен в личном кабинет)
Определение местоположения пользователя по IP адресу GET http://www.travelpayouts.com/whereami?locale=ru&callback=useriata&ip=IP_ADDRESS (ip-адрес можно не передавать через параметры, в этом случае он определяется из header запроса) ПРИМЕР ОТВЕТА:
useriata({ "iata":"VOZ", "name":"Воронеж", "country_name":"Россия", "coordinates":"37.6176:55.7558" });
Цены на авиабилеты Возвращает список цен из кэша за последние 48 часов. GET http://api.travelpayouts.com/v2/prices/latest?origin=VOZ&destination=MOW origin - код пункта отправления (база кодов IATA) destination код пункта назначения Достпуна фильтрация по классу перелета. ПРИМЕР ОТВЕТА:
{ "success": true, "data": [ { "show_to_affiliates": true, "trip_class": 0, (0 — Эконом, 1 — Бизнес, 2 — Первый.) "origin": "VOZ", "destination": "MOW", "depart_date": "2017-03-30", "return_date": "2017-04-06", "number_of_changes": 0, (количество пересадок) "value": 5200, (стоимость перелета) "found_at": "2017-03-30T19:28:22+04:00", (время и дата, когда был найден билет) "distance": 451, "actual": true (является ли предложение актуальным) }]}
Популярные направления из города GET http://api.travelpayouts.com/v1/city-directions?origin=VOZ origin - код пункта отправления ПРИМЕР ОТВЕТА:
{ "success": true, "data": { "AER": { "origin": "VOZ", (пункт отправления) "destination": "AER", (код IATA пункта назначения) "price": 7868, (стоимость перелета RUB) "transfers": 1, (количество пересадок) "airline": "S7", "flight_number": 232, "departure_at": "2017-05-23T10:25:00Z", (дата и время отправления) "return_at": "2017-05-29T11:05:00Z", "expires_at": "2017-04-02T16:33:18Z" }}}
Самые дешевые авиабилеты Возвращает самые дешевые билеты без пересадок (билеты возвращаются на рейсы туда-обратно). GET http://api.travelpayouts.com/v1/prices/cheap?origin=MOW&destination=VOZ origin - города вылета destination - город назначения ПРИМЕР ОТВЕТА:
{ "success": true, "data": { "VOZ": { "0": { (номер в результатах выдачи) "price": 5090, (код авиакомпании) "airline": "UT", "flight_number": 197, (номер рейса) "departure_at": "2017-04-27T18:50:00Z", (дата вылета) "return_at": "2017-04-30T21:15:00Z", (дата возвращения) "expires_at": "2017-03-30T20:53:32Z" (дата истечения актуальности найденной цены) }}}}
Нужно написать приложение, представляющее собой REST клиент, которое бы дергало стороннее API интересных нам сайтов (http://www.aviasales.ru/API, https://hotellook.ru/, поискать что-то еще).
Описать то, что удалось извлечь в виде [HTTP method] - [resource URL] - [request body] - [response body].