---
title: "Get Instrument Income Statements"
method: GET
path: "/v1/instruments/{instrument_id}/income-statements"
tags: ["Instrument Data"]
---

# Get Instrument Income Statements

`GET /v1/instruments/{instrument_id}/income-statements`

Retrieves quarterly income statements for a specific instrument, sorted by fiscal period
(most recent first).

Date range defaults:
- `from_date`: None (no lower bound)
- `to_date`: None (no upper bound)

## Path parameters

- `instrument_id` union, required — Instrument identifier: either an instrument identifier or a symbol (symbol for equities, OSI for options). Non-UUID inputs are resolved server-side.
  - string, uuid — Instrument identifier
  - string — Symbol (symbol for equities, OSI for options)

## Query parameters

- `page_size` integer
- `page_token` string, byte — Base64URL-encoded pagination token
- `from_date` string
- `to_date` string

## Response `200`

List of quarterly income statements

- object
  - `error` ApiError — A direct mapping of tonic::Status, for use in HTTP responses.
    - `code` integer, required — The error code is used to identify the nature of the error. It corresponds to an HTTP status code.
    - `details` object[]
    - `message` string, required — A human-readable message providing more details about the error.
  - `metadata` ResponseMetadata, required — Metadata for the response. This will always contain a request ID which can be used to identify the request to Clear Street for tracing, and optionally may include pagination data.
    - `next_page_token` string, byte, nullable — Base64URL-encoded pagination token
    - `page_number` integer, nullable — Pagination. Included if this was a GET (list) response
    - `previous_page_token` string, byte, nullable — Base64URL-encoded pagination token
    - `request_id` string, required — A unique ID for this request, generated upon ingestion of the request.
    - `total_items` integer, nullable — Total number of items available (not just in this page).
    - `total_pages` integer, nullable — Total number of pages available.
  - `data` InstrumentIncomeStatement[], required
    - `accepted_date` string, date-time, required — The date and time when the filing was accepted by the SEC
    - `bottom_line_net_income` string, nullable — Bottom line net income after all adjustments
    - `cost_and_expenses` string, nullable — Total costs and expenses
    - `cost_of_revenue` string, nullable — Direct costs attributable to producing goods sold
    - `depreciation_and_amortization` string, nullable — Depreciation and amortization expenses
    - `ebit` string, nullable — Earnings before interest and taxes
    - `ebitda` string, nullable — Earnings before interest, taxes, depreciation, and amortization
    - `eps` string, nullable — Basic earnings per share
    - `eps_diluted` string, nullable — Diluted earnings per share
    - `filing_date` string, date, required — The date the financial statement was filed
    - `general_and_administrative_expenses` string, nullable — General administrative overhead expenses
    - `gross_profit` string, nullable — Revenue minus cost of revenue
    - `income_before_tax` string, nullable — Income before income tax expense
    - `income_tax_expense` string, nullable — Income tax expense for the period
    - `interest_expense` string, nullable — Interest paid on debt
    - `interest_income` string, nullable — Interest earned on investments and cash
    - `net_income` string, nullable — Total net income for the period
    - `net_income_deductions` string, nullable — Deductions from net income
    - `net_income_from_continuing_operations` string, nullable — Net income from continuing operations
    - `net_income_from_discontinued_operations` string, nullable — Net income from discontinued operations
    - `net_interest_income` string, nullable — Net interest income (interest income minus interest expense)
    - `non_operating_income_excluding_interest` string, nullable — Non-operating income excluding interest
    - `operating_expenses` string, nullable — Total operating expenses
    - `operating_income` string, nullable — Income from core business operations
    - `other_adjustments_to_net_income` string, nullable — Other adjustments to net income
    - `other_expenses` string, nullable — Other miscellaneous expenses
    - `period` string, required — The fiscal period identifier (e.g., "Q1", "Q2", "Q3", "Q4")
    - `period_type` 'QUARTERLY' | 'ANNUAL' | 'TTM' | 'BIANNUAL', required — Fiscal period type for earnings reports
    - `reported_currency` string, required — The currency in which the statement is reported (ISO 4217)
    - `research_and_development_expenses` string, nullable — Expenditure on research and development activities
    - `revenue` string, nullable — Total revenue from sales of goods and services
    - `selling_and_marketing_expenses` string, nullable — Expenditure on marketing and sales activities
    - `selling_general_and_administrative_expenses` string, nullable — Combined selling, general, and administrative expenses
    - `total_other_income_expenses_net` string, nullable — Net of other income and expenses
    - `weighted_average_shs_out` string, nullable — Weighted average shares outstanding (basic)
    - `weighted_average_shs_out_dil` string, nullable — Weighted average shares outstanding (diluted)
    - `year` integer, required — The fiscal year of the statement

## Other responses

- `404` — Instrument not found
- `500` — Internal server error

---

[API](https://skmtc.net/clear-street/apis/clear-street-trading-api.md) · [All operations](https://skmtc.net/clear-street/apis/clear-street-trading-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/clear-street/clear-street-trading-api/revisions/80e6fb2644e0/schema)
