search.stillhousedata.com - Firm + Fund Filing Search

Stillhouse Data API Beta

REST access to SEC Form ADV investment adviser data - firm search and detail, adviser rep movements, 13F holdings, and ADV Part 2 brochures. More datasets will be added under new sections of this page.

Base URL:  https://api.stillhousedata.com/v1

Authentication

Every request requires an API key, passed either way:

Authorization: Bearer cove_XXXXXXXX...
X-Api-Key: cove_XXXXXXXX...

Free API access: sign in and create a key: 10 calls per minute, 1 active key per account, covering adviser search, list, and firm profiles. For everything else and higher usage limits contact us.

Keys carry scopes. This API requires the api scope (keys scoped only to mcp will receive 403). Endpoints marked contact for access are not part of the default tier - contact us if you want access to the additional endpoints.

Keep keys server-side. Do not embed a key in browser JavaScript or mobile apps - anyone can read it there. Revoked keys stop working within about 30 seconds.

Verify connectivity with:

curl -s https://api.stillhousedata.com/v1/me \
  -H "Authorization: Bearer cove_..."

Rate limits

BucketLimitApplies to
Search10 requests / minute / key/adv/advisers/search, /adv/advisers/list, /brochures/search
General10 requests / minute / keyAll other endpoints

The buckets are independent. Responses include standard RateLimit-* headers (limit, remaining, reset). Exceeding a bucket returns 429 with a JSON body:

{ "error": "Search limit exceeded: 10 searches per minute per API key" }

Errors

StatusMeaning
401Missing, invalid, or revoked API key
403Key lacks required access (contact-for-access endpoints need a key issued by us)
404Unknown endpoint (only the endpoints documented here exist), or entity not found
429Rate limit exceeded - check RateLimit-Reset

All errors are JSON: { "error": "..." }.

Form ADV - investment advisers

Data derives from SEC Form ADV filings (Part 1A), FINRA/IAPD rep records, and related SEC filings (13F, N-CEN, N-MFP). Firms are keyed by CRD number. Search, list, and the firm profile are included by default.

GET /v1/adv/advisers/list search bucket filtered, sorted, paginated firm list

Filtered, sorted, paginated firm list.

ParamDescription
qName filter (optional)
stateTwo-letter state code
adviser_typeRegistration type filter
fund_typePrivate fund type filter
exclude_terminatedtrue to drop terminated registrations
has_disciplinarytrue for firms with disciplinary disclosures
sortraum (default) | date | name
orderdesc (default) | asc
limit, offsetPagination

Example: GET /v1/adv/advisers/list?state=FL&limit=2 (response trimmed):

{
  "rows": [
    {
      "id": "3705",
      "crd": "148826",
      "adviser_type": "IA",
      "firm_name": "CITADEL ADVISORS LLC",
      "city": "MIAMI",
      "state": "FL",
      "country": "United States",
      "latest_raum": "570621709022.00",
      "latest_filing_date": "2026-06-11T07:00:00.000Z",
      "has_disciplinary": false,
      "fund_count": 37
    },
    "… 1 more"
  ],
  "total": 3009,
  "limit": 2,
  "offset": 0
}
GET /v1/adv/advisers/by-crd/{crd} firm profile, compact by default

Firm profile. By default returns a compact core: identity, latest-filing summary (AUM, clients, registration), and fund counts by type. Opt into heavier sections with include (full responses can exceed 100 KB for large firms):

ParamDescription
includeComma-separated sections, or all. Available: filings (full filing history incl. fee schedules and form details), funds (private funds, GAV timeseries, non-private funds), service_providers (auditors/custodians/administrators), drp (disciplinary events), people (owners & officers), branches, part1a (latest Form ADV Part 1A verbatim), sma (SMA asset allocation), linked (linked Form D issuers). The response's sections field echoes what was included.
# compact core (default)
curl -s https://api.stillhousedata.com/v1/adv/advisers/by-crd/148826 \
  -H "X-Api-Key: cove_..."

# core + private funds + disciplinary history
curl -s "https://api.stillhousedata.com/v1/adv/advisers/by-crd/148826?include=funds,drp" \
  -H "X-Api-Key: cove_..."

# everything (the old behavior)
curl -s ".../by-crd/148826?include=all" -H "X-Api-Key: cove_..."

Example: GET /v1/adv/advisers/by-crd/148826 (compact default) (response trimmed):

{
  "adviser": {
    "id": "3705",
    "crd": "148826",
    "sec_file_number": "801-70860",
    "adviser_type": "IA",
    "firm_name": "CITADEL ADVISORS LLC",
    "street": "830 BRICKELL PLAZA, FLOOR 15",
    "city": "MIAMI",
    "state": "FL",
    "country": "United States",
    "zip": "33131",
    "phone": "786-741-5389",
    "lat": 25.765852585926,
    "lng": -80.190829386817,
    "has_website": true,
    "execution_type": "Domestic"
  },
  "latest_filing": {
    "id": "5240554",
    "filing_id": "-20260611",
    "filing_date": "2026-06-11T07:00:00.000Z",
    "filing_type": null,
    "total_clients": "3284",
    "discretionary_aum": "570621709022.00",
    "non_discretionary_aum": "0.00",
    "total_raum": "570621709022.00",
    "total_accounts": "37",
    "total_assets": null,
    "clients_individuals": 1314,
    "clients_hnw": 62,
    "clients_banks": 0,
    "clients_investment_cos": 0,
    "clients_pooled": 0,
    "clients_other": 0,
    "comp_pct_aum": true,
    "comp_hourly": false,
    "comp_subscription": false,
    "comp_fixed": false,
    "comp_commissions": false,
    "comp_performance": true,
    "comp_other": true,
    "serves_individuals": false,
    "serves_hnw": false,
    "serves_investment_cos": true,
    "serves_pooled": false,
    "serves_pensions": false,
    "serves_charities": false,
    "serves_corps": false,
    "serves_state_municipal": false,
    "serves_other": false,
    "has_disciplinary": false
  },
  "funds_total": 0,
  "funds_by_type": [],
  "sections": {
    "included": [],
    "available": [
      "filings",
      "funds",
      "service_providers",
      "… 6 more"
    ]
  }
}
The endpoints below are not included by default. Contact us if you want access to the additional endpoints. Default keys receive 403.
GET /v1/adv/advisers/by-crd/{crd}/rep-flows contact for access rep arrivals & departures

Investment adviser representative arrivals and departures for the firm (from IAPD rep-movement history, 1985–present).

Example: GET /v1/adv/advisers/by-crd/6413/rep-flows (response trimmed):

{
  "crd": "6413",
  "summary": {
    "gained": 26245,
    "lost": 11882,
    "net": 14363
  },
  "byYear": [
    {
      "year": 2016,
      "gained": 268,
      "lost": 324
    },
    "… 10 more"
  ],
  "recentIn": [
    {
      "indvl_pk": "4775272",
      "first_nm": "Alexander",
      "last_nm": "Triska",
      "other_org_pk": "332978",
      "other_org_nm": "THE LIFE WEALTH GROUP",
      "move_date": "2026-07-23T07:00:00.000Z"
    },
    "… 29 more"
  ],
  "recentOut": [
    {
      "indvl_pk": "7901402",
      "first_nm": "VINCENT",
      "last_nm": "PERFETTO",
      "other_org_pk": "105413",
      "other_org_nm": "POTOMAC",
      "move_date": "2026-07-23T07:00:00.000Z"
    },
    "… 29 more"
  ]
}
GET /v1/adv/advisers/by-crd/{crd}/holdings-13f contact for access latest 13F equity holdings

The firm's most recent 13F equity holdings, where it files 13F.

Example: GET /v1/adv/advisers/by-crd/148826/holdings-13f (response trimmed):

{
  "match": true,
  "manager": {
    "name": "CITADEL ADVISORS LLC",
    "cik": "0001423053",
    "city": "MIAMI",
    "state": "FL"
  },
  "latest_period": "2026-03-31T07:00:00.000Z",
  "position_count": 6733,
  "total_value": "618473172395.00",
  "positions": [
    {
      "cusip": "78462F103",
      "issuer_name": "STATE STR SPDR S&P 500 ETF T",
      "title_of_class": "TR UNIT",
      "value": "41989836181.00",
      "shares": "347775.0000",
      "option_value": "41763664188.00",
      "period_of_report": "2026-03-31T07:00:00.000Z"
    },
    {
      "cusip": "46090E103",
      "issuer_name": "INVESCO QQQ TR",
      "title_of_class": "UNIT SER 1",
      "value": "31844154182.00",
      "shares": "84364.0000",
      "option_value": "31795460968.00",
      "period_of_report": "2026-03-31T07:00:00.000Z"
    },
    "… 98 more"
  ],
  "trend": [
    {
      "period_of_report": "2016-06-30T07:00:00.000Z",
      "total_value": "89729351000.00"
    },
    {
      "period_of_report": "2016-09-30T07:00:00.000Z",
      "total_value": "99536214000.00"
    },
    "… 38 more"
  ]
}
GET /v1/adv/advisers/by-crd/{crd}/registered-funds contact for access Form N-CEN funds

Registered funds (Form N-CEN) advised by the firm.

Example: GET /v1/adv/advisers/by-crd/105958/registered-funds (response trimmed):

{
  "crd": "105958",
  "fund_count": 223,
  "advised_count": 223,
  "subadvised_count": 0,
  "total_net_assets": 11992500758574.312,
  "funds": [
    {
      "series_id": "S000002848",
      "fund_name": "VANGUARD TOTAL STOCK MARKET INDEX FUND",
      "role": "Advisor",
      "is_etf": true,
      "is_money_market": null,
      "monthly_avg_net_assets": "1903470699301.9350",
      "ncen_filing_date": "2026-03-12T07:00:00.000Z",
      "nport_net_assets": "1991691212321.29",
      "nport_report_date": "2026-03-31T07:00:00.000Z",
      "registrant_cik": "0000036405",
      "registrant_name": "VANGUARD INDEX FUNDS",
      "mmf_seven_day_yield": null,
      "mmf_net_assets": null,
      "mmf_report_date": null,
      "cef_file_number": null,
      "cef_first_seen_year": null,
      "cef_last_seen_year": null,
      "is_current": true,
      "cef_active": null
    },
    "… 222 more"
  ]
}
GET /v1/adv/advisers/by-crd/{crd}/money-market-funds contact for access Form N-MFP funds

Money market funds (Form N-MFP) advised by the firm.

Example: GET /v1/adv/advisers/by-crd/105958/money-market-funds (response trimmed):

{
  "match": true,
  "crd": "105958",
  "funds": [
    {
      "cik": "0000106830",
      "registrant_name": "Vanguard Money Market Reserves",
      "latest_report_date": "2026-06-30T07:00:00.000Z",
      "latest_net_assets": "374582503126.02",
      "latest_seven_day_gross_yield": null,
      "latest_mmf_category": "Government",
      "last_advised_report": "2026-06-30T07:00:00.000Z",
      "is_current": true
    },
    "… 9 more"
  ]
}
GET /v1/adv/advisers/by-crd/{crd}/headcount contact for access employee / rep timeseries

Monthly employee / rep headcount time series.

Example: GET /v1/adv/advisers/by-crd/6413/headcount (response trimmed):

{
  "crd": "6413",
  "current": 23352,
  "peak": 23352,
  "series": [
    {
      "month": "1988-04-01",
      "headcount": 1
    },
    {
      "month": "1988-08-01",
      "headcount": 2
    },
    {
      "month": "1989-07-01",
      "headcount": 3
    },
    "… 410 more"
  ]
}
GET /v1/adv/advisers/by-crd/{crd}/filing-activity contact for access per-day SEC filing activity

Per-day SEC filing activity. Optional years parameter bounds the window.

Example: GET /v1/adv/advisers/by-crd/148826/filing-activity?years=1 (response trimmed):

{
  "crd": "148826",
  "from": "2025-07-24",
  "days": [
    {
      "form": "f13",
      "d": "2025-08-14",
      "n": 1
    },
    {
      "form": "f13",
      "d": "2025-11-14",
      "n": 1
    },
    "… 10 more"
  ]
}
GET /v1/adv/advisers/by-crd/{crd}/similar contact for access similar firms

Heuristically similar firms (size, location, business mix). Optional limit.

Example: GET /v1/adv/advisers/by-crd/148826/similar?limit=2 (response trimmed):

{
  "items": [
    {
      "id": "4183",
      "crd": "281215",
      "firm_name": "ROKOS CAPITAL MANAGEMENT LLP",
      "city": "LONDON",
      "state": null,
      "lat": 54,
      "lng": -2,
      "total_raum": "219439595264.00",
      "latest_filing_date": "2026-06-29T07:00:00.000Z",
      "has_disciplinary": false,
      "dominant_fund_type": "Hedge Fund",
      "shared_fund_types": [
        "Hedge Fund"
      ],
      "sim_size": 0.8616555678087207,
      "sim_serves": 1,
      "sim_fund": 1,
      "sim_comp": 0.6666666666666666,
      "same_state": 0,
      "score": 0.8310335840590093
    },
    "… 1 more"
  ]
}
GET /v1/adv/rep/{indvlPk}/movements contact for access one rep's career history

One representative's firm-by-firm career history. indvlPk is the individual's IAPD id, as returned by rep-flows.

Example: GET /v1/adv/rep/4775272/movements (response trimmed):

{
  "person": {
    "indvl_pk": "4775272",
    "first_nm": "Alexander",
    "last_nm": "Triska",
    "mid_nm": null,
    "link": "https://adviserinfo.sec.gov/individual/summary/4775272"
  },
  "stints": [
    {
      "org_pk": "281958",
      "org_nm": "FIRST COMMAND ADVISORY SERVICES",
      "firm_legal_name": "FIRST COMMAND ADVISORY SERVICES",
      "start_date": "2024-07-02T07:00:00.000Z",
      "end_date": "2024-07-31T07:00:00.000Z",
      "is_current": false
    },
    {
      "org_pk": "282580",
      "org_nm": "AE WEALTH MANAGEMENT, LLC",
      "firm_legal_name": "AE WEALTH MANAGEMENT, LLC",
      "start_date": "2024-08-09T07:00:00.000Z",
      "end_date": "2025-05-01T07:00:00.000Z",
      "is_current": false
    },
    "… 2 more"
  ]
}

Form ADV Part 2 - brochures

Full-text ADV Part 2 firm brochures, converted to markdown.

Not included by default at the moment. Contact us if you want access to the brochure endpoints. Free keys receive 403.
GET /v1/brochures/firm/{crd} contact for access a firm's brochure versions

All brochure versions filed by a firm, newest first: { "versions": [ { "id", "brochure_number", "filing_date", "char_count", ... } ] }.

Example - GET /v1/brochures/firm/148826 (response trimmed):

{
  "versions": [
    {
      "id": "5439",
      "crd": "148826",
      "brochure_number": "117200",
      "filing_number": "19",
      "filing_date": "2026-03-31T07:00:00.000Z",
      "char_count": 198078,
      "source_filename": "148826_117200_19_20260331__ADV_Brochures_2026_March_1_of_2.md",
      "firm_name": "CITADEL ADVISORS LLC",
      "city": "MIAMI",
      "state": "FL"
    },
    "… 1 more"
  ]
}
GET /v1/brochures/{id} contact for access one brochure, full markdown

One brochure with its full markdown text. id comes from /brochures/firm/{crd} or search results.

Example - GET /v1/brochures/5439 (response trimmed):

{
  "id": "5439",
  "crd": "148826",
  "firmName": "CITADEL ADVISORS LLC",
  "city": "MIAMI",
  "state": "FL",
  "brochureNumber": "117200",
  "filingNumber": "19",
  "filingDate": "2026-03-31T07:00:00.000Z",
  "charCount": 198078,
  "pageCount": 62,
  "imageCount": 0,
  "archiveName": "ADV_Brochures_2026_March_1_of_2",
  "convertedAt": "2026-04-22T23:35:14.271Z",
  "sourceFilename": "148826_117200_19_20260331__ADV_Brochures_2026_March_1_of_2.md",
  "markdown": "\n\n{0}------------------------------------------------\n\n# CITADEL ADVISORS LLC\n\n830 Brickell Plaza, Floor 15 Mi …"
}

Meta

GET /v1/me echo key context - auth probe

Echoes your key id, scopes, and limits - use it to verify auth. Counts against the general bucket.

Example - GET /v1/me (response trimmed):

{
  "keyId": "ORnuFY1JRJHkKwDvdm4k",
  "uid": "v1-local-test",
  "scopes": [
    "api",
    "brochures"
  ],
  "limits": {
    "search": "10/min",
    "general": "10/min"
  }
}

A plain-text version of this page for agents and LLMs is at /llms.txt.