IA Travels Flight Booking API
Add live international flight booking to your own website — search, book, collect payment and receive the airline PNR — without an airline or GDS integration of your own. This page is the complete technical guide and the rules that apply to every partner using the API.
Live airline fares
Real inventory and pricing on every search
Secure hosted payment
Card and transfer on the IA Travels gateway
PNR webhooks
Booking and ticket events pushed to you
Getting started
1. Request your API key
Email booking@iatravelsglobal.com with your agency name, website, contact person and the HTTPS address that should receive booking webhooks. We issue one key per agency and register your partner code.
2. Authenticate every call
Send your key in the x-api-key header of every request. Keys are server-side secrets: never expose one in front-end code.
POST https://iatravelsglobal.com/functions/partnerApi x-api-key: iat_live_xxxxxxxxxxxxxxxxxxxxxxxx content-type: application/json
All calls are POST requests with a JSON body whose action selects the operation. Responses are JSON; ok: false always carries a human-readable error.
Endpoints
Search live flights search
Returns live fares for the route and date, with a session reference you use for the next steps.
POST https://iatravelsglobal.com/functions/partnerApi
x-api-key: <your key>
content-type: application/json
{
"action": "search",
"from": "LOS",
"to": "LHR",
"departure_date": "2026-12-01",
"return_date": "2026-12-15",
"trip_type": "round_trip",
"adults": 1,
"children": 0,
"infants": 0,
"cabin": "economy"
}{
"ok": true,
"session_ref": "ses_8f3c...",
"currency": "NGN",
"result_count": 42,
"results": [
{
"id": "F0-a91c",
"airline": "British Airways",
"flightNo": "BA74",
"from": "LOS",
"to": "LHR",
"departureTime": "22:55",
"arrivalTime": "06:20",
"stops": 0,
"finalPrice": 1485000,
"currency": "NGN"
}
]
}Confirm the fare verify
Re-checks the selected fare with the airline immediately before booking. Always call this before book.
{
"action": "verify",
"session_ref": "ses_8f3c...",
"result_id": "F0-a91c"
}{
"ok": true,
"verified": true,
"amount": 1485000,
"currency": "NGN",
"price_changed": false
}Create the booking book
Creates the booking and returns a secure IA Travels payment link to send to your client. No card details ever touch your site.
{
"action": "book",
"session_ref": "ses_8f3c...",
"result_id": "F0-a91c",
"contact_email": "client@example.com",
"contact_phone": "+2348012345678",
"passengers": [
{
"category": "adult",
"first_name": "JOHN",
"last_name": "OKAFOR",
"date_of_birth": "1990-05-14",
"gender": "male",
"nationality": "Nigerian",
"passport_number": "A12345678",
"passport_expiry_date": "2030-08-01"
}
]
}{
"ok": true,
"booking_reference": "6aeb38...",
"order_number": "IAT-2026-000123",
"payment_url": "https://iatravelsglobal.com/pay/IAT-2026-000123?t=...",
"amount": 1485000,
"currency": "NGN",
"status": "awaiting_payment",
"payment_expires_at": "2026-11-06T13:00:00.000Z"
}Booking status & PNR status
Returns the live status, airline PNR and e-ticket number for a booking created by your key.
{
"action": "status",
"booking_reference": "6aeb38..."
}{
"ok": true,
"booking_reference": "6aeb38...",
"status": "confirmed",
"payment_status": "paid",
"ticket_status": "issued",
"pnr": "X7K2QP",
"ticket_number": "125-2345678901",
"origin": "LOS",
"destination": "LHR",
"departure_date": "2026-12-01"
}Webhooks
We POST events to the HTTPS callback address registered with your key. Reply with any 2xx status. Retries are not guaranteed, so also poll status after payment for the authoritative record.
booking_confirmed
Sent the moment a partner booking is fully paid.
ticket_issued
Sent when the airline PNR and e-ticket number are issued.
{
"event": "ticket_issued",
"source": "IA Travels",
"partner": "YOURCODE",
"booking_reference": "6aeb38...",
"status": "confirmed",
"payment_status": "paid",
"ticket_status": "issued",
"ticket_number": "125-2345678901",
"route": "LOS -> LHR",
"departure_date": "2026-12-01",
"cabin": "Economy",
"passengers": { "adults": 1, "children": 0, "infants": 0 },
"total_fare": 1485000,
"currency": "NGN",
"customer_email": "client@example.com",
"timestamp": "2026-11-05T13:00:00.000Z"
}Rules and regulations
Accepting an API key means accepting these terms. They exist to protect your clients, your agency and the airline tickets we issue together.
- 1
Authorised use of the API key
Your API key is issued to your agency only. Keep it on your server, never in browser code, mobile apps or public repositories. Every call you make is your responsibility, including calls made by anyone who obtains your key. Tell us immediately if a key may have leaked so we can suspend it.
- 2
Live fares and availability
Fares are live airline fares and change continuously. A price shown on your website is an offer to check, not a guarantee, until it is verified immediately before booking. Always call verify before book and display the amount we return, unedited.
- 3
Payment
Your client pays on the IA Travels secure payment page using card, bank transfer or approved instalment plans. Card details must never be collected on your site. A booking is only held and ticketed after confirmed payment and is released automatically if payment is not received within 24 hours.
- 4
PNR and e-ticket delivery
Once payment is confirmed, the airline PNR is issued and the e-ticket is sent to the passenger email on the booking and to your registered contact email. You also receive a ticket_issued webhook. You must show the PNR to your client exactly as issued.
- 5
Passenger data accuracy
Names must match the passport exactly, in the same order and spelling. Incorrect names, dates of birth or passport numbers cause denied boarding or costly airline corrections, and those costs are borne by the agency that submitted the data. Handle passenger data in line with the NDPR and applicable data protection law; IA Travels processes it only to issue and service the booking.
- 6
Changes, cancellations and refunds
Changes and refunds follow the airline fare rules. Requests are made through the IA Travels team, not directly with the airline. Service fees already earned are non-refundable, and refunds are processed after the airline credits them to us.
- 7
Rate limits and fair use
Each key may make up to 600 requests per hour. Do not cache or resell fare data to third parties, scrape inventory, or run automated searches you do not need. Excessive or abusive traffic is throttled and can lead to suspension.
- 8
Branding and presentation
Present the service as "Flights powered by IA Travels" or equivalent. Do not claim to be the airline, do not alter our fares, and do not imply that IA Travels endorses your agency beyond this booking integration.
- 9
Availability and liability
The API is provided as-is. Airline schedules, fare rules and supplier systems can fail or change without notice. IA Travels is not liable for indirect losses, lost profit or missed connections arising from API downtime, and our total liability for any booking is limited to the service fee earned on that booking.
- 10
Suspension and termination
We may suspend a key immediately for fraud, chargebacks, misuse, unpaid balances or breach of these rules. Either side may end this integration at any time in writing; bookings already ticketed remain subject to their airline fare rules.
Need a key or help integrating?
Our team sets up your partner code, issues the key and can test your first booking with you. Agency accounts that also need wholesale pricing and a wallet can use the B2B partner portal.