API responses

Hi Flightaware,

We are running into a serious problem with the use of your FlightXML API (JSON).

If we request all the flights between 2 cities on a certain date we generally get all the flight info back in the data format defined by Flightaware.

We are only running into a problem with code shares.

For example if we use the following request :

flightxml.flightaware.com/json/F … howMany=45

We get the following response:

{“AirlineFlightSchedulesResult”:{“next_offset”:-1,“data”:{“ident”:“EZY7925”,“actual_ident”:“”,“departuretime”:1452407700,“arrivaltime”:1452414900,“origin”:“EHAM”,“destination”:“LFMN”,“aircrafttype”:“A320”,“meal_service”:“”,“seats_cabin_first”:0,“seats_cabin_business”:0,“seats_cabin_coach”:180},{“ident”:“ETD7336”,“actual_ident”:“KLM1273”,“departuretime”:1452453900,“arrivaltime”:1452460500,“origin”:“EHAM”,“destination”:“LFMN”,“aircrafttype”:“E190”,“meal_service”:“”,“seats_cabin_first”:0,“seats_cabin_business”:20,“seats_cabin_coach”:80},{“ident”:“DAL9546”,“actual_ident”:“KLC1263”,“departuretime”:1452415500,“arrivaltime”:1452422400,“origin”:“EHAM”,“destination”:“LFMN”,“aircrafttype”:“B737”,“meal_service”:“Business: Ontbijt / Economy: Ontbijt”,“seats_cabin_first”:0,“seats_cabin_business”:20,“seats_cabin_coach”:102},{“ident”:“KLM1273”,“actual_ident”:“KLC1273”,“departuretime”:1452453900,“arrivaltime”:1452460500,“origin”:“EHAM”,“destination”:“LFMN”,“aircrafttype”:“E190”,“meal_service”:“Business: Maaltijd / Economy: Maaltijd”,“seats_cabin_first”:0,“seats_cabin_business”:20,“seats_cabin_coach”:80},{“ident”:“AFR8275”,“actual_ident”:“KLC1273”,“departuretime”:1452453900,“arrivaltime”:1452460500,“origin”:“EHAM”,“destination”:“LFMN”,“aircrafttype”:“E190”,“meal_service”:“Business: Maaltijd / Economy: Versnapering of brunch”,“seats_cabin_first”:0,“seats_cabin_business”:20,“seats_cabin_coach”:80},{“ident”:“ETD7316”,“actual_ident”:“KLM1263”,“departuretime”:1452415500,“arrivaltime”:1452422400,“origin”:“EHAM”,“destination”:“LFMN”,“aircrafttype”:“B737”,“meal_service”:“”,“seats_cabin_first”:0,“seats_cabin_business”:20,“seats_cabin_coach”:102},{“ident”:“AFR8271”,“actual_ident”:“KLC1263”,“departuretime”:1452415500,“arrivaltime”:1452422400,“origin”:“EHAM”,“destination”:“LFMN”,“aircrafttype”:“B737”,“meal_service”:“Business: Maaltijd / Economy: Versnapering of brunch”,“seats_cabin_first”:0,“seats_cabin_business”:20,“seats_cabin_coach”:102},{“ident”:“KLM1263”,“actual_ident”:“KLC1263”,“departuretime”:1452415500,“arrivaltime”:1452422400,“origin”:“EHAM”,“destination”:“LFMN”,“aircrafttype”:“E190”,“meal_service”:“Business: Maaltijd / Economy: Maaltijd”,“seats_cabin_first”:0,“seats_cabin_business”:20,“seats_cabin_coach”:80},{“ident”:“KQA1273”,“actual_ident”:“KLM1273”,“departuretime”:1452453900,“arrivaltime”:1452460500,“origin”:“EHAM”,“destination”:“LFMN”,“aircrafttype”:“E190”,“meal_service”:“”,“seats_cabin_first”:0,“seats_cabin_business”:20,“seats_cabin_coach”:80},{“ident”:“TRA5585”,“actual_ident”:“”,“departuretime”:1452447000,“arrivaltime”:1452453900,“origin”:“EHAM”,“destination”:“LFMN”,“aircrafttype”:“B738”,“meal_service”:“”,“seats_cabin_first”:0,“seats_cabin_business”:0,“seats_cabin_coach”:189},{“ident”:“KQA1263”,“actual_ident”:“KLM1263”,“departuretime”:1452415500,“arrivaltime”:1452422400,“origin”:“EHAM”,“destination”:“LFMN”,“aircrafttype”:“B737”,“meal_service”:“”,“seats_cabin_first”:0,“seats_cabin_business”:20,“seats_cabin_coach”:102}]}}

Now, we want to filter out the codeshares, so we only have the actual flights that we need. Simple enough you’d think as in general this can be achieved by taking actual ident == “:” and that are the original flights.

Now if we look at the above response we see that ETD7336 is a codeshare with KLM1273, but then we see that KLM1273 is a codeshare again with KLC1273 and KLC1273 is not even in the response. This is because KLC1273 doesn’t even exist. It is a flight excecuted by KLM Cityhopper for KLM and so should return with a KLM1273 flightnumber.

We are also seeing the same problems with Lufthansa and Lufthansa cityline , also with Airfrance and Airfrance HOP/AirLinair/Bitair.

This is making it impossible for us to compile a simple list of the flights between 2 cities.

Are we making a incorrect request or is there something else we missed?