Discrepancy between API results and website

I’m prototyping an app which gathers flight callsigns inside a lat/long bounding box (using the opensky API), and then looks up those callsigns using FlightXML2 to get information about those flights (specifically, origin and destination airports).

This works some of the time. However, sometimes I get a NO_DATA error from FlightXML2 when looking up a callsign using the FlightInfo endpoint.

The strange thing is, if I paste a callsign that failed into the search box on the flightaware.com website and search for that, I almost always get a result.

An example would be a callsign that just came up: DLH3U. I get a NO_DATA error sending that to the FlightInfo FlightXML2 endpoint, but it correctly resolved to https://flightaware.com/live/flight/DLH3U on the website.

What could be causing this discrepancy? What lookups are the website doing that I’m not doing in code? I also tried sending callsigns to FlightXML2’s Search endpoint (using the identOrReg key), but I get empty search results there too.

The ident DLH3U is what is referred to as an ATC Ident. This is generally the result of Call Sign Similartiy (CSS) practices that disambiguate call signs that may be difficult to say or could easily result in a transposition error. The actual ident for this flight is DLH2326 and is presented as the “operating as” link on the web page.

Unfortunately The FlightInfo endpoint does not search for ATC Idents.

thanks @dogrock.

Two follow-up questions, then:

  1. Is there any way to look up ATC idents and resolve them to an ident suitable for FlightInfo or Search?
  2. What extra steps is the website taking to resolve an ATC ident? Are there APIs or data sources available to the website that aren’t exposed via FlightXML2?