Skip to content

Cirium FlightStats

Built, not certified Built and tested against recorded and synthetic responses (version 1.0.0, 10 November 2026). Not yet run against the vendor's sandbox or a client environment.

Reads flight status by airport and by flight from Cirium’s FlightStats Flex Flight Status API, read-only, inside your deployment.

CollectorCirium FlightStats, version 1.0.0
ReadsCirium: Cirium FlightStats Flex Flight Status API (the vendor's documentation)
FamilyAviation
KindFlights
Ways to connectAccess token
Scopes
  • Read:
Read onlyYes
Vendor's API can move moneyNo
Personal dataNone
Hosts it may contactapi.flightstats.com, {host}
Vendor API versionsFlex Flight Status v2
Lowest engine version0.46.0
  • Airports: departures and arrivals of each airport you name, in blocks of up to 6 hours across the window (GET .../airport/status/{airport}/{dep|arr}/{year}/{month}/{day}/{hour}).
  • Flights: today’s status of each flight you name by carrier and number (GET .../flight/status/{carrier}/{flight}/dep/{year}/{month}/{day}).
  • One record per flight, keyed by FlightStats’ flightId, with its route, status and departure time.
  • The window runs from hours_back (0 to 72, default 6) before now to hours_ahead (0 to 72, default 12) after, from an hour before the last run when there was one.
  1. Get a FlightStats application id and key from Cirium’s developer portal.
  2. In LightHouse, open Setup and admin, Connectors, choose Cirium FlightStats, and leave the access level at Read.
  3. Name the airports (IATA or ICAO codes) and the flights (such as XX101).
  4. Paste the application id and then the key. Your browser seals them to your deployment, which hands them to the collector as CIRIUM_APP_ID and CIRIUM_APP_KEY.
  • GET only. The Flex status APIs are read-only and no other verb is sent.
  • The key travels in the query, as FlightStats defines it (appId, appKey). So nothing is cached (the cache index is keyed by URL) and every failure names the host only.
  • Requests ask for extendedOptions=useHTTPErrors, without which an authentication failure is an HTTP 200 carrying an error element that would read as “no flights”.
  • Your deployment refuses to store this credential at read and write. Only api.flightstats.com is contacted.
  • No paging; an airport is read in blocks of hours_per_request hours (1 to 6, default 6) because the public reference does not state a limit and a smaller block is never refused. max_flights (1000) caps one block.
  • FlightStats offers no changed-since: the window from the last run, less an hour, is read again, and unchanged flights are not rewritten.
  • Rate limits are contractual and not published; the default pace is one request a second (delay_s).
  • Records are read and indexed inside your deployment. LightHouse receives ids, hashes and counts, never a flight record.
  • Nothing is cached raw, and a failure names the host and the status, never the URL.
  • Flight status carries no passenger data. The standard exclusions still apply to every record before it is written (travel document numbers, dates of birth, health or disability special service requests); exclude_fields adds paths and keep_fields takes a default back by its exact name.
What you see What it means What to do
credential variable 'CIRIUM_APP_ID' is not set The deployment has not been given the application id or key Connect the credential again
GET api.flightstats.com: FlightStats error 403 FlightStats refused the application id or key (reported through useHTTPErrors) Check the id and key, and that the application may use this API
GET api.flightstats.com: HTTP 403 The same refusal as an HTTP status As above
name airports or flights to read Neither was named Name at least one
not airport codes: [...] A code is not 3 or 4 letters or digits Correct it
hours_per_request is 1 to 6 A block longer than 6 hours Use 6 or fewer
hours_back and hours_ahead are 0 to 72 The window is too wide Narrow it

Each entry is a run by Atlantic Agentic Labs, newest first. Only a run against the vendor’s sandbox or a client environment certifies a collector; a certification lasts six months, or less if the vendor publishes an API version the collector does not list. See How collectors are certified.

DateCollectorEngineVendor APIMethodExpires
10 November 20261.0.00.47.0Flex Flight Status v2Fixtures only: built, not certifiedNot applicable

From the collector’s last scan on the default branch. What each line means, and what blocks a release: Security posture.

Last scanned10 November 2026
Critical findings0
High findings0
Medium findings0
Low findings0
Info findings0
Release blockedNo
Network allow-list checkPass
Read-only behavioural testPass
SBOM (CycloneDX)Produced
Dependency licencesPass
Scannersbandit 1.9.4, semgrep 1.181.1, pip-audit 2.10.1, osv-scanner 2.7.0, cyclonedx-py 7.5.0, pip-licenses 5.5.5, gitleaks repository job aal-secrets, hosts_check tools/hosts_check.py, read-only test pytest -m read_only