Skip to content

Airlines

The airlines list says which airlines you can look up, what each needs beyond a booking reference and surname, and how long its lookups take.

GET/v1/airlines

{
  "data": [
    {
      "iata": "LH",
      "name": "Lufthansa",
      "status": "live",
      "requires": ["pnr", "surname"],
      "timing": { "median_seconds": 41, "p95_seconds": 118 }
    },
    {
      "iata": "ZZ",
      "name": "PNRStack Sandbox Air",
      "status": "live",
      "requires": ["pnr", "surname"],
      "timing": { "median_seconds": 3, "p95_seconds": 5 }
    }
  ]
}

The list includes the sandbox airline, ZZ, on every account. A lookup for an airline that isn't on the list fails with unsupported_airline.

Status

StatusWhat it means
liveLookups run as normal
betaLookups work; their times can vary more than a live airline's
pausedNot taking lookups for now. They fail with airline_unavailable, which can be retried, until it's back

What each one needs

requires lists the fields an airline needs. Most need only pnr and surname; some also want passenger.first_name, passenger.email or passenger.ticket_number. Send them with the lookup and it won't stop to ask.

How long lookups take

timing is the median and the 95th percentile over the last seven days, in seconds. Design around the 95th: on every airline, 95 percent of lookups finish within 3 minutes.

How we choose airlines

Every airline is reviewed before we retrieve a single booking from it. Where an airline offers an official channel, we use it. Where its manage-booking page is open to passengers, we read it as a passenger would, one booking at a time. Where an airline says no, we don't. If an airline that matters to you isn't on the list, tell us.