Skip to content

Instantly share code, notes, and snippets.

@highsource
Last active March 31, 2016 12:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save highsource/f8c1c56c4c31eb6dd7b20e9bb0e7549b to your computer and use it in GitHub Desktop.
Save highsource/f8c1c56c4c31eb6dd7b20e9bb0e7549b to your computer and use it in GitHub Desktop.

Feedback on Lufthansa Public API

  • I liked the dev portal pretty much. Fast und pretty. API console is good for playing.
  • Good API, had a lot of fun to work with. Would be glad to have such an API for DB.
  • Provide OpenAPI/Swagger specifications. Otherwise it takes too much time to build a client.
  • Operations are not so difficult to model, but what takes a lot of time is formulating the schema/definitions.
  • Schema is pretty good, was easy to work with, not problems understanding
  • The API suffers from "XML-to-JSON" conversion issues:
    • Cardinality is lost in a few places (item array vs. single item) depending on how many items we get.
      The structure is not deterministic this way.
    • Properties with names like $ are not generator-friendly.
  • In some cases/for some queries I was getting invalid JSON in response.
  • Oauth2 flow was not supported by Swagger Codegen, had to work around.
  • Implicit, non-transparent limitations were a big problem. I wanted to get arrivals in the next X hours/days.
    There was a limit of ca. 80 flights per request with no possibility to check if everything was returned.
    Not possible to "page" - continue from some given index. The only possibility was to reduce the query window so much as to guarantee the result will be less than 80 planes, sometimes down to 10 minues. This, however, depends on the time of day, so I ended up with a pretty complex query logic.
  • I was missing callsigns for flights to merge with flight state vectors from https://opensky-network.org/. I've heard callsigns are "secret", but big sites like https://www.flightradar24.com do have them! So they aren't really a secret, anyone can track flights.
  • Quotas are quite high, very good.
  • Not all of the flights were returned (vs. http://www.frankfurt-airport.com/). Unclear why and which aren't.
  • Realtime data -> realtime updates -> should be probably message-driven instead of request/response.
  • Would be nice to have some kind of publish-subscribe service to subscribe to updates on flight. This would drastically reduce the load. Unclear which tech should be used in such cases. MQTT?
  • Generally, a GitHub project with an issue tracker would've beed good. Feedback via e-mail not so.
  • Very good that API lives after the project.
  • Please consider overtaking https://github.com/highsource/lhapi-specification and https://github.com/highsource/lhapi-client projects.
  • By the way, note the https://opensky-network.org project.
  • GTFS feed? You've got the timetable, right? Is GTFS possible/reasonable?

What I'd like to build:

  • Flight tracker to track flights by flight number via push messages.
  • Twitter bot which would post arriving/departing flights for a certain airport.
  • Map of Europe coloured by wether better reachable with train/plane/car.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment