Manager holdings
Paid plansPull one institutional manager's Form 13F portfolio, quarter by quarter, largest position first.
GET /v1/managers/{manager_id}/holdings returns every position one manager reported on SEC Form 13F: one row per security and quarter end, largest value_usd first within each quarter. The rows have the same fields as Institutional holdings, and a top-level manager object describes the manager once. Find a manager_id with Manager search or read it from any holdings row.
Units are the same as on Institutional holdings:
sharesis the number of shares reported, summed across the manager's lines for the security and quarter, not adjusted for later splits. A line reported as a principal amount carries that amount in USD.value_usdis in US dollars, not thousands. Filings made before 2023-01-03 reported thousands of dollars and are multiplied by 1,000.sole_voting,shared_votingandno_votingare share counts.
entity_id on each row is one share class, and meta.entity_id_is reads security.
Manager holdings are available on Pro and higher plans. A Free key receives 402.
One id, one era
A manager_id belongs to one of the two eras described on Institutional holdings, and the id alone decides which era answers:
- An id below 900,000,000 is a filing-era id, the filer's SEC CIK. It returns
filingrows. By default it returns quarters aftermeta.archive_edge; passsource=filingto add earlier quarters from the same filer's Form 13F filings, which run from 2013. - An id of 900,000,000 or above is a historical-era id. It returns
historicalrows up tometa.archive_edge.
A firm that appears in both eras has one id in each. Berkshire Hathaway is 1067983 in the filing era and 900008350 in the historical era:
curl -s -H "X-API-Key: YOUR_API_KEY" \
"https://api.xfinlink.com/v1/managers/900008350/holdings?quarter=2005-12-31&limit=3"{
"manager": {
"manager_id": 900008350,
"manager_name": "BERKSHIRE HATHAWAY INC.",
"manager_type": "5",
"country": "UNITED STATES",
"cik": null,
"first_quarter": "1980-03-31",
"last_quarter": "2025-12-31",
"id_regime": "historical",
"manager_number": 8350
},
"data": [
{
"entity_id": 10001013,
"ticker": "KO",
"entity_name": "COCA COLA CO",
"report_date": "2005-12-31",
"manager_id": 900008350,
"manager_name": "BERKSHIRE HATHAWAY INC.",
"manager_type": "5",
"shares": 200000000,
"filing_date": null,
"value_usd": 8062000000,
"sole_voting": 200000000,
"shared_voting": 0,
"no_voting": 0,
...
"put_call": null,
"source": "historical",
"is_amendment": false,
"manager_id_space": "archive",
"issuer_entity_id": 1675,
"link_method": "windowed",
"issuer_name_as_filed": "COCA COLA CO",
"lines": 1,
"manager_number": 8350,
"vintage_date": "2005-12-31",
"is_current": true
},
{"entity_id": 10017034, "ticker": "AXP", "entity_name": "AMERICAN EXPRESS CO", "report_date": "2005-12-31", "shares": 151610700, "value_usd": 7801886622, "source": "historical", ...},
{"entity_id": 10006466, "ticker": "PG", "entity_name": "PROCTER & GAMBLE CO", "report_date": "2005-12-31", "shares": 100000000, "value_usd": 5788000000, "source": "historical", ...}
],
"data_through": "2005-12-31",
"count": 3,
"next_cursor": "djJ8ZXlKeUlqb2liV0Z1WVdkbGNsOW9iMnhrYVc1bmN5SXNJbkVpT2lKWE9IZFhTRlF6UWsxWWR6aGFhbU0xVnpKQlRTMVJJaXdpY0NJNk1pd2lheUk2SWsxcVFYZE9VekI0VFdrd2VrMVlkekZPZW1jMFRVUkJkMDFFUVhkTWFrRjNaa1JyZDAxRVFYZFBSRTB4VFVoNGVrMVVRWGROUkZrd1RtcGFPR1pFYnpKTlJFRjRUMnByZDFwRVdtMWFWRlV3VGxSck1rOVVhek5OYWtFeVRrUlpNVTFIVVRWT1IwVXpUVlJSTlUxSFVtMGlmUXxKR3NnNHphR2pEX2cyNzJ6REtEem9R",
"meta": {
"entity_id_is": "security",
"archive_edge": "2025-12-31",
"amendment_view": "current",
"knowledge_time": "2026-07-25T19:46:39Z",
"as_of": "2005-12-31",
"freshness": [
{"dataset": "institutional_holdings_historical", "through": "2025-12-31", "promoted_at": "2026-09-24T19:51:07Z"}
],
"has_more": true,
"next_cursor": "djJ8ZXlKeUlqb2liV0Z1WVdkbGNsOW9iMnhrYVc1bmN5SXNJbkVpT2lKWE9IZFhTRlF6UWsxWWR6aGFhbU0xVnpKQlRTMVJJaXdpY0NJNk1pd2lheUk2SWsxcVFYZE9VekI0VFdrd2VrMVlkekZPZW1jMFRVUkJkMDFFUVhkTWFrRjNaa1JyZDAxRVFYZFBSRTB4VFVoNGVrMVVRWGROUkZrd1RtcGFPR1pFYnpKTlJFRjRUMnByZDFwRVdtMWFWRlV3VGxSck1rOVVhek5OYWtFeVRrUlpNVTFIVVRWT1IwVXpUVlJSTlUxSFVtMGlmUXxKR3NnNHphR2pEX2cyNzJ6REtEem9R"
}
}The filing-era id returns nothing for 2023-12-31 by default, because that quarter is on or before meta.archive_edge. With source=filing the same request returns Berkshire's 42 positions from its own filing:
curl -s -H "X-API-Key: YOUR_API_KEY" \
"https://api.xfinlink.com/v1/managers/1067983/holdings?quarter=2023-12-31&source=filing"Parameters
manager_idint (path)RequiredThe manager's id: the decimal digits of a positive integer, with no leading zeros. Filing-era ids are SEC CIKs; historical-era ids are 900,000,000 and above.
startstrDefault: noneEarliest report_date, YYYY-MM-DD, inclusive. The Python client sends a start 365 days before end, or before today, when you omit both start and quarter.
endstrDefault: noneLatest report_date, YYYY-MM-DD, inclusive.
quarterstrDefault: noneOne exact report_date, YYYY-MM-DD. Pass a calendar quarter end; any other date returns 400.
min_valuenumberDefault: noneMinimum value_usd for the position, in USD, 0 or more.
sourcestrDefault: by quarterfiling lets a filing-era id return quarters on or before meta.archive_edge. The id decides the era, so historical, or source on a historical-era id, returns the same rows as omitting it. Values: historical or filing, any letter case.
include_amendmentsstrDefault: omittedOmitted: the position in force. true: every filed version. false: original filings only. Both are read in any letter case; any other non-empty value returns 400. Filing-era ids only; historical rows have no amendments.
fieldsstrDefault: every selectable field except value_scale_correctedComma-separated. Selectable: filing_date, value_usd, sole_voting, shared_voting, no_voting, security_class, put_call, source, is_amendment, and the opt-in value_scale_corrected. The identifying and era fields are always returned. An unknown name is ignored with a warning; a list with no known name returns 400.
limitintDefault: 1000Rows per page, up to 5,000.
cursorstrDefault: noneThe next_cursor value from the previous page, passed back unchanged.
The Python client's manager_holdings() accepts manager_id, start, end, quarter, min_shares, min_value, fields and limit. It sends neither source nor include_amendments, so the API defaults apply.
Response
The body has manager, data, data_through, count, next_cursor, warnings and meta at the top level:
{
"manager": { ... },
"data": [ ... ],
"data_through": "2026-03-31",
"count": 5,
"next_cursor": "djJ8ZXlKeUlqb2liV0Z1WVdkbGNsOW9iMnhrYVc1bmN5SXNJbkVpT2lKSU5VUlBjbE5DZFU5aE5HTmFhV280YlVRMVNuWjNJaXdpY0NJNk1pd2lheUk2SWsxcVFYbE9hVEIzVFhrd2VrMVlkM2hPZWxFeFRucE5NazVFV1hkT2FUUjNUVWgzZUUxRVdUTlBWR2Q2WmtoTmVFMUVRWGROZWxVMFQxaDRPRTlxUlRGT1ZFMDlJbjB8aWJ6OWlzRE9jOEp2RTA2N2FZelRaUQ==",
"meta": { ... }
}Top-level fields
| field | type | unit | nullable | description |
|---|---|---|---|---|
manager | object | no | The manager. See the manager fields below. | |
data | list[object] | no | The positions. See the row fields below. | |
data_through | str | date | yes | The latest report_date on this page. Null when data is empty. |
count | int | rows | no | Rows on this page. |
next_cursor | str | yes | Pass as cursor for the next page. Null on the last page. meta.next_cursor holds the same value. | |
warnings | list[str] | no | Present only when there is something to report, such as an ignored fields name. | |
meta | object | no | See the meta fields below. |
Manager fields
| field | type | unit | nullable | description |
|---|---|---|---|---|
manager_id | int | no | The id you requested. | |
manager_name | str | no | Filing era: the latest filed name. Historical era: the name in the historical dataset. | |
manager_type | str | yes | Historical era: the historical dataset's manager type code, a digit from 1 to 5. Null for filing-era managers. | |
country | str | yes | Historical era: the manager's country, for example UNITED STATES. Null for filing-era managers. | |
cik | str | yes | Filing era: the SEC CIK as a 10-digit, zero-padded string. Null for historical-era managers. | |
first_quarter | str | date | no | The first quarter end with holdings under this id. |
last_quarter | str | date | no | The latest quarter end with holdings under this id. |
id_regime | str | no | filing or historical. | |
manager_number | int | no | Historical-era managers only: the historical dataset's manager number, manager_id minus 900,000,000. |
Row fields
| field | type | unit | nullable | description |
|---|---|---|---|---|
entity_id | int | yes | The security (share class). Null on a filed line not linked to a security. | |
ticker | str | yes | The security's ticker on report_date. Null when none is on record, and on unlinked lines. | |
entity_name | str | yes | The security's company name. Null on unlinked lines. | |
report_date | str | date | no | The quarter end the position is reported for. |
manager_id | int | no | The manager's id, as in the path. | |
manager_name | str | yes | The manager's name as filed. | |
manager_type | str | yes | Historical era: a digit from 1 to 5. Null on filing-era rows. | |
shares | number | shares | no | Shares reported, summed across the manager's lines for the position. Not adjusted for splits. On a line reported as a principal amount, the principal in USD. |
filing_date | str | date | yes | Filing era: the latest filing date among the position's lines. Null on historical rows. Default field. |
value_usd | number | USD | yes | US dollars, not thousands. Filing era: the reported value. Historical era: shares × the quarter-end price. Default field. |
sole_voting | number | shares | yes | Shares over which the manager has sole voting authority. Default field. |
shared_voting | number | shares | yes | Shares with shared voting authority. Default field. |
no_voting | number | shares | yes | Shares with no voting authority. Default field. |
security_class | str | yes | null on every row. Default field. | |
put_call | str | yes | put or call for an option position. Null otherwise, and on every historical row. Default field. | |
source | str | no | historical or filing. Default field. | |
is_amendment | bool | no | True when the figures come from an amended filing. Always false on historical rows. Default field. | |
value_scale_corrected | bool | no | True when a filing made before 2023-01-03 already stated whole dollars, so its values are served as filed. Opt-in through fields. | |
manager_id_space | str | no | cik or archive. | |
issuer_entity_id | int | yes | The company above the security. | |
link_method | str | yes | How the security identifier on the line was matched: windowed, censored or unique; null on an unlinked line. See Institutional holdings. | |
issuer_name_as_filed | str | yes | The issuer's name as stated for the line. | |
title_of_class | str | yes | Filing rows only: the filer's description of the class. | |
lines | int | lines | no | Number of filed lines summed into the row. |
filer_cik | int | no | Filing rows only: the filer's SEC CIK. | |
accession_number | str | no | Filing rows only: the SEC accession number of the filing the figures come from. | |
unit_scale_suspect | bool | no | Filing rows only: true when the filing states the scale of its values inconsistently. Values on such rows are served as filed. | |
manager_number | int | no | Historical rows only: the historical dataset's manager number. | |
vintage_date | str | date | no | Historical rows only: the date of the historical dataset edition the row comes from. |
is_current | bool | no | True when the row is the version in force. |
Meta fields
| field | type | unit | nullable | description |
|---|---|---|---|---|
entity_id_is | str | no | Always security. | |
archive_edge | str | date | no | The last quarter end the historical era answers. |
amendment_view | str | no | current, all or originals, from include_amendments. | |
knowledge_time | str | UTC timestamp | yes | When the newest data in the response became known. See Response metadata. |
as_of | str | date | no | end if you passed it, otherwise quarter. Absent when you passed neither. |
freshness | list[object] | no | One entry for the era the id belongs to: institutional_holdings or institutional_holdings_historical, with dataset, through and promoted_at. | |
has_more | bool | no | true when another page follows. | |
next_cursor | str | yes | Pass as cursor for the next page. The same value as the top-level next_cursor. Null on the last page. |
Pagination
A page holds up to limit rows: 1,000 by default, 5,000 at most. Rows are ordered by report_date descending, then value_usd descending, with null values last, then by the position's own keys, so a page can end between any two rows without skipping or repeating one.
When more rows match, meta.has_more is true and next_cursor, at the top level of the body and in meta, carries a token. Pass it back as cursor with the same path and parameters. On the last page meta.has_more is false and next_cursor is null. Pagination covers cursors in general.
One query can run to 50 pages on Pro, 100 on Max and 200 on Redistribution. A cursor for a page beyond the cap returns 400:
{"error":"Pagination limit reached","code":"pagination_limit_reached","status":400,"detail":"Pro tier supports up to 50 pages per query.","message":"Pro tier supports up to 50 pages per query."}With source=filing and a window on or before meta.archive_edge, read the window in one page. Raise limit, or narrow with quarter or min_value.
The Python client's manager_holdings() returns one page per call, up to 5,000 rows, and returns the rows without the manager object.
Errors
| status | error code | when it happens | how to fix |
|---|---|---|---|
400 | bad_request | The path id is not the plain decimal form of a positive integer, for example abc or 01067983. | Pass the id as returned, without leading zeros. |
400 | bad_request | start, end or quarter is not a real YYYY-MM-DD date, quarter is not a calendar quarter end, or end is before start. | Pass a valid calendar date; for quarter, a quarter end. |
400 | bad_request | min_shares or min_value is negative or not a number. | Pass a number of 0 or more. |
400 | bad_request | source is not historical or filing. | Pass one of the two. |
400 | bad_request | include_amendments is a non-empty value other than true or false, or limit is not a whole number from 1 to 999,999,999. | Pass true or false, and a limit of 1 or more. |
400 | bad_request | No fields name is valid. | Use the selectable field names. |
400 | bad_request | cursor was not issued for this request: it is not a next_cursor value, it has been altered, or it came from another path, a changed parameter or another endpoint. | Pass next_cursor unchanged with the same path and parameters, or repeat the request without cursor. |
400 | pagination_limit_reached | The cursor asks for a page beyond your plan's cap. error reads Pagination limit reached. | Narrow the query. |
401 | unauthorized | The key is missing or invalid. | Send X-API-Key. See Authentication. |
402 | upgrade_required | The key is on the Free plan. | Upgrade to Pro. |
404 | not_found | No manager has this id. | Find the id with Manager search. |
429 | see Rate limits | A quota is exhausted. | Wait for the window to reset. |
Real bodies:
{"error":"bad_request","code":"bad_request","status":400,"detail":"manager_id must be a positive integer"}
{"error":"bad_request","code":"bad_request","status":400,"detail":"Invalid quarter date format (YYYY-MM-DD)"}
{"error":"bad_request","code":"bad_request","status":400,"detail":"source must be 'historical' or 'filing'"}
{"error":"bad_request","code":"bad_request","status":400,"detail":"No valid fields requested. Unknown: bogus. Selectable via fields=: filing_date, value_usd, ... Always included: entity_id, ticker, entity_name, report_date, shares, manager_id, manager_name, manager_type."}{"error":"upgrade_required","code":"upgrade_required","status":402,"detail":"Institutional holdings are available on Pro. https://xfinlink.com/pricing"}{"error":"not_found","code":"not_found","status":404,"detail":"No manager with id 999999"}An id that exists but has no rows in your window returns 200 with an empty data array.
Plan differences
- Free:
402. A date,quarter,limit,include_amendmentsorcursorvalue that is refused returns its400first. - Pro: full history, 50 pages per query.
- Max: full history, 100 pages per query.
- Redistribution: full history, 200 pages per query.
Each request counts as one unit against your daily quota. A Free key's 402 does not count. See Plans and limits.
The same request on Free:
curl -s -H "X-API-Key: YOUR_API_KEY" "https://api.xfinlink.com/v1/managers/1067983/holdings"{"error":"upgrade_required","code":"upgrade_required","status":402,"detail":"Institutional holdings are available on Pro. https://xfinlink.com/pricing"}On Pro it returns 200 with Berkshire Hathaway's positions for the quarters after meta.archive_edge.
Edge cases
Positions stated only in an amendment
A filer can report a position for the first time in an amended filing. The default view includes it; include_amendments=false leaves it out, because it has no original. Berkshire Hathaway's Chubb position for 2023-Q4 was filed on 2024-05-15, in an amendment to its February filing:
curl -s -H "X-API-Key: YOUR_API_KEY" \
"https://api.xfinlink.com/v1/managers/1067983/holdings?quarter=2023-12-31&source=filing&min_value=4000000000&fields=value_usd,filing_date,is_amendment"{
"manager": {"manager_id": 1067983, "manager_name": "Berkshire Hathaway Inc", ...},
"data": [
{"ticker": "AAPL", "shares": 905560000, "value_usd": 174347466800, "filing_date": "2024-02-14", "is_amendment": false, "accession_number": "0000950123-24-002518", ...},
{"ticker": "BAC", "shares": 1032852006, "value_usd": 34776127042, "filing_date": "2024-02-14", "is_amendment": false, ...},
{"ticker": "AXP", "shares": 151610700, "value_usd": 28402748537, "filing_date": "2024-02-14", "is_amendment": false, ...},
{"ticker": "KO", "shares": 400000000, "value_usd": 23572000000, "filing_date": "2024-02-14", "is_amendment": false, ...},
{"ticker": "CVX", "shares": 126093326, "value_usd": 18808080506, "filing_date": "2024-02-14", "is_amendment": false, ...},
{"ticker": "OXY", "shares": 243715804, "value_usd": 14552270657, "filing_date": "2024-02-14", "is_amendment": false, ...},
{"ticker": "KHC", "shares": 325634818, "value_usd": 12041975570, "filing_date": "2024-02-14", "is_amendment": false, ...},
{"ticker": "MCO", "shares": 24669778, "value_usd": 9635028496, "filing_date": "2024-02-14", "is_amendment": false, ...},
{"ticker": "CB", "shares": 20100000, "value_usd": 4542600000, "filing_date": "2024-05-15", "is_amendment": true, "accession_number": "0000950123-24-005664", ...}
],
"count": 9,
...
"meta": {"amendment_view": "current", ...}
}With include_amendments=false the same request returns 8 rows, without CB.
Unlinked lines
A filed line that names no security on record is returned under its manager with entity_id, ticker, entity_name, issuer_entity_id and link_method null, and is reachable here, not by ticker.
A portfolio total over value_usd includes unlinked lines; a total over rows with an entity_id does not.
Tickers on older rows
ticker and entity_name describe each row's own security on its report_date. Berkshire Hathaway's 2005 rows read KO, AXP and PG. issuer_name_as_filed keeps the name as stated for the quarter.
Request examples
Berkshire Hathaway's five largest positions at the end of 2026-Q1:
import xfinlink as xfl
xfl.set_api_key("YOUR_API_KEY")
df = xfl.manager_holdings(
1067983,
quarter="2026-03-31",
fields=["filing_date", "value_usd"],
limit=5,
)
print(df[["ticker", "entity_name", "shares", "value_usd", "filing_date"]].to_string(index=False))curl -s -H "X-API-Key: YOUR_API_KEY" \
"https://api.xfinlink.com/v1/managers/1067983/holdings?quarter=2026-03-31&fields=filing_date,value_usd&limit=5"What were Berkshire Hathaway's five largest stock positions at the end of the first quarter of 2026, by value?ticker entity_name shares value_usd filing_date
AAPL APPLE INC 227917808 57843260493 2026-05-15
AXP AMERICAN EXPRESS CO 151610700 45859204536 2026-05-15
KO COCA COLA CO 400000000 30420000000 2026-05-15
BAC BANK OF AMERICA CORP 513624165 25039178044 2026-05-15
CVX CHEVRON CORP NEW 84375856 17457364606 2026-05-15{
"manager": {
"manager_id": 1067983,
"manager_name": "Berkshire Hathaway Inc",
"manager_type": null,
"country": null,
"cik": "0001067983",
"first_quarter": "2013-06-30",
"last_quarter": "2026-06-30",
"id_regime": "filing"
},
"data": [
{
"entity_id": 10003635,
"ticker": "AAPL",
"entity_name": "APPLE INC",
"report_date": "2026-03-31",
"manager_id": 1067983,
"manager_name": "Berkshire Hathaway Inc",
"manager_type": null,
"shares": 227917808,
"filing_date": "2026-05-15",
"value_usd": 57843260493,
"manager_id_space": "cik",
"issuer_entity_id": 1,
"link_method": "censored",
"issuer_name_as_filed": "APPLE INC",
"title_of_class": "COM",
"lines": 12,
"filer_cik": 1067983,
"accession_number": "0001193125-26-226661",
"unit_scale_suspect": false,
"is_current": true
},
{
"entity_id": 10017034,
"ticker": "AXP",
"entity_name": "AMERICAN EXPRESS CO",
"report_date": "2026-03-31",
"manager_id": 1067983,
"manager_name": "Berkshire Hathaway Inc",
"manager_type": null,
"shares": 151610700,
"filing_date": "2026-05-15",
"value_usd": 45859204536,
"manager_id_space": "cik",
"issuer_entity_id": 363,
"link_method": "censored",
"issuer_name_as_filed": "AMERICAN EXPRESS CO",
"title_of_class": "COM",
"lines": 3,
"filer_cik": 1067983,
"accession_number": "0001193125-26-226661",
"unit_scale_suspect": false,
"is_current": true
},
{
"entity_id": 10001013,
"ticker": "KO",
"entity_name": "COCA COLA CO",
"report_date": "2026-03-31",
"manager_id": 1067983,
"manager_name": "Berkshire Hathaway Inc",
"manager_type": null,
"shares": 400000000,
"filing_date": "2026-05-15",
"value_usd": 30420000000,
"manager_id_space": "cik",
"issuer_entity_id": 1675,
"link_method": "censored",
"issuer_name_as_filed": "COCA COLA CO",
"title_of_class": "COM",
"lines": 10,
"filer_cik": 1067983,
"accession_number": "0001193125-26-226661",
"unit_scale_suspect": false,
"is_current": true
},
{
"entity_id": 10017063,
"ticker": "BAC",
"entity_name": "BANK OF AMERICA CORP",
"report_date": "2026-03-31",
"manager_id": 1067983,
"manager_name": "Berkshire Hathaway Inc",
"manager_type": null,
"shares": 513624165,
"filing_date": "2026-05-15",
"value_usd": 25039178044,
"manager_id_space": "cik",
"issuer_entity_id": 5132,
"link_method": "censored",
"issuer_name_as_filed": "BANK AMERICA CORP",
"title_of_class": "COM",
"lines": 9,
"filer_cik": 1067983,
"accession_number": "0001193125-26-226661",
"unit_scale_suspect": false,
"is_current": true
},
{
"entity_id": 10003589,
"ticker": "CVX",
"entity_name": "CHEVRON CORP NEW",
"report_date": "2026-03-31",
"manager_id": 1067983,
"manager_name": "Berkshire Hathaway Inc",
"manager_type": null,
"shares": 84375856,
"filing_date": "2026-05-15",
"value_usd": 17457364606,
"manager_id_space": "cik",
"issuer_entity_id": 1553,
"link_method": "censored",
"issuer_name_as_filed": "CHEVRON CORPORATION",
"title_of_class": "COM",
"lines": 4,
"filer_cik": 1067983,
"accession_number": "0001193125-26-226661",
"unit_scale_suspect": false,
"is_current": true
}
],
"data_through": "2026-03-31",
"count": 5,
"next_cursor": "djJ8ZXlKeUlqb2liV0Z1WVdkbGNsOW9iMnhrYVc1bmN5SXNJbkVpT2lKSU5VUlBjbE5DZFU5aE5HTmFhV280YlVRMVNuWjNJaXdpY0NJNk1pd2lheUk2SWsxcVFYbE9hVEIzVFhrd2VrMVlkM2hPZWxFeFRucE5NazVFV1hkT2FUUjNUVWgzZUUxRVdUTlBWR2Q2WmtoTmVFMUVRWGROZWxVMFQxaDRPRTlxUlRGT1ZFMDlJbjB8aWJ6OWlzRE9jOEp2RTA2N2FZelRaUQ==",
"meta": {
"entity_id_is": "security",
"archive_edge": "2025-12-31",
"amendment_view": "current",
"knowledge_time": "2026-09-26T18:53:54Z",
"as_of": "2026-03-31",
"freshness": [
{"dataset": "institutional_holdings", "through": "2026-06-30", "promoted_at": "2026-09-25T15:35:44Z"}
],
"has_more": true,
"next_cursor": "djJ8ZXlKeUlqb2liV0Z1WVdkbGNsOW9iMnhrYVc1bmN5SXNJbkVpT2lKSU5VUlBjbE5DZFU5aE5HTmFhV280YlVRMVNuWjNJaXdpY0NJNk1pd2lheUk2SWsxcVFYbE9hVEIzVFhrd2VrMVlkM2hPZWxFeFRucE5NazVFV1hkT2FUUjNUVWgzZUUxRVdUTlBWR2Q2WmtoTmVFMUVRWGROZWxVMFQxaDRPRTlxUlRGT1ZFMDlJbjB8aWJ6OWlzRE9jOEp2RTA2N2FZelRaUQ=="
}
}{"tool": "get_manager_holdings", "arguments": {"manager_id": 1067983, "quarter": "2026-03-31", "fields": "filing_date,value_usd", "limit": 5}}
{
"manager": {
"manager_id": 1067983,
"manager_name": "Berkshire Hathaway Inc",
"manager_type": null,
"country": null,
"cik": "0001067983",
"first_quarter": "2013-06-30",
"last_quarter": "2026-06-30",
"id_regime": "filing"
},
"data": [
{
"entity_id": 10003635,
"ticker": "AAPL",
"entity_name": "APPLE INC",
"report_date": "2026-03-31",
"manager_id": 1067983,
"manager_name": "Berkshire Hathaway Inc",
"manager_type": null,
"shares": 227917808,
"filing_date": "2026-05-15",
"value_usd": 57843260493,
"manager_id_space": "cik",
"issuer_entity_id": 1,
"link_method": "censored",
"issuer_name_as_filed": "APPLE INC",
"title_of_class": "COM",
"lines": 12,
"filer_cik": 1067983,
"accession_number": "0001193125-26-226661",
"unit_scale_suspect": false,
"is_current": true
},
...
],
"data_through": "2026-03-31",
"count": 5,
"next_cursor": "djJ8ZXlKeUlqb2liV0Z1WVdkbGNsOW9iMnhrYVc1bmN5SXNJbkVpT2lKSU5VUlBjbE5DZFU5aE5HTmFhV280YlVRMVNuWjNJaXdpY0NJNk1pd2lheUk2SWsxcVFYbE9hVEIzVFhrd2VrMVlkM2hPZWxFeFRucE5NazVFV1hkT2FUUjNUVWgzZUUxRVdUTlBWR2Q2WmtoTmVFMUVRWGROZWxVMFQxaDRPRTlxUlRGT1ZFMDlJbjB8aWJ6OWlzRE9jOEp2RTA2N2FZelRaUQ==",
"meta": {
"entity_id_is": "security",
"archive_edge": "2025-12-31",
"amendment_view": "current",
"knowledge_time": "2026-09-26T18:53:54Z",
"as_of": "2026-03-31",
"freshness": [
{"dataset": "institutional_holdings", "through": "2026-06-30", "promoted_at": "2026-09-25T15:35:44Z"}
],
"has_more": true,
"next_cursor": "djJ8ZXlKeUlqb2liV0Z1WVdkbGNsOW9iMnhrYVc1bmN5SXNJbkVpT2lKSU5VUlBjbE5DZFU5aE5HTmFhV280YlVRMVNuWjNJaXdpY0NJNk1pd2lheUk2SWsxcVFYbE9hVEIzVFhrd2VrMVlkM2hPZWxFeFRucE5NazVFV1hkT2FUUjNUVWgzZUUxRVdUTlBWR2Q2WmtoTmVFMUVRWGROZWxVMFQxaDRPRTlxUlRGT1ZFMDlJbjB8aWJ6OWlzRE9jOEp2RTA2N2FZelRaUQ=="
}
}The tool result's text is the same JSON body as the curl response. The get_manager_holdings tool takes neither source nor include_amendments.
Was this page helpful?
Thank you for helping improve xfinlink documentation.
- Need help? Get in touch.
- Building with an LLM? Read llms.txt.
- Using Claude or ChatGPT? Connect the MCP server.