Aller au contenu

API Vols

Calendrier tarifaire, recherche sur 900+ compagnies aériennes, tarification d’une offre, ajout de services annexes, création d’une commande, émission de billets, devis et traitement des remboursements.

  1. Calendrier tarifaire
  2. Recherche
  3. Tarification et règles
  4. Services annexes (bagages supplémentaires)
  5. Créer la commande
  6. Émettre les billets
  7. Annulation, void et remboursement

Calendrier tarifaire

GET /v1/flights/price-calendar?origin=DXB&destination=LHR&departureFrom=2026-11-01&departureTo=2026-11-30 renvoie le tarif en cache le moins cher par jour pour l’itinéraire, dans votre devise, avec l’ancienneté du cache. Ajoutez returnFrom / returnTo pour obtenir des totaux aller-retour par paire de dates, et cabin pour restreindre la classe. Il est servi depuis notre cache de prix — instantané, et jamais compté comme une recherche fournisseur — utilisez-le donc pour afficher un calendrier ou un bandeau « jours les moins chers » avant la vraie recherche.

Tarification et règles

POST /v1/flights/offers/{offerId}/price revalide le tarif auprès du fournisseur juste avant votre engagement et renvoie le prix confirmé, les taxes et les champs passager exigés par la compagnie (documents, dates de naissance, programme de fidélité). GET .../fare-rules renvoie le texte des pénalités ; GET .../ancillaries liste les bagages et options payants que vous pouvez ajouter à la commande.

Services annexes (bagages supplémentaires)

GET /v1/flights/offers/{offerId}/ancillaries liste les suppléments payants que la compagnie propose sur ce tarif — aujourd’hui des franchises de bagages en soute supplémentaires, chacune avec une clé, un nombre de pièces / un poids et un prix par passager. Payant signifie qu’ils sont tarifés en plus du tarif et facturés avec la commande, contrairement à la franchise incluse affichée sur l’offre elle-même.

Pour les acheter, ajoutez ancillaries[] à POST /v1/flights/orders : une entrée par supplément avec la key et le passengerIndex (index à partir de 0 dans passengers). Ils sont tarifés, réservés et émis avec la commande et apparaissent dans les totaux du billet de la commande. Aucun supplément ne peut être ajouté à une commande dont le billet est déjà émis ; le choix des sièges suivra le même principe.

Commande avec suppléments
{
  "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 }]
}

Créer la commande

POST /v1/flights/orders avec l’offerId, les passagers (noms tels que sur le passeport, type, date de naissance, document pour les itinéraires internationaux), un contact et, en option, ancillaries[] (voir ci-dessus) ; ajoutez une Idempotency-Key. Vous recevez un orderId, le PNR de la compagnie, la date limite d’émission et le statut held. Dans le bac à sable, la commande est transmise au système de test du fournisseur et rien n’est débité ; en production, le montant est réservé sur le dépôt.

Émettre les billets

POST /v1/flights/orders/{orderId}/issue (Idempotency-Key obligatoire) émet les billets électroniques et renvoie les numéros de billet par passager. Consultez la commande à tout moment avec GET /v1/flights/orders/{orderId} ; le statut passe par held → issued → cancelled/refunded.

Annulation, void et remboursement

GET /v1/flights/orders/{orderId}/refund-quote indique ce qu’une annulation rembourse selon les règles tarifaires (un void le jour même est généralement gratuit). POST /v1/flights/orders/{orderId}/cancel la valide ; le remboursement est crédité sur le grand livre de votre dépôt, visible dans le portail développeur.