/api/v1/form-13f/fundsGet all tracked funds (full list for autocomplete).
Get all tracked funds (full list for autocomplete).
Why use this
Common use case
Returns the complete tracked-fund universe in one request — designed for client-side autocomplete preloading. The 9,600-fund payload at limit=10000 is ~800KB compressed; the typical pattern is to fetch this once on app initialization, cache in IndexedDB / Redux / Zustand, and run ALL autocomplete matches in-browser thereafter — eliminating per-keystroke server roundtrips entirely (StockCircle / WhaleWisdom-style 'instant search' UX).
For server-side text search (when client-side preload isn't viable), see GET /api/v1/form-13f/filers — that endpoint adds alias-aware fuzzy search via the filer_aliases table (buffett → Berkshire, ackman → Pershing, dalio → Bridgewater) and returns per-row AUM, but is rate-tiered for the autocomplete use case. For specifically searching by free-text (single-keystroke), see GET /api/v1/form-13f/search.
Response is sorted by filing_count DESC so the most-active filers (Berkshire, BlackRock, Vanguard) appear first — useful for ranking ties in client-side fuzzy search. CIKs are 10-char zero-padded; pass back as-is to the rest of the 13F surface.
Parameters
| Name | In | Required | Default | Allowed | Description | Example |
|---|---|---|---|---|---|---|
| limit | query | optional | 5000 | — | Max results (up to 10,000) | 20 |
Response schema
| Field | Type | Nullable | Description |
|---|---|---|---|
| funds | array | no | Array of all tracked institutional funds — sorted by `filing_count DESC` (most-active filers first). Designed for client-side autocomplete preloading: pass `limit=10000` once on page-init, cache in IndexedDB / Redux, then run all autocomplete matches in-browser without per-keystroke server roundtrips. Each row is small (~80 bytes) so 10K funds fits in ~800KB transfer. |
| funds[].cik | string | no | Filer CIK as a 10-character zero-padded string. The stable join key for this filer across the entire 13F surface (`/holdings`, `/cover-pages`, `/aggregation/by-ticker`, `/fund-performance`). Berkshire = `0001067983`; BlackRock = `0001364742`; Vanguard = `0000884144`. |
| funds[].name | string | no | Registrant name AS FILED on the most recent 13F-HR (typically all-caps in EDGAR convention, e.g. `BERKSHIRE HATHAWAY INC`). Casing preserved verbatim. NOT alias-normalized — for the user-friendly alias (e.g. 'Warren Buffett') consult [GET /api/v1/form-13f/filers](/docs/institutional-holdings/form-13f-api/get-form-13f-filers) which queries the curated `filer_aliases` table. |
| funds[].filing_count | integer | no | Total cumulative 13F filings ingested for this filer (across all quarters and amendments). Active large managers (Berkshire, Vanguard, BlackRock) have 90-100+ filings going back to 2013 (FinRadar's coverage start); newer managers have lower counts. Use this to weight ranking in client-side fuzzy search (most-active filers should bubble up). |
| funds[].latest_period | string | yes | ISO `YYYY-MM-DD` reporting period of the most recent 13F-HR for this filer. Null for filers registered but with no parsed filings yet. Use to detect inactive/dissolved filers — values older than ~7 months indicate the filer skipped the most recent quarterly deadline (45 days post-quarter-end). |
| count | integer | no | Total number of funds returned (echoes back `funds.length`). The full 13F universe currently sits at ~9,600 unique CIKs — pass `limit=10000` to fetch them all in one round-trip. |
Sample response
- "funds":
- "count": 4
Errors
| Status | Label | Description |
|---|---|---|
| 200 | OK | Request succeeded. |
| 400 | Bad Request | Invalid query, body, or path parameter. |
| 401 | Unauthorized | Missing or invalid Authorization header / api_Token. |
| 402 | Payment Required | Insufficient token balance for this call. Top up |
| 429 | Too Many Requests | Rate limit exceeded for your tier (see /pricing for tier limits). Tier limits |
| 500 | Server Error | Unexpected server-side failure. Retry with backoff; report if persistent. |
Code samples
curl "https://api.finradar.ai/api/v1/form-13f/funds" \
-H "Authorization: Bearer YOUR_JWT_TOKEN"Generate an API key in /account/credentials to run live queries (literal YOUR_API_KEY placeholder shown until then).