Financials
Income statement
- Coverage
- US / CN / JP, the last 3 years
- Billing
- 20 cr / thousand calls
Returns a company's income statement: revenue, costs, profit at each level, earnings per share and more, one row per reporting period. 29 line-item columns in total, plus the 14 meta-data fields shared by the three statements, all listed under Response fields. ebitda is a derived column (not an as-reported line). Quarterly amounts may be calculated from cumulative disclosures; earnings per share and weighted average shares cannot be obtained by directly subtracting cumulative figures.
The example shows the complete key set; a line item that is missing or cannot be calculated reliably appears as null in the actual response.
Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| ticker | string | required | Up to 10 tickers, comma-separated. |
| period | stringenum | optional | FY (full fiscal year, excluding TTM), Q1, Q2, Q3, Q4 (the four quarters of the company’s fiscal year); multiple values allowed, comma-separated. Only periods with data are returned; no matching data returns an empty array. Default: FY. |
| limit | int | optional | Number of periods per ticker, counting back from the most recent period; maximum 40. Default: 4. |
Response fields
| Field | Type | Description |
|---|---|---|
| ticker | string | Canonical ticker (US has no suffix, e.g. AAPL; CN is 600519.SH; JP is 7203.T) |
| market | stringenum | Market code: US / CN / JP |
| fiscal_year | int | Fiscal year |
| period | stringenum | FY / Q1 / Q2 / Q3 / Q4 |
| period_start | date | Period start date; null for /balance-sheets |
| report_period | date | Period end date |
| currency | string | Reporting currency |
| accounting_standard | stringenum | US-GAAP / IFRS / CN-GAAP / JP-GAAP |
| accession_number | string | Native document number from the official source: US is the SEC accession (e.g. 0000320193-25-000123), JP the EDINET docID, CN the cninfo announcement id |
| form_type | string | Type of the source filing, in the market's native encoding (US: SEC form names such as 10-K / 10-Q; JP: EDINET numeric codes; CN: annual_report and the like) |
| filing_url | string | Deep link to the official filing; opens the source document directly |
| filing_date | date | Filing date: the date the document became public on the official channel |
| derived_fields | string[] | Names of fields calculated from other periods or line items, or normalized for sign; [] when none |
| derivation | object | Calculation trees keyed by the names in derived_fields; {} when none. Each step includes operation, metric, value, currency, period_start, report_period, and available_at; calculated nodes list recursive inputs in operation order, while reported leaves include the four official provenance fields; cross-report calculations also include basis (the basis report’s four official provenance fields and available_at) |
| revenue | number | Operating revenue / Revenue / Net sales |
| cost_of_revenue | number | Cost of revenue |
| gross_profit | number | Gross profit |
| research_and_development_expense | number | Research and development expense |
| selling_and_marketing_expense | number | Selling expense |
| general_and_administrative_expense | number | General and administrative expense |
| selling_general_and_administrative_expense | number | Total selling, general and administrative expenses (US filers commonly disclose only the combined total) |
| taxes_and_surcharges | number | Taxes and surcharges (CN only) |
| operating_expenses | number | Total operating expenses |
| operating_income | number | Operating profit / Operating income |
| interest_income | number | Interest income |
| interest_expense | number | Interest expense |
| other_non_operating_income | number | Other non-operating income and expenses, net |
| ordinary_income | number | Ordinary income (JP-GAAP only) |
| extraordinary_gains | number | Extraordinary gains (JP-GAAP only) |
| extraordinary_losses | number | Extraordinary losses (JP-GAAP only) |
| pretax_income | number | Pretax income |
| income_tax_expense | number | Income tax expense |
| net_income | number | Net income (including noncontrolling interests) |
| net_income_attributable_to_parent | number | Net income attributable to owners of the parent; not substituted with common-shareholder or continuing-operations income. Null when a required component from the same report and reporting interval is missing. |
| net_income_attributable_to_noncontrolling_interests | number | Net income attributable to noncontrolling interests |
| depreciation_and_amortization | number | Depreciation and amortization (as disclosed on the income statement or in the notes) |
| share_based_compensation | number | Share-based compensation expense |
| eps_basic | number | Basic earnings per share |
| eps_diluted | number | Diluted earnings per share |
| dividend_per_share | number | Dividend per share (declared) |
| weighted_average_shares_basic | number | Weighted average shares (basic) |
| weighted_average_shares_diluted | number | Weighted average shares (diluted) |
| ebitda | number | Derived (not an as-reported line) = operating_income + depreciation_and_amortization |
No key yet? Create one under API Keys — it is shown once, so store it where your shell can read it. Connecting an agent over MCP instead? That signs in through the browser and needs no key at all.
Authentication, conventions, rate limits and error shapes are the same for every endpoint — they live on REST API.