Skip to main content
GET
Get income statements
A financial statement here is one filed period, income statement, balance sheet, or cash flow statement, normalized to the Financial Datasets field names and order. The server reads Monid’s DefiLlama /equities/v1/statements endpoint for the numbers and joins it against /equities/v1/filings for SEC identity: accession number, form type, filing URL, filing date. This route covers the income statement. Balance Sheets and Cash Flow Statements work the same way, with a different field set.

What this answers

  • What was a company’s revenue, gross profit, and net income for a given fiscal year or quarter.
  • What a trailing-twelve-month view looks like when the company has not yet filed a full fiscal year at that point.

Coverage

Query rules

ticker is required. period accepts annual, quarterly, or ttm. REST and MCP disagree on the default for period. The REST route fills a value before it calls the underlying tool, so an omitted period defaults to annual here. The MCP tool’s own schema default is ttm, matching the published Financial Datasets schema. Pass period explicitly on both transports if the default matters to your call. as_reported=true is accepted for parameter parity but always answers 400 bad_request. Raw, as-filed line items are not sourced. Use the normalized fields this route already returns. limit defaults to 4 and caps at 100. The report_period, report_period_gte, report_period_lte, report_period_gt, and report_period_lt filters narrow by report date. Fields the current Go source declares but our own live captures never populate, currency, accession_number, form_type, filing_url, filing_date, filing_datetime, selling_general_and_administrative_expenses, interest_expense, net_income_discontinued_operations, net_income_non_controlling_interests, preferred_dividends_impact, consolidated_income, dividends_per_common_share, are schema-legal and left out of the response rather than guessed.

Worked example

curl
Response
This route leaves out valuation fields like enterprise_value and price_to_earnings_ratio, they live on Financial Metrics instead, not on the statement routes. Use Snapshot for current valuation multiples.

Authorizations

X-API-KEY
string
header
required

The caller's own Monid API key (get one at https://monid.ai?fpr=dhruv-15136b). Passed straight through to Monid on every call, so usage bills the caller's own wallet — this is never a shared server-side credential, and the server never logs or stores it. Missing, empty, or malformed values answer 401 unauthorized before any paid call is attempted.

Query Parameters

ticker
string
required

Uppercase-normalized ticker symbol (1-20 letters/digits/dots/hyphens).

period
enum<string>
default:annual

Reporting period. REST-level default is "annual" (see description); the tool/FD-schema default is "ttm".

Available options:
annual,
quarterly,
ttm
limit
integer
default:4

Number of records to retrieve (default: 4, max: 100).

Required range: 1 <= x <= 100
as_reported
boolean
default:false

Accepted for FD parameter parity but always rejected: as_reported=true answers 400 bad_request ("as_reported is not supported; use the normalized income-statements endpoint") at zero cost.

report_period
string<date>

Exact report_period date filter (YYYY-MM-DD).

report_period_gte
string<date>

report_period >= this date (YYYY-MM-DD, inclusive).

report_period_lte
string<date>

report_period <= this date (YYYY-MM-DD, inclusive).

report_period_gt
string<date>

report_period > this date (YYYY-MM-DD, exclusive).

report_period_lt
string<date>

report_period < this date (YYYY-MM-DD, exclusive).

cursor
string

Opaque base64url pagination cursor from a previous response's next_page_url. Omit for the first page.

Response

A page of income statements, newest report_period first. Real AAPL FY2025/FY2024 annual values captured from our own live API (docs/our-live-samples/income_statements.json).

Wrapped list envelope: {"income_statements": [...], "next_page_url": "..."}. Page size is 10 records (100 for /prices).

income_statements
IncomeStatement · object[]
required
next_page_url
string<uri>

Absolute URL for the next page, present only when more records remain. Built from an opaque base64url cursor over this deployment's own host (never a fixed facade base).