Перейти к содержимому

Авиационное API

Календарь тарифов, поиск среди 900+ авиакомпаний, расчёт цены предложения, дополнительные услуги, создание заказа, выписка билетов, расчёт и оформление возвратов.

  1. Календарь тарифов
  2. Поиск
  3. Цена и правила
  4. Дополнительные услуги (дополнительный багаж)
  5. Создание заказа
  6. Выписка билетов
  7. Аннуляция, отмена и возврат

Календарь тарифов

GET /v1/flights/price-calendar?origin=DXB&destination=LHR&departureFrom=2026-11-01&departureTo=2026-11-30 возвращает самый дешёвый закешированный тариф на каждый день по маршруту в вашей валюте, с указанием свежести кеша. Добавьте returnFrom / returnTo для сумм туда и обратно по каждой паре дат и cabin, чтобы ограничить класс. Данные отдаются из нашего кеша цен — мгновенно и без учёта как поиск у поставщика, — поэтому используйте его, чтобы нарисовать календарь или полосу «самые дешёвые дни» перед настоящим поиском.

Цена и правила

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 подтверждает отмену; возврат зачисляется на ваш депозитный реестр и виден в портале разработчика.