Авиационное API
Календарь тарифов, поиск среди 900+ авиакомпаний, расчёт цены предложения, дополнительные услуги, создание заказа, выписка билетов, расчёт и оформление возвратов.
- Календарь тарифов
- Поиск
- Цена и правила
- Дополнительные услуги (дополнительный багаж)
- Создание заказа
- Выписка билетов
- Аннуляция, отмена и возврат
Календарь тарифов
GET /v1/flights/price-calendar?origin=DXB&destination=LHR&departureFrom=2026-11-01&departureTo=2026-11-30 возвращает самый дешёвый закешированный тариф на каждый день по маршруту в вашей валюте, с указанием свежести кеша. Добавьте returnFrom / returnTo для сумм туда и обратно по каждой паре дат и cabin, чтобы ограничить класс. Данные отдаются из нашего кеша цен — мгновенно и без учёта как поиск у поставщика, — поэтому используйте его, чтобы нарисовать календарь или полосу «самые дешёвые дни» перед настоящим поиском.
Поиск
POST /v1/flights/search с одним участком для перелёта в одну сторону, двумя — для перелёта туда и обратно, до шести — для сложного маршрута; количество пассажиров по типам; необязательные класс обслуживания и максимальное число пересадок (maxStops). С wait=true ответ содержит все предложения после ответа всех поставщиков; с wait=false вы получаете searchId и опрашиваете GET /v1/flights/search/{searchId} с курсором, пока complete не станет true.
Каждое предложение содержит непрозрачный offerId, итоговую сумму в вашей валюте с разбивкой по пассажирам, участки → сегменты (перевозчик, номер рейса, время, воздушное судно, класс, багаж), сводку условий тарифа и срок действия. Предложения действительны в течение сессии поиска (около 20 минут).
Цена и правила
POST /v1/flights/offers/{offerId}/price повторно проверяет тариф у поставщика непосредственно перед подтверждением и возвращает подтверждённую цену, сборы и поля пассажира, которые требует авиакомпания (документы, даты рождения, программа лояльности). GET .../fare-rules возвращает текст штрафных условий; GET .../ancillaries перечисляет платный багаж и опции, которые можно добавить к заказу.
Дополнительные услуги (дополнительный багаж)
GET /v1/flights/offers/{offerId}/ancillaries перечисляет платные дополнительные услуги, которые авиакомпания предлагает по этому тарифу, — сейчас это дополнительные нормы зарегистрированного багажа, каждая с key, pieces / weight и ценой на пассажира. Платные означает, что они оплачиваются сверх тарифа и выставляются вместе с заказом, в отличие от включённой нормы, показанной в самом предложении.
Чтобы купить их, добавьте ancillaries[] в POST /v1/flights/orders: одна запись на каждую услугу с key и passengerIndex (индекс с нуля в passengers). Они рассчитываются, бронируются и выписываются вместе с заказом и отражаются в итоговых суммах билетов заказа. К заказу, по которому билеты уже выписаны, добавить услуги нельзя; выбор мест будет работать по той же схеме.
{
"offerId": "fo_7Gk2Qp9LcKM5aGqrMQOIzJko",
"passengers": [{ "type": "ADT", "gender": "M", "firstName": "SAM", "lastName": "TRAVELLER", "dateOfBirth": "1990-05-04" }],
"contact": { "email": "[email protected]", "phone": "+971501234567" },
"ancillaries": [{ "key": "BAG20-1", "passengerIndex": 0 }]
}Создание заказа
POST /v1/flights/orders с offerId, пассажирами (имена как в паспорте, тип, дата рождения, документ для международных маршрутов), контактом и необязательным ancillaries[] (см. выше); добавьте Idempotency-Key. Вы получите orderId, PNR авиакомпании, крайний срок выписки и статус held. В sandbox заказ попадает в тестовую систему поставщика и ничего не списывается; в продакшене сумма резервируется на депозите.
Выписка билетов
POST /v1/flights/orders/{orderId}/issue (требуется Idempotency-Key) выписывает электронные билеты и возвращает номера билетов для каждого пассажира. Заказ можно получить в любой момент через GET /v1/flights/orders/{orderId}; статус проходит путь held → issued → cancelled/refunded.
Аннуляция, отмена и возврат
GET /v1/flights/orders/{orderId}/refund-quote показывает, сколько вернётся при отмене по правилам тарифа (аннуляция в тот же день обычно бесплатна). POST /v1/flights/orders/{orderId}/cancel подтверждает отмену; возврат зачисляется на ваш депозитный реестр и виден в портале разработчика.