---
title: "One filed figure, period by period (`revenue`, `grossProfit`, `operatingIncome`, `netIncome`): the series as filed, each period with the filing that carries it (accession + sec.gov link) and what the company had filed before any correction."
method: GET
path: "/api/v1/figures/{symbol}/{metric}"
tags: ["Fundamentals"]
---

# One filed figure, period by period (\`revenue\`, \`grossProfit\`, \`operatingIncome\`, \`netIncome\`): the series as filed, each period with the filing that carries it (accession + sec.gov link) and what the company had filed before any correction.

`GET /api/v1/figures/{symbol}/{metric}`

## Request

- Base URL: `https://siliconfloor.com`
- URL: `https://siliconfloor.com/api/v1/figures/{symbol}/{metric}`
- Auth: none declared

One filed figure, period by period (`revenue`, `grossProfit`, `operatingIncome`, `netIncome`): the series as filed, each period with the filing that carries it (accession + sec.gov link) and what the company had filed before any correction. The address a model can cite — the same one `get_company` points to.

## Path parameters

- `symbol` string, required
- `metric` 'revenue' | 'grossProfit' | 'operatingIncome' | 'netIncome', required

## Query parameters

- `lang` 'en' | 'fr'

## Response `200`

The data, as JSON. Read the conventions above before reading a field: changes and ratios are fractions, and null means unavailable — never zero.

- object

## Other responses

- `400`: A parameter is not usable (unknown ticker, bad range).
- `404`: Nothing at this address, or nothing to serve for this company yet.
- `429`: Too many requests: wait a minute.

---

[API](https://skmtc.dev/siliconfloor/apis/silicon-floor.md) · [All operations](https://skmtc.dev/siliconfloor/apis/silicon-floor/llms.txt) · [OpenAPI document](https://skmtc.dev/siliconfloor/apis/silicon-floor/revisions/d1bf73f9b8c8?raw)
