Get startedDashboard

Manager holdings

Paid plans

Pull one institutional manager's Form 13F portfolio, quarter by quarter, largest position first.

GET/v1/managers/{manager_id}/holdings
View llms.txt

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:

  • shares is 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_usd is in US dollars, not thousands. Filings made before 2023-01-03 reported thousands of dollars and are multiplied by 1,000.
  • sole_voting, shared_voting and no_voting are 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 filing rows. By default it returns quarters after meta.archive_edge; pass source=filing to 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 historical rows up to meta.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:

Terminal
curl -s -H "X-API-Key: YOUR_API_KEY" \
  "https://api.xfinlink.com/v1/managers/900008350/holdings?quarter=2005-12-31&limit=3"
response.json
{
  "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:

Terminal
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)Required

The 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: none

Earliest 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: none

Latest report_date, YYYY-MM-DD, inclusive.

quarterstrDefault: none

One exact report_date, YYYY-MM-DD. Pass a calendar quarter end; any other date returns 400.

min_sharesnumberDefault: none

Minimum shares for the position, 0 or more.

min_valuenumberDefault: none

Minimum value_usd for the position, in USD, 0 or more.

sourcestrDefault: by quarter

filing 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: omitted

Omitted: 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_corrected

Comma-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: 1000

Rows per page, up to 5,000.

cursorstrDefault: none

The 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:

response.json
{
  "manager": { ... },
  "data": [ ... ],
  "data_through": "2026-03-31",
  "count": 5,
  "next_cursor": "djJ8ZXlKeUlqb2liV0Z1WVdkbGNsOW9iMnhrYVc1bmN5SXNJbkVpT2lKSU5VUlBjbE5DZFU5aE5HTmFhV280YlVRMVNuWjNJaXdpY0NJNk1pd2lheUk2SWsxcVFYbE9hVEIzVFhrd2VrMVlkM2hPZWxFeFRucE5NazVFV1hkT2FUUjNUVWgzZUUxRVdUTlBWR2Q2WmtoTmVFMUVRWGROZWxVMFQxaDRPRTlxUlRGT1ZFMDlJbjB8aWJ6OWlzRE9jOEp2RTA2N2FZelRaUQ==",
  "meta": { ... }
}

Top-level fields

fieldtypeunitnullabledescription
managerobjectnoThe manager. See the manager fields below.
datalist[object]noThe positions. See the row fields below.
data_throughstrdateyesThe latest report_date on this page. Null when data is empty.
countintrowsnoRows on this page.
next_cursorstryesPass as cursor for the next page. Null on the last page. meta.next_cursor holds the same value.
warningslist[str]noPresent only when there is something to report, such as an ignored fields name.
metaobjectnoSee the meta fields below.

Manager fields

fieldtypeunitnullabledescription
manager_idintnoThe id you requested.
manager_namestrnoFiling era: the latest filed name. Historical era: the name in the historical dataset.
manager_typestryesHistorical era: the historical dataset's manager type code, a digit from 1 to 5. Null for filing-era managers.
countrystryesHistorical era: the manager's country, for example UNITED STATES. Null for filing-era managers.
cikstryesFiling era: the SEC CIK as a 10-digit, zero-padded string. Null for historical-era managers.
first_quarterstrdatenoThe first quarter end with holdings under this id.
last_quarterstrdatenoThe latest quarter end with holdings under this id.
id_regimestrnofiling or historical.
manager_numberintnoHistorical-era managers only: the historical dataset's manager number, manager_id minus 900,000,000.

Row fields

fieldtypeunitnullabledescription
entity_idintyesThe security (share class). Null on a filed line not linked to a security.
tickerstryesThe security's ticker on report_date. Null when none is on record, and on unlinked lines.
entity_namestryesThe security's company name. Null on unlinked lines.
report_datestrdatenoThe quarter end the position is reported for.
manager_idintnoThe manager's id, as in the path.
manager_namestryesThe manager's name as filed.
manager_typestryesHistorical era: a digit from 1 to 5. Null on filing-era rows.
sharesnumbersharesnoShares 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_datestrdateyesFiling era: the latest filing date among the position's lines. Null on historical rows. Default field.
value_usdnumberUSDyesUS dollars, not thousands. Filing era: the reported value. Historical era: shares × the quarter-end price. Default field.
sole_votingnumbersharesyesShares over which the manager has sole voting authority. Default field.
shared_votingnumbersharesyesShares with shared voting authority. Default field.
no_votingnumbersharesyesShares with no voting authority. Default field.
security_classstryesnull on every row. Default field.
put_callstryesput or call for an option position. Null otherwise, and on every historical row. Default field.
sourcestrnohistorical or filing. Default field.
is_amendmentboolnoTrue when the figures come from an amended filing. Always false on historical rows. Default field.
value_scale_correctedboolnoTrue 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_spacestrnocik or archive.
issuer_entity_idintyesThe company above the security.
issuer_name_as_filedstryesThe issuer's name as stated for the line.
title_of_classstryesFiling rows only: the filer's description of the class.
linesintlinesnoNumber of filed lines summed into the row.
filer_cikintnoFiling rows only: the filer's SEC CIK.
accession_numberstrnoFiling rows only: the SEC accession number of the filing the figures come from.
unit_scale_suspectboolnoFiling rows only: true when the filing states the scale of its values inconsistently. Values on such rows are served as filed.
manager_numberintnoHistorical rows only: the historical dataset's manager number.
vintage_datestrdatenoHistorical rows only: the date of the historical dataset edition the row comes from.
is_currentboolnoTrue when the row is the version in force.

Meta fields

fieldtypeunitnullabledescription
entity_id_isstrnoAlways security.
archive_edgestrdatenoThe last quarter end the historical era answers.
amendment_viewstrnocurrent, all or originals, from include_amendments.
knowledge_timestrUTC timestampyesWhen the newest data in the response became known. See Response metadata.
as_ofstrdatenoend if you passed it, otherwise quarter. Absent when you passed neither.
freshnesslist[object]noOne entry for the era the id belongs to: institutional_holdings or institutional_holdings_historical, with dataset, through and promoted_at.
has_moreboolnotrue when another page follows.
next_cursorstryesPass 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:

400.json
{"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

statuserror codewhen it happenshow to fix
400bad_requestThe 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.
400bad_requeststart, 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.
400bad_requestmin_shares or min_value is negative or not a number.Pass a number of 0 or more.
400bad_requestsource is not historical or filing.Pass one of the two.
400bad_requestinclude_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.
400bad_requestNo fields name is valid.Use the selectable field names.
400bad_requestcursor 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.
400pagination_limit_reachedThe cursor asks for a page beyond your plan's cap. error reads Pagination limit reached.Narrow the query.
401unauthorizedThe key is missing or invalid.Send X-API-Key. See Authentication.
402upgrade_requiredThe key is on the Free plan.Upgrade to Pro.
404not_foundNo manager has this id.Find the id with Manager search.
429see Rate limitsA quota is exhausted.Wait for the window to reset.

Real bodies:

400.json
{"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."}
402.json
{"error":"upgrade_required","code":"upgrade_required","status":402,"detail":"Institutional holdings are available on Pro. https://xfinlink.com/pricing"}
404.json
{"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_amendments or cursor value that is refused returns its 400 first.
  • 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:

Terminal
curl -s -H "X-API-Key: YOUR_API_KEY" "https://api.xfinlink.com/v1/managers/1067983/holdings"
free.json
{"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:

Terminal
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"
response.json
{
  "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:

request.pycurlprompt
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?
stdoutresponse.jsontool result
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?

request.pycurlprompt
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?
stdoutresponse.jsontool result
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=="
  }
}