---
title: "List institutional holdings"
method: GET
path: "/api/v1/institutional/holdings"
tags: ["Institutional"]
---

# List institutional holdings

`GET /api/v1/institutional/holdings`

## Request

- Base URL: `https://earningsfeed.com`
- URL: `https://earningsfeed.com/api/v1/institutional/holdings`
- Auth: HTTP bearer

Retrieve institutional investment holdings from SEC Form 13F filings.

## Data Source

Form 13F is a quarterly report filed by institutional investment managers with at least $100 million in assets under management. These filings reveal the equity holdings of major investors including hedge funds, mutual funds, pension funds, and other institutional investors.

## Understanding 13F Data

### What's Included
- **Equity securities** listed on US exchanges
- **Options** (put/call positions) on such securities
- **Convertible debt** that is convertible into equity

### What's NOT Included
- Foreign securities (unless ADRs)
- Fixed income securities
- Privately held investments
- Short positions (13F only reports long positions)

## Key Fields

| Field | Description |
|-------|-------------|
| **cusip** | 9-character security identifier (first 6 = issuer, 7-8 = issue, 9 = check digit) |
| **value** | Market value in USD (as reported, typically in thousands) |
| **shares** | Number of shares held |
| **sharesType** | SH = Shares, PRN = Principal amount (for debt) |
| **putCall** | Put, Call, or null (for common stock) |
| **investmentDiscretion** | SOLE, DFND (defined/shared), or OTHER |
| **votingSole/Shared/None** | Breakdown of voting authority |

## Filtering Strategies

### Find All Holders of a Stock
```
?ticker=AAPL
?cusip=037833100
?companyCik=320193
```

### Track a Specific Fund's Portfolio
```
?managerCik=1067983              # Berkshire Hathaway
?managerName=Bridgewater         # Partial name match
```

### Filter by Report Period
```
?reportPeriod=2024-09-30         # Exact quarter end
?startDate=2024-01-01&endDate=2024-12-31  # Date range
```

### Find Large Positions
```
?minValue=1000000000             # Positions worth $1B+
?minShares=10000000              # Positions of 10M+ shares
```

### Filter by Security Type
```
?putCall=put                     # Put options only
?putCall=call                    # Call options only
?putCall=equity                  # Common stock only (no options)
```

## Report Period Timing

13F filings are due 45 days after quarter end:
- **Q1** (Jan-Mar): Filed by May 15
- **Q2** (Apr-Jun): Filed by Aug 14
- **Q3** (Jul-Sep): Filed by Nov 14
- **Q4** (Oct-Dec): Filed by Feb 14

## Example Use Cases

1. **Track Warren Buffett's moves**: Filter by `managerCik=1067983` (Berkshire)
2. **Who owns Apple?**: Filter by `ticker=AAPL` + `minValue=1000000000`
3. **Options activity**: Filter by `putCall=put` or `putCall=call`
4. **New positions**: Compare `reportPeriod` across quarters
5. **Sector analysis**: Search by `issuerName` patterns

## Notes

- Values are reported as of quarter end, not filing date
- Amendments (13F-HR/A) may update previously reported positions
- Some managers file confidential treatment requests to delay disclosure

## Query parameters

- `limit` integer: Number of items to return (1-100)
- `cursor` string: Cursor for pagination (opaque string from previous response)
- `managerCik` integer: Filter by institutional manager CIK
- `managerName` string: Search by manager name (partial match)
- `cusip` string: Filter by CUSIP to find all managers holding a specific security
- `companyCik` integer: Filter by company CIK to find institutional holders
- `ticker` string: Filter by stock ticker to find institutional holders
- `issuerName` string: Search by issuer name (partial match)
- `reportPeriod` string: Filter by specific quarter end date (YYYY-MM-DD). E.g., 2024-09-30 for Q3 2024
- `startDate` string: Filter filings on or after this date
- `endDate` string: Filter filings on or before this date
- `minValue` number: Minimum position value in USD
- `minShares` number: Minimum number of shares
- `putCall` 'put' | 'call' | 'equity': Filter by position type: put options, call options, or equity only
- `q` string: Search across manager name, issuer name, or ticker

## Response `200`

Paginated list of institutional holdings

- InstitutionalHoldingsResponse
  - `items` InstitutionalHolding[], required
    - `cusip` string, required: CUSIP (Committee on Uniform Securities Identification Procedures) identifier. A 9-character alphanumeric code that uniquely identifies a security. - First 6 characters: Issuer identifier - Characters 7-8: Issue number - Character 9: Check digit (numeric)
    - `issuerName` string, required: Name of the issuing company as reported in the 13F
    - `classTitle` string, required: Class/type of security (COM, CL A, SPONSORED ADR, etc.)
    - `companyCik` integer, nullable, required: CIK of the issuing company (if resolved from CUSIP)
    - `ticker` string, nullable, required: Primary stock ticker (if resolved)
    - `value` integer, required: Market value of the position in USD (as reported, typically in thousands)
    - `shares` integer, required: Number of shares held
    - `sharesType` string, required: Type of shares: - **SH** = Shares (common) - **PRN** = Principal amount (for debt securities)
    - `putCall` string, nullable, required: Option type if this is an options position: - **Put** = Put option (right to sell) - **Call** = Call option (right to buy) - **null** = Common stock, not an option
    - `investmentDiscretion` string, required: Type of investment discretion the manager has over the position: - **SOLE** = Manager has sole investment discretion - **DFND** = Investment discretion is defined (shared with others) - **OTHER** = Other arrangement
    - `otherManager` string, nullable, required: Name of other manager if investment discretion is shared
    - `votingSole` integer, nullable, required: Shares with sole voting authority
    - `votingShared` integer, nullable, required: Shares with shared voting authority
    - `votingNone` integer, nullable, required: Shares with no voting authority
    - `managerCik` integer, required: CIK of the filing manager
    - `managerName` string, required: Name of the filing manager
    - `reportPeriodDate` string, required: Quarter end date (YYYY-MM-DD)
    - `filedAt` string, date-time, required: SEC filing date. A calendar date encoded as midnight UTC: read only the date part (YYYY-MM-DD) and never convert it to a local time zone. For the moment the SEC accepted the filing, use acceptTs.
    - `accessionNumber` string, required: SEC accession number of the source filing
  - `nextCursor` string, nullable, required: Cursor for next page, null if no more pages
  - `hasMore` boolean, required: Whether more items exist beyond this page

## Other responses

- `400`: Invalid query parameters
- `401`: Unauthorized - API key required
- `429`: Minute rate limit or tier monthly quota exceeded. Retry-After points to the relevant minute or monthly reset.
- `500`: Internal server error

---

[API](https://skmtc.dev/earningsfeed/apis/earnings-feed-api.md) · [All operations](https://skmtc.dev/earningsfeed/apis/earnings-feed-api/llms.txt) · [OpenAPI document](https://skmtc.dev/earningsfeed/apis/earnings-feed-api/revisions/feefa3647c61?raw)
