@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api LH Public API
@base https://api.lufthansa.com/v1
@version 1.0
@auth OAuth2
@common_fields {Accept: any}
@endpoints 15
@toc references(6), offers(2), operations(5), cargo(2)

@group references
@endpoint GET /references/countries/{countryCode}
@required {countryCode: any}
@optional {lang: any, limit: any, offset: any}
@returns(200)

@endpoint GET /references/cities/{cityCode}
@required {cityCode: any}
@optional {lang: any, limit: any, offset: any}
@returns(200)

@endpoint GET /references/airports/{airportCode}
@required {airportCode: any}
@optional {lang: any, limit: any, offset: any, LHoperated: any}
@returns(200)

@endpoint GET /references/airports/nearest/{latitude},{longitude}
@required {latitude: any, longitude: any}
@optional {lang: any}
@returns(200)

@endpoint GET /references/airlines/{airlineCode}
@required {airlineCode: any}
@optional {limit: any, offset: any}
@returns(200)

@endpoint GET /references/aircraft/{aircraftCode}
@required {aircraftCode: any}
@optional {limit: any, offset: any}
@returns(200)

@endgroup

@group offers
@endpoint GET /offers/seatmaps/{flightNumber}/{origin}/{destination}/{date}/{cabinClass}
@required {flightNumber: any, origin: any, destination: any, date: any, cabinClass: any}
@returns(200)

@endpoint GET /offers/lounges/{location}
@required {location: any}
@optional {cabinClass: any, tierCode: any, lang: any}
@returns(200)

@endgroup

@group operations
@endpoint GET /operations/flightstatus/{flightNumber}/{date}
@required {flightNumber: any, date: any}
@optional {limit: any, offset: any}
@returns(200)

@endpoint GET /operations/flightstatus/route/{origin}/{destination}/{date}
@required {origin: any, destination: any, date: any}
@optional {limit: any, offset: any}
@returns(200)

@endpoint GET /operations/flightstatus/arrivals/{airportCode}/{fromDateTime}
@required {airportCode: any, fromDateTime: any}
@optional {limit: any, offset: any}
@returns(200)

@endpoint GET /operations/flightstatus/departures/{airportCode}/{fromDateTime}
@required {airportCode: any, fromDateTime: any}
@optional {limit: any, offset: any}
@returns(200)

@endpoint GET /operations/schedules/{origin}/{destination}/{fromDateTime}
@required {origin: any, destination: any, fromDateTime: any}
@optional {directFlights: any, limit: any, offset: any}
@returns(200)

@endgroup

@group cargo
@endpoint GET /cargo/shipmentTracking/{aWBPrefix}-{aWBNumber}
@required {aWBPrefix: any, aWBNumber: any}
@returns(200)

@endpoint GET /cargo/getRoute/{origin}-{destination}/{fromDate}/{productCode}
@required {origin: any, destination: any, fromDate: any, productCode: any}
@returns(200)

@endgroup

@end
