---
title: "EPS history"
method: GET
path: "/api/earnings/eps-history"
tags: ["Earnings"]
---

# EPS history

`GET /api/earnings/eps-history`

![Free](https://img.shields.io/badge/Free-22c55e) ![Starter](https://img.shields.io/badge/Starter-3b82f6) ![Stock](https://img.shields.io/badge/Stock-f97316) ![ETF](https://img.shields.io/badge/ETF-14b8a6) ![Pro](https://img.shields.io/badge/Pro-8b5cf6)

Returns earnings per share over time with basic and diluted EPS, net income, share counts, and year-over-year growth.
Data is sourced from SEC XBRL filings (10-K and 10-Q). Periods are sorted most recent first.

## Query parameters

- `symbol` string
- `cik` integer
- `cusip` string
- `composite_figi` string
- `share_class_figi` string
- `currency` string
- `period` 'annual' | 'quarter' | 'ttm' — Reporting period: `annual`, `quarter`, or `ttm` (trailing twelve months). TTM sums the last 4 quarters for flow items and uses the latest quarter for point-in-time items.
- `limit` integer
- `splitAdjust` boolean

## Response `200`

Array of EPS history entries sorted most recent first

- object[]
  - `period` string — Fiscal period end date (YYYY-MM-DD)
  - `fiscalYear` integer — The company's fiscal year (handles non-December year-ends — AAPL FY ends Sep, COST FY ends Aug).
  - `fiscalPeriod` 'FY' | 'Q1' | 'Q2' | 'Q3' | 'Q4' | 'TTM' — Fiscal period of a reported value: `FY` (annual), `Q1`-`Q4` (quarterly), or `TTM` (trailing twelve months).
  - `eps` number, nullable — Basic earnings per share
  - `epsDiluted` number, nullable — Diluted earnings per share
  - `netIncome` number, nullable — Net income in the requested currency (default USD)
  - `sharesOutstanding` number, nullable — Basic weighted average shares outstanding
  - `sharesOutstandingDiluted` number, nullable — Diluted weighted average shares outstanding
  - `epsGrowth` number, nullable — EPS growth versus the previous period in the series, as a decimal (0.11 = 11%): period-over-period, so year-over-year when period=annual and quarter-over-quarter when period=quarter.

## Other responses

- `400` — Invalid parameters or symbol not found
- `403` — Feature not available on current plan

---

[API](https://skmtc.net/stockfit/apis/stockfit-api.md) · [All operations](https://skmtc.net/stockfit/apis/stockfit-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/stockfit/stockfit-api/revisions/3d5897270d8a/schema)
