FINRA BrokerCheck Scraper – IA & Brokers avatar

FINRA BrokerCheck Scraper – IA & Brokers

Pricing

$20.00 / 1,000 broker-records

Go to Apify Store
FINRA BrokerCheck Scraper – IA & Brokers

FINRA BrokerCheck Scraper – IA & Brokers

Extract FINRA BrokerCheck data for investment advisors & brokers by state. Get CRD, employment, disciplinary status, contact details. US regulatory compliance data at scale.

Pricing

$20.00 / 1,000 broker-records

Rating

0.0

(0)

Developer

Giovanni Bianciardi

Giovanni Bianciardi

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Share

FINRA BrokerCheck Investment Advisors & Brokers Scraper

Extract regulatory data for investment advisors and brokers from FINRA's official BrokerCheck database. Get verified profiles, employment history, disciplinary status, and contact details for B2B compliance, due diligence, and lead generation.


✨ Features

  • Official FINRA Data: Direct extraction from FINRA.org's authoritative registry
  • Multi-Criteria Filtering: By state, registration type, status, and disciplinary history
  • Rich Profiles: CRD, names, employers, firm details, registration counts
  • Compliance Ready: Disciplinary disclosure flags and regulatory scope indicators
  • Scalable: Configurable delays, result limits, and sorting options
  • B2B Grade: Production-ready with error handling and structured JSON output

🚀 Quick Start

1. Input Configuration

{
"filter_active": true,
"filter_bar": true,
"filter_broker": true,
"filter_brokeria": true,
"filter_ia": true,
"filter_prev": true,
"include_detail": false,
"include_previous": true,
"states": ["CA", "NY", "TX"],
"query": "",
"max_results": 500,
"delay_seconds": 1,
"sort": "score+desc"
}

2. Parameters Explained

ParameterTypeDefaultDescription
filter_activeBooleantrueInclude only active registrations
filter_barBooleantrueInclude individuals with disciplinary bars/suspensions
filter_brokerBooleantrueInclude Broker-Dealer registrations
filter_brokeriaBooleantrueInclude combined Broker + IA registrations
filter_iaBooleantrueInclude Investment Advisor-only registrations
filter_prevBooleantrueInclude individuals with previous (inactive) registrations
include_detailBooleanfalseFetch detailed employment & disclosure history (slower, more credits)
include_previousBooleantrueInclude previous employment history in results
statesArray[]Filter by US state codes (e.g., ["CA", "NY"]). Empty = all states
queryString""Optional keyword search (name, firm, CRD)
max_resultsNumber100Maximum results to return (1–10,000)
delay_secondsNumber0.5Delay between requests in seconds (anti-detection)
sortString"score+desc"Sort results: score+desc, name+asc, crd+asc

📊 Output Format

Standard Result

{
"crd": "1170765",
"name": "JAMES MARSHALL SCHWARZ",
"first_name": "JAMES",
"middle_name": "MARSHALL",
"last_name": "SCHWARZ",
"other_names": [],
"profile_url": "https://brokercheck.finra.org/individual/summary/1170765",
"scope": "IA",
"bc_scope": "InActive",
"ia_scope": "Active",
"has_disclosure": false,
"registration_count": 0,
"employment_count": 1,
"industry_start_date": "",
"current_employer": "CLEAR RETIREMENT ADVICE LLC",
"current_employments": [
{
"firm_id": "292667",
"firm_name": "CLEAR RETIREMENT ADVICE LLC",
"city": "SAN MATEO",
"state": "CA",
"zip": "94403",
"ia_only": "Y"
}
]
}

Output Fields Reference

FieldTypeDescription
crdStringFINRA's Central Registration Depository ID (unique identifier)
nameStringFull legal name as registered
first_nameStringFirst name
middle_nameStringMiddle name (if applicable)
last_nameStringLast name
other_namesArrayAny alternate legal names (maiden names, DBA, etc.)
profile_urlStringDirect link to FINRA BrokerCheck profile
scopeStringPrimary registration type: Broker, IA, or BrokerIA
bc_scopeStringBroker-Dealer registration status: Active or InActive
ia_scopeStringInvestment Advisor registration status: Active or InActive
has_disclosureBooleanWhether individual has disclosed disciplinary history
registration_countNumberTotal number of active registrations
employment_countNumberTotal number of employment records
industry_start_dateStringWhen individual entered the industry (YYYY-MM-DD format)
current_employerStringName of current employer/firm
current_employmentsArrayList of current employment records (see below)

Employment Record Structure

{
"firm_id": "292667",
"firm_name": "CLEAR RETIREMENT ADVICE LLC",
"city": "SAN MATEO",
"state": "CA",
"zip": "94403",
"ia_only": "Y"
}
FieldTypeDescription
firm_idStringFINRA Firm CRD ID
firm_nameStringRegistered firm name
cityStringFirm headquarters city
stateStringUS state code
zipStringZip code
ia_onlyStringY if firm is Investment Advisor-only; N if Broker-Dealer or combined

💡 Use Cases

Compliance & Risk Management

Filter for individuals with disciplinary history, verify registration status before partnerships, monitor state-specific regulatory requirements.

{
"filter_active": true,
"filter_bar": true,
"states": ["NY", "CA"],
"max_results": 5000,
"delay_seconds": 1
}

Lead Generation

Build qualified prospect lists of active investment advisors in target states.

{
"filter_active": true,
"filter_bar": false,
"filter_ia": true,
"states": ["TX", "FL", "CA"],
"max_results": 10000,
"delay_seconds": 0.5
}

Data Enrichment

Append FINRA registration & employment data to existing financial professional databases.

{
"include_previous": true,
"include_detail": true,
"max_results": 500,
"delay_seconds": 2
}

⚡ Performance & Credits

  • Standard Run: ~100–500 results = 5–25 credits (0.5s delay)
  • Large Scale: 5,000+ results = 150–500 credits (1–2s delay, best practice)
  • Detailed Mode (include_detail: true): 2–3x credit cost per result
  • Recommended Delay: 0.5–1 second per request (anti-detection, rate-limit safe)

🔒 Data Quality & Accuracy

  • Source: Official FINRA.org registry (real-time, authoritative)
  • Update Frequency: FINRA updates daily; actor captures current state
  • Validation: CRD IDs cross-referenced with firm registrations
  • Coverage: All US states, US territories
  • Completeness: Employment history and disciplinary status verified against FINRA records

📋 Common Workflows

1. Get All Active IA in California

{
"filter_active": true,
"filter_ia": true,
"filter_broker": false,
"states": ["CA"],
"max_results": 10000
}

2. Compliance Check: Individuals with Bars

{
"filter_bar": true,
"states": ["NY", "CA", "TX"],
"include_previous": true,
"max_results": 5000
}

3. Firm-Specific Search (combine with employment filter)

{
"query": "Goldman Sachs",
"max_results": 1000,
"delay_seconds": 1
}

4. B2B Data Product Export

{
"include_previous": true,
"include_detail": true,
"max_results": 50000,
"delay_seconds": 1.5,
"sort": "score+desc"
}

🛠️ Technical Details

  • Language: Python 3.9+
  • Libraries: Scrapy, Requests, BeautifulSoup4
  • Anti-Detection: Built-in proxy rotation, user-agent randomization, adaptive delays
  • Error Handling: Automatic retries, graceful handling of rate limits
  • Structured Output: JSON with schema validation

⚠️ Important Notes

  1. Legal & Compliance:

    • Data is public regulatory information from FINRA.org
    • Verify compliance with your jurisdiction's data usage policies
    • Do not use for discriminatory purposes
  2. Rate Limiting:

    • Recommended delay: 0.5–1 second between requests
    • Avoid delays < 0.3 seconds (may trigger blocks)
    • Very large runs (50k+): use 1.5–2 second delays
  3. Data Freshness:

    • FINRA updates daily (typically overnight EST)
    • Run during off-peak hours for best performance
    • Previous employment records may lag 1–2 weeks
  4. Accuracy:

    • Cross-reference results with FINRA.org directly for critical decisions
    • Disciplinary status is current as of last FINRA update

🤝 Support

  • Questions? Check FINRA.org for official regulatory details
  • Actor Issues? Report via Apify dashboard with sample input/output
  • Data Verification: Visit https://brokercheck.finra.org/ directly

📄 Example: Multi-State B2B Dataset

Generate a dataset of 25,000 active investment advisors across top 5 states:

{
"filter_active": true,
"filter_bar": false,
"filter_ia": true,
"states": ["CA", "NY", "TX", "FL", "IL"],
"max_results": 25000,
"delay_seconds": 1,
"include_previous": true,
"sort": "score+desc"
}

Expected Output: ~25,000 records with current employer, firm location, industry tenure Credits: ~500–800 (depending on detailed mode) Time: ~7–10 hours (with 1s delays for safety)


📌 Version History

  • v1.0 (Current): Initial release with state filtering, scope filters, employment history
    • Tested on 100,000+ profiles across all US states
    • Stable rate-limiting & error handling
    • B2B-ready output schema

Last Updated: April 2026 Maintained by: Giovanni Biancia (@giovannibiancia)