That seems like a pretty heavy-handed solution for two reasons:
- There is a separate API call with extra cost associated
- I’d be calling a a much heavier call (returns multiple large records) for the sake of getting a single integer value - a value which isn’t even guaranteed to be in the first page of results from the API call requiring more requests to paginate through!
Is there any technical reason why the sceduled departure and arrival times don’t come back when calling methods that return an InFlightAircraftStruct? It seems like relevant information for a flight that is en route.
Also the results that are returned are inconsistent from different API calls, for example:
- filed_altitude vs filedAltitude_max (mixed styles of case)
- lat1 vs latitude (mixed use of abbreviated and non abbreviated terms)
- estimatedarrivaltime vs filed_departuretime (whitespace and underscores inconsistently used)
- waypoints returned as a space separated list of numbers (means they need to be parsed out, why aren’t they structured as an array? what happens if you want to add names to the waypoints list in future? all parsing code would be affected)
- complex types not used where appropriate (such as an Airport complextype to contain all the origin/destination details instead of lots of separate fields in the main result structures).
I do however find the data the API provides fascinating and it’s a great service!