A position view, not a portfolio history
/v1/ownership returns the latest reported position for each holder of a stock on or before the effective date. It is a position view: it answers "who held this stock, as last reported", not "what did the full shareholder register look like on a given day". The source lists a stock's 20 largest institutional holders and 10 largest fund holders, not every holder, so a holder that does not appear is either smaller than those or has no eligible report. That is not proof it owns zero shares.
Holders report on different schedules, so reported_on varies by row. Institutions typically report quarterly and many funds more often: in the October 2026 data for Apple, institution rows were dated June 30 and fund rows August 31. Results are ordered by reported_on, not by position size, so sort by shares in your own code to rank the largest holders.
| Field | Meaning |
|---|---|
holder_id, holder_name, holder_type | The holder, a stable ID, and whether it is an institution or a fund |
reported_on | Date of the reported position |
shares | Shares held |
ownership_ratio | The holder's stake as a ratio; 0.05 means 5% |
change_in_shares | Change since the holder's previous reported position |
filing_id | Source filing, when the source supplies it |
change_in_shares compares a holder's position with its own previous report, so a value of 0 means the position was unchanged between reports, not that the holder is new. A negative value is a reduction. To see the trend for one holder over several reports, query with holder_ids and step effective_date back through the reporting dates as history accumulates.
Use cases
- Top-holder tables and concentration measures for a stock page or research note.
- Tracking a named manager across positions with
holder_ids. - Crowding screens: how much of a stock sits with funds versus institutions.
- Pairing positions with insider transactions for a full picture of who is buying and selling.
Ownership summary ratios on every plan
For a single number rather than a holder list, /v1/share-statistics gives shares_outstanding, float_shares, insider_ownership_ratio and institutional_ownership_ratio over time. It is included on every plan, Free through Scale, at 50 credits per symbol.
Effective date, as_of and history
Two dates control a query. effective_date picks the positions in force on that day. as_of is the knowledge cutoff: only reports OHLC had recorded by the end of that UTC day. Both default to today. Knowledge history starts in late September 2026, when OHLC began recording ownership, so treat the dataset as the current holder picture with history that builds from that point. On October 3, 2026, Apple's positions spanned reports dated from March 31 to August 31, 2026.
Plans and credits
Holder-level ownership is included on Pro, Commercial and Scale, at 50 credits per symbol or 500 credits for a page across the whole market. Pro is for internal use; display to your own users needs Commercial. See pricing.
Institutional holders of Apple
curl 'https://api.ohlc.io/v1/ownership?symbols=XNAS:AAPL&holder_type=institution&order=desc&limit=2' \
-H "Authorization: Bearer $OHLC_API_KEY"{
"data": [
{
"id": "record_69dfbb16a110a57f9926",
"instrument_id": "01M35H2KE2ZJHXFY5C3E7FPC66",
"holder_id": "holder_9a21d007031cb2c4c923",
"holder_name": "Berkshire Hathaway Inc",
"holder_type": "institution",
"reported_on": "2026-06-30",
"shares": "227917808",
"ownership_ratio": "0.015617",
"change_in_shares": "0",
"filing_id": null
},
{
"id": "record_98d659a44c5062c16d79",
"instrument_id": "01M35H2KE2ZJHXFY5C3E7FPC66",
"holder_id": "holder_5866dcd96fe42b6fe8b1",
"holder_name": "NORGES BANK",
"holder_type": "institution",
"reported_on": "2026-06-30",
"shares": "190726866",
"ownership_ratio": "0.013069",
"change_in_shares": "-1528220",
"filing_id": null
}
],
"meta": {
"timezone": "UTC",
"as_of": "2026-10-03T15:05:15Z",
"next_cursor": "Ae7GCFGqp-k6...",
"coverage": { "status": "partial", "reason": "Coverage is partial for the entitled query scope." }
}
}Prices delayed 15 minutes · Illustrative sample data