API de Vuelos
Calendario de tarifas, búsqueda en 900+ aerolíneas, precio de una oferta, servicios adicionales, creación de pedidos, emisión de billetes, cotización y tramitación de reembolsos.
- Calendario de tarifas
- Búsqueda
- Precio y reglas
- Servicios adicionales (equipaje extra)
- Crear el pedido
- Emitir billetes
- Anular, cancelar y reembolsar
Calendario de tarifas
GET /v1/flights/price-calendar?origin=DXB&destination=LHR&departureFrom=2026-11-01&departureTo=2026-11-30 devuelve la tarifa más barata en caché por día para la ruta, en su moneda, indicando la antigüedad de la caché. Añada returnFrom / returnTo para obtener totales de ida y vuelta por par de fechas, y cabin para restringir la clase. Se sirve desde nuestra caché de precios (es instantáneo y nunca cuenta como búsqueda en proveedores), así que úselo para dibujar un calendario o una franja de «días más baratos» antes de la búsqueda real.
Búsqueda
POST /v1/flights/search con un tramo para solo ida, dos para ida y vuelta y hasta seis para multidestino; número de pasajeros por tipo; una cabina opcional y un número máximo de escalas (maxStops). Con wait=true, la respuesta contiene todas las ofertas una vez que han respondido todos los proveedores; con wait=false recibe un searchId y consulta GET /v1/flights/search/{searchId} con un cursor hasta que complete sea true.
Cada oferta lleva un offerId opaco, el total en su moneda con el desglose por pasajero, tramos → segmentos (aerolínea, número de vuelo, horarios, avión, cabina, equipaje), un resumen de las condiciones de la tarifa y una caducidad. Las ofertas son válidas durante la vida de la sesión de búsqueda (unos 20 minutos).
Precio y reglas
POST /v1/flights/offers/{offerId}/price revalida la tarifa con el proveedor justo antes de confirmar y devuelve el precio confirmado, las tasas y los datos de pasajero que exige la aerolínea (documentos, fechas de nacimiento, viajero frecuente). GET .../fare-rules devuelve el texto de penalizaciones; GET .../ancillaries enumera el equipaje de pago y las opciones que puede añadir al pedido.
Servicios adicionales (equipaje extra)
GET /v1/flights/offers/{offerId}/ancillaries enumera los extras de pago que ofrece la aerolínea en esa tarifa; hoy, franquicias adicionales de equipaje facturado, cada una con una key, piezas / peso y un precio por pasajero. De pago significa que se cobran aparte de la tarifa y se facturan con el pedido, a diferencia de la franquicia incluida que se muestra en la propia oferta.
Para comprarlos, añada ancillaries[] a POST /v1/flights/orders: una entrada por extra con la key y el passengerIndex (índice desde 0 en passengers). Se tarifican, reservan y emiten junto con el pedido y aparecen en los totales de billete del pedido. No se pueden añadir extras a un pedido ya emitido; la selección de asientos seguirá el mismo patrón.
{
"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 }]
}Crear el pedido
POST /v1/flights/orders con el offerId, los pasajeros (nombres como en el pasaporte, tipo, fecha de nacimiento, documento para itinerarios internacionales), un contacto y ancillaries[] opcionales (véase más arriba); añada una Idempotency-Key. Recibe un orderId, el PNR de la aerolínea, el plazo límite de emisión y el estado held. En el sandbox, el pedido llega al sistema de pruebas del proveedor y no se cobra nada; en producción, se reserva el importe del depósito.
Emitir billetes
POST /v1/flights/orders/{orderId}/issue (Idempotency-Key obligatoria) emite los billetes electrónicos y devuelve los números de billete por pasajero. Consulte el pedido en cualquier momento con GET /v1/flights/orders/{orderId}; el estado pasa por held → issued → cancelled/refunded.
Anular, cancelar y reembolsar
GET /v1/flights/orders/{orderId}/refund-quote indica lo que devuelve una cancelación según las reglas de la tarifa (una anulación el mismo día suele ser gratuita). POST /v1/flights/orders/{orderId}/cancel la confirma; el reembolso se abona en el libro mayor de su depósito, visible en el portal para desarrolladores.