AnswerPool

XBRL Financials API: Get normalized key financials for one filer — SEC XBRL

Get normalized key financials for one filer — revenue, net income, operating cash flow, assets, liabilities, capex, R&D and shares across eight reported periods. Use instead of downloading and normalizing the companyfacts JSON.

$0.02 per call — pay with prepaid card credits (Authorization: Bearer ck_live_…, packs from $1) or with USDC over x402: call it, get 402 with the price, retry signed. Failed calls are never charged.

How do you call it?

GET /v1/sec/xbrl/financials — product id sec_xbrl_financials. Over MCP, call answerpool_get with product_id=sec_xbrl_financials.

curl "https://answerpool.io/v1/sec/xbrl/financials?ticker=NVDA"

# with a prepaid credit key
curl -H "Authorization: Bearer ck_live_..." "https://answerpool.io/v1/sec/xbrl/financials?ticker=NVDA"

Live call: https://answerpool.io/v1/sec/xbrl/financials?ticker=NVDA · JSON sample: /v1/samples/sec_xbrl_financials

What does the answer look like?

A representative response, the same static sample served at /v1/samples/sec_xbrl_financials.

as_of2026-08-31T14:00:00Z
cik0000320193
facts.revenue{"end":"2026-06-28","value":94000000000.0,"form":"10-Q","fy":2026,"fp":"Q3","filed":"2026-08-01"}
sourcehttps://data.sec.gov/api/xbrl/companyfacts/CIK0000320193.json
refresh_after2026-09-17T11:15:00.000Z

facts.revenue

endvalueformfyfpfiled
2026-06-2894000000000.010-Q2026Q32026-08-01
The same sample as raw JSON
{
 "as_of": "2026-08-31T14:00:00Z",
 "cik": "0000320193",
 "facts": {
  "revenue": [
   {
    "end": "2026-06-28",
    "value": 94000000000.0,
    "form": "10-Q",
    "fy": 2026,
    "fp": "Q3",
    "filed": "2026-08-01"
   }
  ]
 },
 "source": "https://data.sec.gov/api/xbrl/companyfacts/CIK0000320193.json",
 "refresh_after": "2026-09-17T11:15:00.000Z"
}

How fresh is it, and where does the data come from?

The fastest source behind this answer can change every 15 minutes, so every response carries a refresh_after timestamp — right now it would be 2026-09-17T11:15:00.000Z. Schedule the next call on that value rather than on a guess.

Method version 0.1.0 · serving cache 1 day · every response carries a result_id you can resolve at /v1/provenance.

When should you use it?

Multi-metric fundamentals for one company.

What you skip building

When should you not use it?

One metric — concept is cheaper; peers — compare/frame.

Where else can you find this?