Skip to main content
Field names in the response are the standardized line keys — the same vocabulary fact-source accepts, so any cell in your DataFrame can be traced to its filing. Inspect the actual payload shape for your companies first; run the request once and look, rather than assuming this snippet’s fields.

Handle limits like a good citizen

Watch X-Quota-Remaining on quota-carrying plans, and remember: one /financials call returns whole statements — never page line by line.

As originally reported

Backtesting against what the market knew at the time? Add reporting_basis=as_reported to get the originally filed vintage, and use the macro endpoints’ point-in-time semantics the same way. No look-ahead, by construction.