# 💼 SEC Form ADV Investment Adviser Registration Tracker (`nexgendata/sec-form-adv-investment-adviser-tracker`) Actor

Pull SEC-registered RIAs from the SEC Form ADV bulk XML — firm name, CRD, SEC number, regulatory AUM, state, employees, fiduciary advisor count, custody status, ADV Part 2 brochure URL. Discovery Data / Meridian-IQ alternative for RIA prospecting.

- **URL**: https://apify.com/nexgendata/sec-form-adv-investment-adviser-tracker.md
- **Developed by:** [NexGenData](https://apify.com/nexgendata) (community)
- **Categories:** Business
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $150.00 / 1,000 ria firms

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## 💼 SEC Form ADV Investment Adviser Registration Tracker — the $5K-$25K/seat/yr RIA prospecting database, delivered as pay-per-record JSON

Pull every SEC-registered Investment Adviser (RIA) from the official IAPD Form ADV bulk XML — firm name, CRD number, SEC number, regulatory AUM, state, address, employee count, fiduciary advisor count, custody status, last filing date, business types, and a direct link to the Form ADV Part 2 brochure for downstream custodian / fee narrative extraction. The SEC IAPD bulk feed covers ~15,000 SEC-registered Investment Advisers plus 5,000+ Exempt Reporting Advisers, encompassing the entire ~$120 trillion US RIA market. Filter by state, AUM band, and custodian relationship signal.

> **One actor. One token. The RIA-prospecting dataset behind Discovery Data, Meridian-IQ, and SmartAsset's adviser-leads engine — delivered as structured JSON for cents per record.**

### ⚡ What You Get

Every record returned by this actor is structured JSON with the fields below populated wherever the Form ADV Part 1A source filing provides them:

- `firm_name`, `legal_name`
- `CRD_number` (FINRA Central Registration Depository ID — the universal RIA identifier)
- `SEC_number` (SEC file number, "801-xxxxx" for registered RIAs, "802-xxxxx" for Exempt Reporting Advisers)
- `AUM` — Regulatory Assets Under Management in USD (Form ADV Item 5.F.(2)(c))
- `state`, `address` (street1, street2, city, state, postal_code, country), `phone`, `fax`
- `mailing_address` (when separate from main office)
- `employee_count` (Item 5.A total employees)
- `fiduciary_advisor_count` (Item 5.B.(1) employees performing investment-advisory functions)
- `organization_form` (Corporation, LLC, Limited Partnership, etc.)
- `registration_type` (Registered RIA vs Exempt Reporting Adviser), `registration_status`, `registration_date`
- `last_filing_date`, `form_version`
- `notice_filed_states` (every state the RIA has notice-filed in)
- `business_types` (broker-dealer affiliation, accountant, lawyer, swap dealer, etc. — Item 7.A)
- `advisory_services` (financial planning, portfolio management, pension consulting, etc. — Item 5.G)
- `compensation_types` (% of AUM, hourly, fixed-fee, performance fee, etc. — Item 5.E)
- `has_custody`, `has_custody_cash`, `has_custody_securities` (Item 9.A) — proxy for custodian-relationship signal
- `custody_aum`, `custody_client_count` (Item 9.A.(2))
- `web_addresses` (the firm's URLs from Item 1 — useful for B2B outreach validation)
- `ADV_part_2_brochure_url` (IAPD firm-summary page — direct link to the Part 2 brochure PDF)
- `filing_url`, `sources` (full audit trail of bulk-feed URLs)

The output schema is stable across runs — safe to load straight into Snowflake, BigQuery, Postgres, or your CRM without re-mapping each refresh.

### 🎯 Use Cases

- **Wealth-tech vendor sales (custodians, CRMs, portfolio-accounting platforms)** — Set `state_filter=CA`, `min_aum=100000000`, `max_aum=1000000000` to get every California RIA in the $100M-$1B "sweet spot" tier: too big to use a Schwab retail account, too small to have its own back-office team. This is the canonical Black Diamond / Orion / Tamarac / Addepar TAM. Comparable: Discovery Data Adviser Database at $5K-$25K/seat/yr; Meridian-IQ Adviser Insights at $12K+/yr per user.
- **RIA recruiting / M&A intelligence** — Filter to `min_aum=250000000` for buyer-side M&A scouting (Focus Financial, Wealth Enhancement Group, Hightower-tier acquirers target the $250M-$2B RIA band) or to `fiduciary_advisor_count <= 3` to identify lifestyle-RIA succession candidates. The `last_filing_date` field surfaces RIAs that recently amended ADV — often a leading indicator of personnel turnover or M&A prep.
- **Compliance — IA registration verification** — Daily refresh to verify a counterparty's SEC registration status, registration date, and AUM band before signing a sub-advisor / sub-allocator agreement. The `registration_status` field flags `PENDING`, `WITHDRAWN`, `SUSPENDED`, `TERMINATED` — direct KYC inputs.
- **Custody / TAMP vendor B2B prospecting** — Combine `has_custody=true` (signals an existing custody-arrangement that may be open to switching) with the `ADV_part_2_brochure_url` to surface the brochure narrative naming the incumbent custodian (Schwab, Fidelity, Pershing, etc.) — automate the "Find me every $200M+ RIA on Pershing" sales question.
- **RIA fee benchmarking research** — The `compensation_types` array shows which fee structures each RIA uses (% of AUM vs hourly vs fixed-fee vs performance-fee). Aggregate across the dataset for percentile benchmarks comparable to InvestmentNews' annual fee-benchmark report.
- **Pension / institutional consultant scouting** — Filter `advisory_services` to include `pension-consulting` for the Defined Benefit / Defined Contribution consulting buyer pool (Mercer, Aon, Willis Towers Watson competitive set).

### 🔗 Related Actors (NexGenData Wealth-Management Intelligence Cluster)

This actor sits at the registration / firm-level layer of NexGenData's wealth-management cluster — pair with the SEC / regulatory feeds for end-to-end coverage of the institutional investor pipeline:

| Use case | Actor |
|----------|-------|
| Hedge-fund quarterly equity holdings (Form 13F) | [sec-form-13f-tracker-pro](https://apify.com/nexgendata/sec-form-13f-tracker-pro?fpr=2ayu9b) |
| Corporate-insider buys & sells (CEO/CFO Form 4) | [sec-form-4-insider-trading-scraper](https://apify.com/nexgendata/sec-form-4-insider-trading-scraper?fpr=2ayu9b) |
| Activist 13D/G 5%+ stakes | [sec-schedule-13dg-activist-tracker](https://apify.com/nexgendata/sec-schedule-13dg-activist-tracker?fpr=2ayu9b) |
| Material 8-K events | [sec-form-8k-material-events-scraper](https://apify.com/nexgendata/sec-form-8k-material-events-scraper?fpr=2ayu9b) |
| FINRA BrokerCheck adviser / firm DD | [finra-brokercheck-search](https://apify.com/nexgendata/finra-brokercheck-search?fpr=2ayu9b) |
| SEC litigation releases | [sec-litigation-releases](https://apify.com/nexgendata/sec-litigation-releases?fpr=2ayu9b) |

Browse the full 200+ actor catalog at **https://apify.com/nexgendata?fpr=2ayu9b**.

### 🚀 How To Use

#### Sample input

```json
{
  "state_filter": "CA",
  "min_aum": 100000000,
  "max_aum": 1000000000,
  "custodian_filter": "",
  "max_firms": 100
}
````

#### Sample output (one record)

```json
{
  "firm_name": "CHOKSHI & QUEEN WEALTH ADVISORS",
  "legal_name": "CQ WEALTH ADVISORS, INC.",
  "CRD_number": "313833",
  "SEC_number": "801-120967",
  "AUM": 263303670,
  "state": "CA",
  "address": {
    "street1": "4510 EXECUTIVE DRIVE",
    "street2": "SUITE 203",
    "city": "SAN DIEGO",
    "state": "CA",
    "postal_code": "92121",
    "country": "United States"
  },
  "phone": "858-550-0030",
  "fax": null,
  "mailing_address": null,
  "employee_count": 4,
  "fiduciary_advisor_count": 2,
  "organization_form": "Corporation",
  "registration_type": "Registered",
  "registration_status": "APPROVED",
  "registration_date": "2021-04-26",
  "last_filing_date": "2026-01-14",
  "form_version": "10/2021",
  "notice_filed_states": ["CA", "LA", "MA", "NV", "TX", "FL"],
  "business_types": ["accountant-or-accounting-firm"],
  "advisory_services": [
    "financial-planning-services",
    "portfolio-management-individuals-small-businesses",
    "portfolio-management-businesses-institutional",
    "pension-consulting",
    "selection-of-other-advisers"
  ],
  "compensation_types": ["percentage-of-aum", "fixed-fees"],
  "has_custody": false,
  "has_custody_cash": false,
  "has_custody_securities": false,
  "custody_aum": null,
  "custody_client_count": null,
  "custodian": null,
  "web_addresses": [
    "https://financialplanningsd.com/",
    "https://cq-wa.com/"
  ],
  "ADV_part_2_brochure_url": "https://adviserinfo.sec.gov/firm/summary/313833",
  "filing_url": "https://adviserinfo.sec.gov/firm/summary/313833",
  "sources": {
    "bulk_feed_url": "https://reports.adviserinfo.sec.gov/reports/CompilationReports/IA_FIRM_SEC_Feed_05_30_2026.xml.gz",
    "iapd_homepage": "https://adviserinfo.sec.gov/IAPD/IAPDFirmExtractFiles.aspx",
    "sec_form_adv_landing": "https://www.sec.gov/about/forms/formadv.pdf"
  }
}
```

#### Python (apify-client)

```python
from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_TOKEN")

run = client.actor("nexgendata/sec-form-adv-investment-adviser-tracker").call(run_input={
    "state_filter": "CA",
    "min_aum": 100000000,
    "max_aum": 1000000000,
    "max_firms": 100,
})

for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item["firm_name"], item["CRD_number"], item["AUM"], item["fiduciary_advisor_count"])
```

#### cURL

```bash
curl -X POST "https://api.apify.com/v2/acts/nexgendata~sec-form-adv-investment-adviser-tracker/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "state_filter": "CA",
    "min_aum": 100000000,
    "max_aum": 1000000000,
    "max_firms": 100
  }'
```

Schedule monthly via Apify's built-in scheduler — the SEC publishes a fresh IAPD bulk feed approximately weekly (most often on Saturdays), so a 1st-of-month run catches every newly-registered or newly-amended adviser.

### ⚖️ Legal & Data Source Notes

- **Investment Advisers Act of 1940 §203 + Rule 203-1** mandate public disclosure of every SEC-registered Investment Adviser's Form ADV filings. The SEC IAPD bulk XML compilation reports are explicitly published for "researchers, market participants, and state securities regulators" — see the [SEC IAPD Firm Extract Files page](https://adviserinfo.sec.gov/IAPD/IAPDFirmExtractFiles.aspx).
- **No anti-bot, no auth.** The bulk gzipped XML files live on the official SEC `reports.adviserinfo.sec.gov` CDN. This actor only reads from the official publication path.
- **User-Agent compliance.** Per SEC fair-access policy, every request from this actor identifies itself as `NexGenData SEC Form ADV Actor hello@thenextgennexus.com` so the SEC can contact the operator if needed.
- **Bulk feed coverage.** The SEC bulk feed exposes Form ADV Part 1A — firm-level structured fields — for all SEC-registered Investment Advisers and Exempt Reporting Advisers. Part 1B (state-registered advisers only) and Part 2 (the brochure narrative) live on the IAPD per-firm pages. The `ADV_part_2_brochure_url` field gives a direct link to the firm-summary page where the Part 2 brochure PDF can be retrieved.
- **Custodian field limitation.** Custodian *names* are NOT in the bulk Part 1A feed — they live in Form ADV Schedule D (Item 9 detail) and the Part 2 brochure narrative. This actor exposes the `has_custody` / `has_custody_cash` / `has_custody_securities` flags (Item 9.A) as the strongest custody-relationship signal available without per-firm scraping, plus the brochure URL for downstream NLP. The `custodian_filter` input parameter applies a heuristic match against firm name + has-custody flag rather than the underlying custodian name.

### ❓ FAQ

**Q: How current is the data?**

A: The SEC IAPD bulk Form ADV feeds are typically refreshed weekly, most often on Saturdays. This actor auto-discovers the most recently-published feed by walking back from today's date and picking the newest one available.

**Q: What's the difference between Registered and ERA?**

A: `Registered` advisers are full SEC-registered Investment Advisers (SEC number prefix `801-`), required to file the complete Form ADV Part 1A. `ERA` advisers are Exempt Reporting Advisers (SEC number prefix `802-`) — primarily private-fund advisers under the $150M Rule 203(m)-1 threshold — who file an abbreviated Form ADV. ERAs typically have null AUM and null employee counts in the bulk feed.

**Q: Why is `AUM` null for some firms?**

A: Exempt Reporting Advisers (FirmType=`ERA`) only complete the partial Form ADV; the Regulatory AUM field (Item 5.F.(2)(c)) is typically blank for them. Set `min_aum=0` to include ERA firms.

**Q: What's the CRD\_number used for?**

A: It's the universal RIA / broker-dealer firm identifier maintained by FINRA's Central Registration Depository. Use it to join against [finra-brokercheck-search](https://apify.com/nexgendata/finra-brokercheck-search?fpr=2ayu9b) for the firm's broker-dealer dual-registration history and BrokerCheck disciplinary record.

**Q: How do I get the actual custodian name?**

A: For each firm, follow the `ADV_part_2_brochure_url` to the IAPD firm-summary page, then download the Form ADV Part 2 brochure PDF (typically named "Brochure" on the firm summary page). The custodian is named in the "Custody" section of the brochure narrative (Item 15 of Part 2A). The `has_custody` flag from this actor pre-filters firms that have a custody relationship at all.

**Q: Are state-registered RIAs included?**

A: This actor reads the SEC-registered IA feed (`IA_FIRM_SEC_Feed`). State-registered advisers (typically RIAs under $100M AUM that haven't graduated to SEC registration) file Form ADV Part 1B with their state securities regulator and are tracked in a separate per-state feed (`IA_FIRM_State_Feed`). For state-registered coverage, lower `min_aum` to 0 and accept that the bulk SEC feed will still skew toward $100M+ firms. A state-registered-IA version of this actor is on NexGenData's Wave 9 roadmap.

**Q: How do I find RIAs using a specific custodian (e.g. Schwab, Pershing)?**

A: Two options. (1) Set `custodian_filter` to the custodian name — this returns RIAs that have-custody=Yes plus any whose firm name contains the custodian substring. (2) For exact custodian matching, take the output of this actor, follow each `ADV_part_2_brochure_url` to retrieve the brochure PDF, and run NLP / regex over the Custody section. NexGenData's roadmap includes an enrichment actor that does the brochure-NLP join.

### 🏷️ About NexGenData

NexGenData publishes 200+ buyer-intent Apify actors covering SEC filings, federal regulatory data (DOL, FDA, FCC, EPA, FTC, CFPB, FEC, IRS 990, FAA), private-market intelligence (Form D, IPO, 13F, 13D/G, ADV), stock screeners across 30+ exchanges (NYSE, NASDAQ, LSE, TSX, ASX, HKEX, KOSPI, SGX, B3, BSE), B2B lead generation, and competitive intelligence. All actors are **pay-per-result** with no seat licences and no minimum commitments.

Browse the full catalog and start a free run at **https://apify.com/nexgendata?fpr=2ayu9b**.

# Actor input Schema

## `state_filter` (type: `string`):

Filter to RIAs whose main-office (principal place of business) is in this state. Two-letter USPS state code (e.g. CA, NY, TX, FL). Leave blank to include every state + US territory. Foreign-based advisers are excluded by any non-blank state filter regardless of value.

## `min_aum` (type: `integer`):

Drop RIAs whose total Regulatory AUM (Form ADV Item 5.F.(2)(c)) is below this floor. RIA prospecting bands: $100M+ = SEC-registered floor for most filers; $250M+ = mid-market RIA; $1B+ = institutional. Set to 0 to include all advisers (including state-registered Exempt Reporting Advisers, which often report partial or zero AUM).

## `max_aum` (type: `integer`):

Cap RIAs whose total Regulatory AUM exceeds this ceiling. Useful for sub-segmenting the SERVICEABLE-AVAILABLE-MARKET (SAM) — e.g. $100M-$1B AUM = the sweet spot for custodian / TAMP / portfolio-accounting platform sales (the firms BlackRock-Aladdin and Schwab won't touch but Schwab/Fidelity will). Leave blank for no upper bound.

## `custodian_filter` (type: `string`):

Optional custodian-name substring (case-insensitive) to match against the Form ADV Part 2 brochure URL and the firm's disclosed custody status. NOTE: the SEC bulk XML feed exposes Form ADV Part 1A only — custodian *names* live in Schedule D and the Part 2 brochure narrative, not in the bulk feed. When a custodian filter is supplied, this actor flags firms whose disclosure documents are reasonable candidates (has-custody = Yes per Item 9.A) and surfaces the brochure URL for downstream NLP. Leave blank to skip this filter. Example: 'Schwab', 'Fidelity', 'Pershing'.

## `max_firms` (type: `integer`):

Hard cap on adviser records pushed to the dataset (and metered for per-firm billing). Defaults to 100 (a comfortable RIA prospect batch). Tune to your prospecting budget.

## Actor input object example

```json
{
  "state_filter": "CA",
  "min_aum": 100000000,
  "max_aum": 1000000000,
  "max_firms": 100
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "state_filter": "CA",
    "min_aum": 100000000,
    "max_aum": 1000000000,
    "custodian_filter": "",
    "max_firms": 100
};

// Run the Actor and wait for it to finish
const run = await client.actor("nexgendata/sec-form-adv-investment-adviser-tracker").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "state_filter": "CA",
    "min_aum": 100000000,
    "max_aum": 1000000000,
    "custodian_filter": "",
    "max_firms": 100,
}

# Run the Actor and wait for it to finish
run = client.actor("nexgendata/sec-form-adv-investment-adviser-tracker").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "state_filter": "CA",
  "min_aum": 100000000,
  "max_aum": 1000000000,
  "custodian_filter": "",
  "max_firms": 100
}' |
apify call nexgendata/sec-form-adv-investment-adviser-tracker --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=nexgendata/sec-form-adv-investment-adviser-tracker",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "💼 SEC Form ADV Investment Adviser Registration Tracker",
        "description": "Pull SEC-registered RIAs from the SEC Form ADV bulk XML — firm name, CRD, SEC number, regulatory AUM, state, employees, fiduciary advisor count, custody status, ADV Part 2 brochure URL. Discovery Data / Meridian-IQ alternative for RIA prospecting.",
        "version": "0.0",
        "x-build-id": "ByOw26RnbN0qum5Br"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/nexgendata~sec-form-adv-investment-adviser-tracker/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-nexgendata-sec-form-adv-investment-adviser-tracker",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/nexgendata~sec-form-adv-investment-adviser-tracker/runs": {
            "post": {
                "operationId": "runs-sync-nexgendata-sec-form-adv-investment-adviser-tracker",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/nexgendata~sec-form-adv-investment-adviser-tracker/run-sync": {
            "post": {
                "operationId": "run-sync-nexgendata-sec-form-adv-investment-adviser-tracker",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "state_filter": {
                        "title": "State filter (2-letter US state)",
                        "pattern": "^[A-Za-z]{0,2}$",
                        "type": "string",
                        "description": "Filter to RIAs whose main-office (principal place of business) is in this state. Two-letter USPS state code (e.g. CA, NY, TX, FL). Leave blank to include every state + US territory. Foreign-based advisers are excluded by any non-blank state filter regardless of value."
                    },
                    "min_aum": {
                        "title": "Minimum Regulatory AUM (USD)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Drop RIAs whose total Regulatory AUM (Form ADV Item 5.F.(2)(c)) is below this floor. RIA prospecting bands: $100M+ = SEC-registered floor for most filers; $250M+ = mid-market RIA; $1B+ = institutional. Set to 0 to include all advisers (including state-registered Exempt Reporting Advisers, which often report partial or zero AUM).",
                        "default": 100000000
                    },
                    "max_aum": {
                        "title": "Maximum Regulatory AUM (USD)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Cap RIAs whose total Regulatory AUM exceeds this ceiling. Useful for sub-segmenting the SERVICEABLE-AVAILABLE-MARKET (SAM) — e.g. $100M-$1B AUM = the sweet spot for custodian / TAMP / portfolio-accounting platform sales (the firms BlackRock-Aladdin and Schwab won't touch but Schwab/Fidelity will). Leave blank for no upper bound."
                    },
                    "custodian_filter": {
                        "title": "Custodian filter (case-insensitive substring)",
                        "pattern": "^[A-Za-z0-9 .,&'-]*$",
                        "type": "string",
                        "description": "Optional custodian-name substring (case-insensitive) to match against the Form ADV Part 2 brochure URL and the firm's disclosed custody status. NOTE: the SEC bulk XML feed exposes Form ADV Part 1A only — custodian *names* live in Schedule D and the Part 2 brochure narrative, not in the bulk feed. When a custodian filter is supplied, this actor flags firms whose disclosure documents are reasonable candidates (has-custody = Yes per Item 9.A) and surfaces the brochure URL for downstream NLP. Leave blank to skip this filter. Example: 'Schwab', 'Fidelity', 'Pershing'."
                    },
                    "max_firms": {
                        "title": "Max RIAs to return",
                        "minimum": 1,
                        "maximum": 2000,
                        "type": "integer",
                        "description": "Hard cap on adviser records pushed to the dataset (and metered for per-firm billing). Defaults to 100 (a comfortable RIA prospect batch). Tune to your prospecting budget.",
                        "default": 100
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
