> For the complete documentation index, see [llms.txt](https://sosovalue-1.gitbook.io/sosovalue-api-doc/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sosovalue-1.gitbook.io/sosovalue-api-doc/2.-etf/history.md).

# 2.4 ETF Historical Data

```
GET /etfs/{ticker}/history
```

**Path Parameters**

| Parameter   | Type   | Required | Description                                           |
| ----------- | ------ | -------- | ----------------------------------------------------- |
| ticker      | string | Yes      | ETF ticker                                            |
| start\_date | string | No       | Start date. Only the most recent 1 month is supported |
| end\_date   | string | No       | End date. Only the most recent 1 month is supported   |

**Response Example**

```json
[
    {
        "date": "2024-04-12",
        "ticker": "IBIT",
        "net_inflow": 3000000,
        "cum_inflow": 400000000,
        "net_assets": 5000000,
        "currency_share": 0.005,
        "prem_dsc": -0.0001,
        "value_traded": 4441000000,
        "volume": 322302
    }
]
```

**Response Fields**

| Field           | Type   | Description                                      |
| --------------- | ------ | ------------------------------------------------ |
| date            | String | Data date, `YYYY-MM-DD` (not an epoch timestamp) |
| ticker          | String | ETF ticker                                       |
| net\_inflow     | Number | Daily net inflow (USD)                           |
| cum\_inflow     | Number | Cumulative net inflow (USD)                      |
| net\_assets     | Number | Net assets (USD)                                 |
| currency\_share | Number | Market share                                     |
| prem\_dsc       | Number | Premium/discount rate                            |
| value\_traded   | Number | Trading volume (USD)                             |
| volume          | Number | Share volume                                     |

**Notes**

* The query range is limited to the most recent 1 month.

## The most recent row is not settled yet

Flow and asset figures settle on a **T+1** basis. On the current trading day the row already exists — carrying `value_traded` and `volume` — while the settled fields are still `null`:

```json
[
    {
        "date": "2026-08-12",
        "ticker": "IBIT",
        "net_inflow": null,
        "cum_inflow": null,
        "net_assets": null,
        "currency_share": null,
        "prem_dsc": null,
        "value_traded": 910925300,
        "volume": "910925300"
    },
    {
        "date": "2026-08-11",
        "ticker": "IBIT",
        "net_inflow": 50195600,
        "cum_inflow": 61171454223.66,
        "net_assets": 47337319120,
        "...": "..."
    }
]
```

**Taking `data[0]` therefore yields `null` for every flow metric.** Two ways to handle it:

| Goal                      | Do this                                                                                                                                 |
| ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| Latest **settled** values | Use [`GET /etfs/{ticker}/market-snapshot`](/sosovalue-api-doc/2.-etf/market-snapshot.md) — it always returns the latest settled figures |
| Walking this array        | Skip rows where `net_inflow` is `null`, or start from `data[1]`                                                                         |

This is settlement latency, not a gap in the data — the same row is complete the next day.

## Known issues

* `volume` currently returns the **same value as `value_traded`** (USD turnover), and as a JSON string rather than a number — it is not the share count the field name implies. For share volume use `volume` from [`market-snapshot`](/sosovalue-api-doc/2.-etf/market-snapshot.md) (≈36× smaller). A fix is pending; do not build on the current `volume` here.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://sosovalue-1.gitbook.io/sosovalue-api-doc/2.-etf/history.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
