Point-in-time quarterly fundamentals (derived analytics + SEC-sourced raw)
Quarterly fundamentals for a single ticker, point-in-time filtered: a row is visible if and only if its filed_date is on or before as_of (never "latest"). filed_date_source is exact (vendor filing date) or approx (period_end + 45 days, the 10-Q deadline, when the vendor date is missing).
Derived analytics + per-cell raw SEC exposure. Rows carry TTM profitability ratios (roe_ttm, roa_ttm, fcf_margin), capital-return ratios (payout_ratio, retention_ratio, buyback_ratio, total_payout_ratio, sustainable_growth), leverage_ratio, long-window ERM3 valuation betas with provenance, the cost-of-capital layer (cost_of_equity, strict cost_of_debt / wacc, parallel cost_of_debt_imputed / wacc_imputed, and economic_profit), and the equity-bridge residual + inputs mask. sec_facts carries RAW line items for the cells whose serving value is SEC XBRL (public); vendor-sourced cells are not included there.
Numeric line items are stored at ~7 significant figures (float32) — suitable for analysis, not cent-level reconciliation. gross_margin and operating_margin are currently always null (inputs not yet in the store). market_cap is a current snapshot, not point-in-time per quarter.
Disclosures (also returned in every response body):
-
Realized historical data only. No forecasts, no analyst targets, no buy/sell signals.
-
Coverage starts ~2009 for most filers; pre-2009 and small-cap or recently-IPO'd names are thin. Missing fields are null.
-
beta_market is the long-window valuation beta used by the CAPM layer, not the short-half-life hedging beta on the daily risk surface. For defensive names cost_of_equity can still fall below the risk-free rate.
-
WACC uses BOOK-value weights. Market-value weights are the textbook convention; compute them yourself if you have market-cap access.
-
Strict cost_of_debt and wacc are never silently filled. When trusted SEC debt is positive but TTM interest expense cannot form a strict debt cost, the separate imputed fields may use a PIT-lagged high-quality-market proxy. Its spread is the monthly Treasury HQM 10-year spot yield minus the same-month GS10 monthly average; that stored spread is then added to the separate period-end point-in-time 10-year Treasury rate. HQM month M becomes eligible on day 10 of M+1. The proxy covers the A/AA/AAA market; it is not issuer-specific.
-
TTM sums flows over the trailing 4 reported quarters; stock quantities are point-in-time (ROE denominator uses trailing-4-quarter average equity). Ratios need 4 finite quarters or they are null.
-
erp (default 0.05) and tax_rate (default 0.21) are request parameters echoed in the response. The documented defaults are used when omitted; no equity-risk-premium opinion is stored in the data.
-
rf_rate is the Treasury constant-maturity yield at the selected rf_tenor (3m|1y|2y|5y|10y|30y, default 10y — the valuation convention), sampled at the last observation on or before each quarter's period end. A short tenor should be paired with a bill-basis ERP or cost of capital is understated.
Authentication: Required (API Key or OAuth2) Billing: $0.02 per request (deducted from account balance) Rate Limit: 60 requests/minute (default)
Per-symbol, per-call only: no batch variant, no CSV/bulk export (JSON only).
Request
- Base URL: https://riskmodels.app/api
- URL: https://riskmodels.app/api/fundamentals/{ticker}
- Auth: one of:
- HTTP bearer
- OAuth 2 (authorization code, authorization URL https://riskmodels.app/oauth/authorize, token URL https://riskmodels.app/api/oauth/token, scopes: mcp:read)
Path parameters
Ticker symbol (case-insensitive).
Query parameters
Point-in-time date. Rows are visible iff filed_date <= as_of. Default: today.
Number of quarterly rows returned (most recent last). Max 40.
Equity-risk-premium request parameter for the cost-of-capital layer; default 0.05 when omitted, with no ERP opinion stored in the data.
Tax rate applied to the WACC debt shield.
Treasury constant-maturity tenor backing rf_rate. Default 10y (valuation convention). Pair a short tenor with a bill-basis ERP or cost of capital is understated.
When true, the response also carries sensitivity_grid — cost_of_equity, strict wacc, parallel wacc_imputed, and economic_profit across erp_grid x rf_tenor_grid for the latest PIT-visible period only (not a time series — a "what if my assumptions were different today" table). Same billing as the base call; no extra cost.
Comma-separated ERP values for the sensitivity grid (1-10 values, each in [0, 0.5]), e.g. 0.03,0.04,0.05,0.06,0.07. Ignored unless grid=true. Default: 0.03,0.04,0.05,0.06,0.07.
Comma-separated subset of 3m,1y,2y,5y,10y,30y for the sensitivity grid. Ignored unless grid=true. Default: all six tenors.
Response
PIT quarterly fundamentals rows.
Example response
{
"ticker": "AAPL",
"market_cap": {
"basis": "current_snapshot"
}
}Changes
No recorded changes to this operation across all 1 revision of this API.