APIHub
Back to Explore

LH Public API

LH Public API

Transportation
OAuth
HTTPS
CORS: Unknown
Visit official documentation

Latency

Not monitored yet

Uptime

Not monitored yet

Playground

Verified

live

Endpoints

REST · JSON
GET

/cargo/getRoute/{origin}-{destination}/{fromDate}/{productCode}

Retrieve all flights

  • origin (path, required) — Departure Airport : 3-letter IATA airport code, e.g. FRA.
  • destination (path, required) — Arrival airport : 3-letter IATA airport code, e.g. HKG.
  • fromDate (path, required) — Departure date in the local time of the departure airport. Based on LAT (Latest Acceptance Time). format : yyyy-MM-dd eg : 2017-07-15
  • productCode (path, required) — Product code for requested service and specials : 3-letter eg: YNZ
  • Accept (header, required) — http header: application/json or application/xml (Acceptable values are: "application/json", "application/xml")
GET

/cargo/shipmentTracking/{aWBPrefix}-{aWBNumber}

Shipment Tracking

  • aWBPrefix (path, required) — aWBPrefix : Represents the airline that is the owner of this AWB, i.e. "020" = Lufthansa Cargo, format : [0-9]{3} e.g. 020
  • aWBNumber (path, required) — aWBNumber : The Air Waybill Number , format : [0-9]{8} e.g. 08002050
  • Accept (header, required) — http header: application/json or application/xml (Acceptable values are: "application/json", "application/xml")
GET

/offers/lounges/{location}

Lounges

  • location (path, required) — 3-leter IATA airport or city code (e.g. 'ZRH')
  • Accept (header, required) — http header: application/json or application/xml (Acceptable values are: "application/json", "application/xml")
  • cabinClass (query) — Cabin class: 'M', 'E', 'C', 'F' (Acceptable values are: "", "M", "E", "C", "F")
  • tierCode (query) — Frequent flyer level ('FTL', 'SGC', 'SEN', 'HON') (Acceptable values are: "", "FTL", "SGC", "SEN", "HON")
  • lang (query) — Language code.
GET

/offers/seatmaps/{flightNumber}/{origin}/{destination}/{date}/{cabinClass}

Seat Maps

  • flightNumber (path, required) — Flight number including carrier code and any suffix (e.g. 'LH2037')
  • origin (path, required) — Departure airport. 3-letter IATA airport code (e.g. 'TXL')
  • destination (path, required) — Destination airport. 3-letter IATA airport code (e.g. 'MUC')
  • date (path, required) — Departure date (YYYY-MM-DD)
  • cabinClass (path, required) — Cabin class: 'M', 'E', 'C', 'F'. Some flights have fewer classes (Acceptable values are: "M", "E", "C", "F")
  • Accept (header, required) — http header: application/json or application/xml (Acceptable values are: "application/json", "application/xml")
GET

/operations/flightstatus/arrivals/{airportCode}/{fromDateTime}

Flight Status at Arrival Airport

  • airportCode (path, required) — 3-letter IATA aiport code (e.g. 'ZRH')
  • fromDateTime (path, required) — Start of time range in local time of arrival airport (YYYY-MM-DDTHH:mm)
  • Accept (header, required) — http header: application/json or application/xml (Acceptable values are: "application/json", "application/xml")
  • limit (query, limit) — Number of records returned per request. Defaults to 20, maximum is 100 (if a value bigger than 100 is given, 100 will be taken)
  • offset (query, offset) — Number of records skipped. Defaults to 0
GET

/operations/flightstatus/departures/{airportCode}/{fromDateTime}

Flight Status at Departure Airport

  • airportCode (path, required) — Departure airport. 3-letter IATA airport code (e.g. 'HAM')
  • fromDateTime (path, required) — Start of time range in local time of departure airport (YYYY-MM-DDTHH:mm)
  • Accept (header, required) — http header: application/json or application/xml (Acceptable values are: "application/json", "application/xml")
  • limit (query, limit) — Number of records returned per request. Defaults to 20, maximum is 100 (if a value bigger than 100 is given, 100 will be taken)
  • offset (query, offset) — Number of records skipped. Defaults to 0
GET

/operations/flightstatus/route/{origin}/{destination}/{date}

Flight Status by Route

  • origin (path, required) — 3-letter IATA airport (e.g. 'FRA')
  • destination (path, required) — 3-letter IATA airport code (e.g. 'JFK')
  • date (path, required) — Departure date (YYYY-MM-DD) in local time of departure airport
  • Accept (header, required) — http header: application/json or application/xml (Acceptable values are: "application/json", "application/xml")
  • limit (query, limit) — Number of records returned per request. Defaults to 20, maximum is 100 (if a value bigger than 100 is given, 100 will be taken)
  • offset (query, offset) — Number of records skipped. Defaults to 0
GET

/operations/flightstatus/{flightNumber}/{date}

Flight Status

  • flightNumber (path, required) — Flight number including carrier code and any suffix (e.g. 'LH400')
  • date (path, required) — The departure date (YYYY-MM-DD) in the local time of the departure airport
  • Accept (header, required) — http header: application/json or application/xml (Acceptable values are: "application/json", "application/xml")
  • limit (query, limit) — Number of records returned per request. Defaults to 20, maximum is 100 (if a value bigger than 100 is given, 100 will be taken)
  • offset (query, offset) — Number of records skipped. Defaults to 0
GET

/operations/schedules/{origin}/{destination}/{fromDateTime}

Flight Schedules

  • origin (path, required) — Departure airport. 3-letter IATA airport code (e.g. 'ZRH')
  • destination (path, required) — Destination airport. 3-letter IATA airport code (e.g. 'FRA')
  • fromDateTime (path, required) — Local departure date and optionally departure time (YYYY-MM-DD or YYYY-MM-DDTHH:mm). When not provided, time is assumed to be 00:01
  • Accept (header, required) — http header: application/json or application/xml (Acceptable values are: "application/json", "application/xml")
  • directFlights (query) — Show only direct flights (false=0, true=1). Default is false
  • limit (query, limit) — Number of records returned per request. Defaults to 20, maximum is 100 (if a value bigger than 100 is given, 100 will be taken)
  • offset (query, offset) — Number of records skipped. Defaults to 0
GET

/references/aircraft/{aircraftCode}

Aircraft

  • Accept (header, required) — http header: application/json or application/xml (Acceptable values are: "application/json", "application/xml")
  • aircraftCode (path, required) — 3-character IATA aircraft code
  • limit (query, limit) — Number of records returned per request. Defaults to 20, maximum is 100 (if a value bigger than 100 is given, 100 will be taken)
  • offset (query, offset) — Number of records skipped. Defaults to 0
GET

/references/airlines/{airlineCode}

Airlines

  • Accept (header, required) — http header: application/json or application/xml (Acceptable values are: "application/json", "application/xml")
  • airlineCode (path, required) — 2-character IATA airline/carrier code
  • limit (query, limit) — Number of records returned per request. Defaults to 20, maximum is 100 (if a value bigger than 100 is given, 100 will be taken)
  • offset (query, offset) — Number of records skipped. Defaults to 0
GET

/references/airports/nearest/{latitude},{longitude}

Nearest Airports

  • latitude (path, required) — Latitude in decimal format to at most 3 decimal places
  • longitude (path, required) — Longitude in decimal format to at most 3 decimal places
  • Accept (header, required) — http header: application/json or application/xml (Acceptable values are: "application/json", "application/xml")
  • lang (query) — 2 letter ISO 3166-1 language code
GET

/references/airports/{airportCode}

Airports

  • Accept (header, required) — http header: application/json or application/xml (Acceptable values are: "application/json", "application/xml")
  • airportCode (path, required) — 3-letter IATA airport code
  • lang (query) — 2-letter ISO 3166-1 language code
  • limit (query, limit) — Number of records returned per request. Defaults to 20, maximum is 100 (if a value bigger than 100 is given, 100 will be taken)
  • offset (query, offset) — Number of records skipped. Defaults to 0
  • LHoperated (query) — Restrict the results to locations with flights operated by LH (false=0, true=1)
GET

/references/cities/{cityCode}

Cities

  • Accept (header, required) — http header: application/json or application/xml (Acceptable values are: "application/json", "application/xml")
  • cityCode (path, required) — 3-letter IATA city code
  • lang (query) — 2 letter ISO 3166-1 language code
  • limit (query, limit) — Number of records returned per request. Defaults to 20, maximum is 100 (if a value bigger than 100 is given, 100 will be taken)
  • offset (query, offset) — Number of records skipped. Defaults to 0
GET

/references/countries/{countryCode}

Countries

  • Accept (header, required) — http header: application/json or application/xml (Acceptable values are: "application/json", "application/xml")
  • countryCode (path, required) — 2-letter ISO 3166-1 country code
  • lang (query) — 2 letter ISO 3166-1 language code
  • limit (query, limit) — Number of records returned per request. Defaults to 20, maximum is 100 (if a value bigger than 100 is given, 100 will be taken)
  • offset (query, offset) — Number of records skipped. Defaults to 0

15 endpoints auto-detected

Authentication

This API requires authentication: OAuth.

curl -X GET \
  "https://api.lufthansa.com/v1/cargo/getRoute/{origin}-{destination}/{fromDate}/{productCode}"

api.lufthansa.com · HTTPS only