API examples & reference

Every endpoint is a plain HTTPS GET that returns JSON. Links marked live demo work right now in your browser using the public demo key (limited to AAPL). For other companies and higher limits, grab a free key and swap apikey=demo for your key.

Authentication

Send your key any of these ways:

Authorization: Bearer YOUR_KEY
X-API-Key: YOUR_KEY
?apikey=YOUR_KEY  ←  query-string (easiest for a browser)

JUMP TO

profile fundamentals point-in-time raw concept search frames catalog

Company profile live demo

Name, CIK, SIC industry, fiscal year end, tickers/exchanges.

Fundamentals — financial statements

Clean, per-period line items for the three core statements. Parameters: statement=income_statement|balance_sheet|cash_flow, period=annual|quarterly. Add &format=csv for a spreadsheet. Each row also carries as_reported_filed and accession (the filing it came from).

Income Statement live demo

Fields returned in each row:

FIELDDESCRIPTIONUNIT
fiscal_yearFiscal year (by period end)
period_endPeriod end date (ISO)
revenueRevenueUSD
cost_of_revenueCost of revenueUSD
gross_profitGross profitUSD
research_and_developmentResearch & developmentUSD
selling_general_adminSelling, general & administrativeUSD
operating_expensesOperating expensesUSD
operating_incomeOperating incomeUSD
interest_expenseInterest expenseUSD
income_before_taxIncome before income taxesUSD
income_tax_expenseIncome tax expense (benefit)USD
net_incomeNet incomeUSD
eps_basicEPS (basic)USD/shares
eps_dilutedEPS (diluted)USD/shares
shares_basicWeighted avg shares (basic)shares
shares_dilutedWeighted avg shares (diluted)shares
as_reported_filedDate the values were filed with the SEC
accessionSEC filing accession number

Balance Sheet live demo

Fields returned in each row:

FIELDDESCRIPTIONUNIT
fiscal_yearFiscal year (by period end)
period_endPeriod end date (ISO)
cash_and_equivalentsCash & cash equivalentsUSD
short_term_investmentsShort-term investmentsUSD
accounts_receivableAccounts receivable, netUSD
inventoryInventory, netUSD
total_current_assetsTotal current assetsUSD
property_plant_equipment_netProperty, plant & equipment, netUSD
goodwillGoodwillUSD
intangible_assetsIntangible assetsUSD
total_assetsTotal assetsUSD
accounts_payableAccounts payableUSD
short_term_debtShort-term debtUSD
total_current_liabilitiesTotal current liabilitiesUSD
long_term_debtLong-term debtUSD
total_liabilitiesTotal liabilitiesUSD
common_stock_valueCommon stock valueUSD
retained_earningsRetained earnings (accumulated deficit)USD
total_stockholders_equityTotal stockholders' equityUSD
as_reported_filedDate the values were filed with the SEC
accessionSEC filing accession number

Cash Flow Statement live demo

Fields returned in each row:

FIELDDESCRIPTIONUNIT
fiscal_yearFiscal year (by period end)
period_endPeriod end date (ISO)
net_cash_operatingNet cash from operating activitiesUSD
net_cash_investingNet cash from investing activitiesUSD
net_cash_financingNet cash from financing activitiesUSD
depreciation_amortizationDepreciation & amortizationUSD
capital_expendituresCapital expendituresUSD
dividends_paidDividends paidUSD
share_repurchasesShare repurchasesUSD
net_change_in_cashNet change in cashUSD
as_reported_filedDate the values were filed with the SEC
accessionSEC filing accession number

Point-in-time — as originally reported live demo

Returns each line item as it was reported on/before a date — no lookahead bias. Add as_of=YYYY-MM-DD.

Raw concept time series live demo

Every reported value for a single raw XBRL tag, with full filing metadata (including all restatements). Path: /v1/companies/{ticker}/concepts/{taxonomy}/{tag}.

Frames — one concept across many companies

One XBRL concept for one period across all companies. Period uses SEC frame codes (e.g. CY2023Q4I for an instant, CY2023 for a full year).

GET /v1/frames/us-gaap/Assets/USD/CY2023Q4I?apikey=YOUR_KEY

Concepts catalog

Search the available XBRL tags (use any of these as {tag} in the raw concept endpoint).

GET /v1/concepts?q=Revenue&apikey=YOUR_KEY

Response shape

Success is always { "data": ..., "meta": ... }; errors are { "error": { "code", "message", "status" } }. Dates are ISO-8601, money is plain numbers in the stated unit, missing values are null. Rate-limit headers (X-RateLimit-*) ride on every response. Full machine-readable spec at /openapi.json and interactive docs at /docs.