Investment Finance Professionals
Pricing
from $0.01 / 1,000 results
Investment Finance Professionals
Find and filter 250,000+ investment professionals and 15,000+ financial firms by location, firm name, and more. Get structured contact data with emails, LinkedIn profiles, and firm associations for lead generation and market research.
Pricing
from $0.01 / 1,000 results
Rating
5.0
(3)
Developer
John
Maintained by CommunityActor stats
7
Bookmarked
37
Total users
8
Monthly active users
20 hours ago
Last modified
Categories
Share
๐ผ SEC Investment Advisors Search - Find RIA Firms & Finance Contacts
Find SEC-registered investment advisors. Search 250,000+ finance professionals and 15,000+ RIA firms by name, location, CRD number, or update date. Pay-per-contact pricing, structured JSON, MCP-ready - built for lead generation, market research, and CRM enrichment.
Python Quick Start Example
A complete Python example using the Apify client is available on GitHub:
github.com/johnisanerd/Apify-SEC-Investment-Advisors
Clone the repo, run uv sync, add your API key, and you are pulling SEC investment advisor data in minutes.
๐ก What is SEC Investment Advisors Search?
SEC Investment Advisors Search is an Apify Actor that turns the SEC investment advisor registry (IAPD) into a queryable contact and firm database. Search 250,000+ SEC-registered investment advisor representatives and 15,000+ Registered Investment Advisor (RIA) firms by name, location (city/state/country), organization CRD numbers, contact IDs, or recent update date.
This Actor transforms investment and finance professional data into actionable lead lists for sales outreach, market research, business development, and relationship building. Whether you're building CRM integrations, conducting market analysis, or expanding your network in the financial services industry, you'll get clean, structured JSON data ready for immediate use โก.
โ Massive Database: Access over 250,000 investment professionals and 15,000+ firms - and growing! Our database is continuously updated with new contacts and firms.
๐ Database Statistics & Leaderboard
- Total Firms: 15,963
- Total Contacts: 273,358
๐ Top 10 Firms by Contact Count
| Rank | Firm Name | Organization CRD# | Contact Count |
|---|---|---|---|
| 1 | MERRILL LYNCH, PIERCE, FENNER & SMITH INCORPORATED | 7691 | 26,550 |
| 2 | EDWARD JONES | 250 | 24,448 |
| 3 | MORGAN STANLEY | 149777 | 23,647 |
| 4 | LPL FINANCIAL LLC | 6413 | 23,483 |
| 5 | STRATEGIC ADVISERS LLC | 104555 | 17,710 |
| 6 | WELLS FARGO ADVISORS | 19616 | 15,108 |
| 7 | J.P. MORGAN SECURITIES LLC | 79 | 13,991 |
| 8 | AMERIPRISE FINANCIAL SERVICES, LLC | 6363 | 13,283 |
| 9 | CETERA INVESTMENT ADVISERS LLC | 105644 | 10,690 |
| 10 | UBS FINANCIAL SERVICES INC. | 8174 | 9,894 |
๐ฆ What Data Can You Extract?
| ๐ท๏ธ Data Type | ๐ Description |
|---|---|
| ๐ข Firm Information | Organization identifiers, primary business name, office addresses, website, and company details |
| ๐ค Contact Details | Finance professionals and leadership with names, emails, phone numbers, LinkedIn profiles, and firm associations |
| ๐ Location Data | City, state, country, postal codes, and street addresses for main offices |
| ๐ Relationships | Links between contacts and their firms via organization identifiers |
| ๐ Timestamps | Created and updated timestamps for tracking data freshness |
| ๐ Identifiers | Organization identifiers, contact IDs for deduplication and tracking |
This structured finance professional dataset can be exported for analysis, CRM integration, or lead generation workflows.
โ๏ธ Key Features
โจ Massive Database - Access 250,000+ investment professionals and 15,000+ firms, continuously growing
๐ Dual Query Types - Query firms only, contacts only, or both in a single run
๐ฏ Advanced Filtering - Filter by firm name, location (city/state/country), organization identifiers, contact IDs, and date updates
๐ Incremental Updates - Use date_updated filter to get only new or updated contacts since your last pull
๐ฐ Pay-Per-Result Pricing - Transparent pricing: setup fee + per-contact charge (firms are free)
๐ Include/Exclude Filters - Include specific contacts or firms, or exclude unwanted records
๐ Location-Based Queries - Find firms and contacts by city, state, or country
๐ Pagination Support - Automatic pagination handling for large result sets
๐ก๏ธ Production-Ready - Built-in error handling, retry logic, and data validation
๐ฆ Structured Output - Clean JSON output with query metadata and results
๐ Usage Examples
Example 0: Basic Contacts Query
Get finance professionals and leadership contacts from our database of 250,000+ professionals with a simple limit.
{"query_type": "contacts","contacts_limit": 10}
Example 1: Query Firms by Location
Find investment and financial firms from our database of 15,000+ firms in a specific city and state.
{"query_type": "firms","firm_name": "Investment","firm_city": "New York","firm_state": "NY","firm_country": "US","firms_limit": 20}
Example 2: Query Contacts by Firm Name
Get all contacts from firms matching a name pattern.
{"query_type": "contacts","contact_firm_name": "Investment","contacts_limit": 50}
Example 3: Incremental Update (Date-Based Filtering)
Get only contacts updated since your last pull. Perfect for scheduled updates.
{"query_type": "contacts","date_updated": "2025-01-15","contacts_limit": 1000}
Note: Use the updated_at timestamp from your previous query results to get only new or updated contacts.
Example 4: Query by Organization CRD Numbers
Get contacts from specific firms using their organization CRD numbers.
{"query_type": "contacts","organization_crds": "104518,105477,105642","contacts_limit": 100}
Example 5: Include/Exclude Filters
Get contacts from specific firms while excluding certain contact IDs.
{"query_type": "contacts","organization_crds": "104518,105477","exclude_contact_ids": "123,456,789","contacts_limit": 50}
Example 6: Query Both Firms and Contacts
Get both firms and their contacts in a single run.
{"query_type": "both","firm_name": "Investment","firm_city": "New York","firm_state": "NY","firms_limit": 10,"contact_firm_name": "Investment","contacts_limit": 50}
Example 7: Comprehensive Query (All Parameters)
Use all available filters for precise data extraction.
{"query_type": "both","firm_name": "Investment","firm_city": "New York","firm_state": "NY","firm_country": "US","firms_limit": 10,"contact_ids": "123,456","exclude_contact_ids": "789","contact_firm_name": "Investment","organization_crds": "104518,105477","exclude_organization_crds": "111111","date_updated": "2025-01-01","contacts_limit": 100,"output_file": "investment_advisors_results.json"}
๐ Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
query_type | string | โ | "contacts" | Type of data to query: "firms" for firms only, "contacts" for contacts only, or "both" for both. See Query Type Options below. |
firm_name | string | โ | - | Filter firms by primary business name (partial match, case-insensitive). Only applies when query_type is "firms" or "both". |
firm_city | string | โ | - | Filter firms by main office city (exact match, case-insensitive). Only applies when query_type is "firms" or "both". |
firm_state | string | โ | - | Filter firms by main office state (exact match, case-insensitive). Use standard 2-letter state codes (e.g., "CA", "NY", "TX"). Only applies when query_type is "firms" or "both". |
firm_country | string | โ | - | Filter firms by main office country (exact match, case-insensitive). Use ISO 3166-1 alpha-2 country codes (e.g., "US", "CA", "GB"). Only applies when query_type is "firms" or "both". |
firms_limit | integer | โ | - | Maximum number of firms to return. Only applies when query_type is "firms" or "both". Set to null or omit for no limit. Minimum: 1. |
contact_ids | string | โ | - | Include only contacts with these contact_id values. Can be a comma-separated string (e.g., "123,456,789") or JSON array. Only applies when query_type is "contacts" or "both". |
exclude_contact_ids | string | โ | - | Exclude contacts with these contact_id values. Can be a comma-separated string (e.g., "123,456,789") or JSON array. Only applies when query_type is "contacts" or "both". |
contact_firm_name | string | โ | - | Filter contacts by their firm's primary business name (partial match, case-insensitive). Only applies when query_type is "contacts" or "both". |
organization_crds | string | โ | - | Include only contacts from firms with these organization CRD numbers. Can be a comma-separated string (e.g., "123456,789012") or JSON array. Only applies when query_type is "contacts" or "both". |
exclude_organization_crds | string | โ | - | Exclude contacts from firms with these organization CRD numbers. Can be a comma-separated string (e.g., "123456,789012") or JSON array. Only applies when query_type is "contacts" or "both". |
date_updated | string | โ | - | Filter contacts updated on or after this date. Use for incremental updates. Format: YYYY-MM-DD (e.g., "2025-01-15") or ISO datetime YYYY-MM-DDTHH:MM:SS. Only applies when query_type is "contacts" or "both". |
contacts_limit | integer | โ | - | Maximum number of contacts to return. Only applies when query_type is "contacts" or "both". Set to null or omit for no limit. Minimum: 1. |
output_file | string | โ | - | Optional filename to save results as JSON file locally. If not provided, results are only pushed to Apify dataset. |
๐ Query Type Options
The query_type parameter controls what data is queried:
| Value | Description | When to Use |
|---|---|---|
"firms" | Query only investment and financial firms | Search through 15,000+ firms. When you need firm information only (no contacts). Firms queries are free (only setup fee applies). |
"contacts" | Query only finance professionals and leadership (contacts) | Search through 250,000+ professionals. When you need contact information only. Each contact returned is charged separately. |
"both" | Query both firms and contacts | When you need both firm and contact data in a single run. Useful for comprehensive lead generation. |
Default: If query_type is not specified, it defaults to "contacts".
๐ค Output Format
What you get back
Each run returns one structured JSON object: a query_type, a query_timestamp, and up to two result blocks. The firms block holds RIA firm records (organization_crd, primary_business_name, the main office address fields, and website_address), and the contacts block holds finance professional records (contact_id, first_name, last_name, email, email_verified, phone, linkedin_url, and firm_name). Every record also carries created_at and updated_at timestamps so you can track freshness across runs. Full field-by-field detail and a realistic sample follow below.
Dataset Structure
Each query returns a structured JSON object with the following structure:
{"query_type": "both","query_timestamp": "2025-12-05T14:26:04.739640","firms": {"query_parameters": {"name": "Investment","city": "New York","state": "NY","country": null,"limit": 5,"page_size": 1000},"query_metadata": {"firms_count": 5,"pages_processed": 1,"limit_reached": true},"results": {"firms": [{"organization_crd": "104518","primary_business_name": "DWS INVESTMENT MANAGEMENT AMERICAS, INC.","main_office_street_address_1": "875 THIRD AVENUE","main_office_street_address_2": null,"main_office_city": "NEW YORK","main_office_state": "NY","main_office_country": "United States","main_office_postal_code": "10022","website_address": "HTTPS://WWW.LINKEDIN.COM/COMPANY/DWS-GROUP-COM","updated_at": "2025-12-05T08:17:31.041463+00:00","created_at": "2025-12-04T15:11:38.534422+00:00"}]}},"contacts": {"query_parameters": {"contact_ids": null,"exclude_contact_ids": null,"firm_name": "Investment","organization_crds": null,"exclude_organization_crds": null,"date_updated": null,"limit": 10,"page_size": 1000},"query_metadata": {"contacts_count": 10,"pages_processed": 1,"limit_reached": false},"results": {"contacts": [{"contact_id": 12345,"organization_crd": "104518","first_name": "John","last_name": "Doe","email": "john.doe@example.com","email_verified": "true","phone": "+1-555-123-4567","linkedin_url": "https://www.linkedin.com/in/johndoe","firm_name": "DWS INVESTMENT MANAGEMENT AMERICAS, INC.","updated_at": "2025-12-05T08:17:31.041463+00:00","created_at": "2025-12-04T15:11:38.534422+00:00","firms": {"primary_business_name": "DWS INVESTMENT MANAGEMENT AMERICAS, INC."}}]}},"partial_failure": false}
Output Fields
Top-Level Fields
query_type: The type of query executed ("firms","contacts", or"both")query_timestamp: ISO timestamp when the query was executedfirms: Firms query results (present whenquery_typeis"firms"or"both",nullotherwise)contacts: Contacts query results (present whenquery_typeis"contacts"or"both",nullotherwise)partial_failure: Boolean indicating if one query type failed but the other succeeded (only relevant whenquery_typeis"both")
Firms Object Fields
query_parameters: The filters and parameters used for the firms queryquery_metadata: Summary statistics includingfirms_count,pages_processed, andlimit_reachedresults.firms: Array of firm objects with complete firm information
Contacts Object Fields
query_parameters: The filters and parameters used for the contacts queryquery_metadata: Summary statistics includingcontacts_count,pages_processed, andlimit_reachedresults.contacts: Array of contact objects with complete contact information
Firm Object Fields
organization_crd: Organization identifier (unique firm identifier from our database of 15,000+ firms)primary_business_name: Official firm namemain_office_street_address_1: Primary street addressmain_office_street_address_2: Secondary address line (if applicable)main_office_city: City namemain_office_state: State code (2-letter)main_office_country: Country namemain_office_postal_code: Postal/ZIP codewebsite_address: Firm website URLupdated_at: ISO timestamp when record was last updatedcreated_at: ISO timestamp when record was created
Contact Object Fields
contact_id: Unique contact identifierorganization_crd: Organization CRD of the firm this contact belongs tofirst_name: Contact's first namelast_name: Contact's last nameemail: Email addressemail_verified: Email verification status ("true"or"false")phone: Phone numberlinkedin_url: LinkedIn profile URLfirm_name: Name of the firm this contact belongs to (convenience field)updated_at: ISO timestamp when record was last updatedcreated_at: ISO timestamp when record was createdfirms: Nested object with firm information (containsprimary_business_name)
๐ฐ Pricing
This Actor uses a pay-per-event pricing model with transparent pricing:
- Setup Fee: per Actor run (one-time charge for instance setup and initialization)
- Contact Returned: per contact returned in query results
- Firms: Free (no per-firm charge, only setup fee applies)
You only pay for contacts you actually receive, making it cost-effective for both small and large-scale queries. Firms queries are free (only the setup fee applies), making them ideal for initial research and firm discovery.
Note: The Actor performs a pre-run credit check to ensure you have sufficient funds. If insufficient funds are detected, the Actor will exit gracefully with an error message.
๐ฏ Use Cases
- Lead Generation: Build targeted lists of finance professionals and leadership for sales outreach
- Market Research: Analyze the distribution of investment and financial firms by location, size, or specialization
- Business Development: Identify potential partners, clients, or acquisition targets in the financial services industry
- CRM Integration: Sync finance professional data into your CRM system for relationship management
- Network Analysis: Map relationships between finance professionals and their firms
- Competitive Intelligence: Monitor competitor firms and their leadership teams
- Incremental Updates: Use
date_updatedfilter to get only new or updated contacts since your last pull - Data Enrichment: Enhance existing contact databases with investment and financial firm associations
- Geographic Analysis: Analyze finance professional presence by city, state, or country
- Email Verification: Access verified email addresses for finance professionals and leadership
๐ Getting Started
You can run this SEC investment advisor API three ways:
- Apify Console: open the Actor, fill in the input form (for example
query_type,firm_state, andcontacts_limit), and click Start. Results land in the run's dataset, ready to export as JSON, CSV, or Excel. - Apify API: run the Actor and fetch its dataset over HTTP with the
apify-clientpackage for Python or Node.js. The Actor's API tab has ready-made snippets and your token. - Example repo: clone github.com/johnisanerd/Apify-SEC-Investment-Advisors, run
uv sync, add your API key, and you are pulling structured advisor data in minutes.
New here? Start with {"query_type": "contacts", "contacts_limit": 10} to preview the data shape before you scale up.
๐ Integrations: Automate Advisor Lead Generation and Business Development
A single run answers one question, such as which RIA firms are registered in Texas today. The real value comes from running this SEC investment advisor API on a schedule so your lead lists and business development pipelines stay current without manual work. The Actor connects to the rest of your stack through Apify integrations.
Tasks and schedules (the core recipe)
Save one task per segment you track (for example "new RIA contacts in New York this week" using contact_firm_name plus date_updated), then attach a schedule from the Actor's Actions, then Schedule menu. Useful cron strings:
0 7 * * *runs every day at 7 AM0 */6 * * *runs every six hours0 9 * * 1runs every Monday at 9 AM
One schedule can trigger many tasks at once, and the date_updated filter returns only contacts added or changed since your last pull, so each run appends fresh leads instead of re-downloading the whole registry. The Build an RIA contact list for New York City task is a ready-made starting point.
n8n
This Actor ships as an n8n community node. See the n8n integration section below for install steps. A typical workflow is Schedule Trigger, then the Actor node, then a Filter, then a Slack or email node to push new advisor contacts to your team.
Make and Zapier
Apply the same pattern in no-code tools: trigger on a schedule, run the Actor, then route the rows onward. See Make and Zapier.
Store the results in Supabase
Send accumulated contacts to a database so history builds up across runs. No-code path: chain the Apify Actor node into a Supabase node in n8n or Make. In Python, run the Actor and bulk-insert the flat contact rows:
from apify_client import ApifyClientfrom supabase import create_clientapify = ApifyClient("YOUR_APIFY_TOKEN")supabase = create_client("YOUR_SUPABASE_URL", "YOUR_SUPABASE_KEY")run = apify.actor("johnvc/SECInvestmentAdvisorContacts").call(run_input={"query_type": "contacts", "date_updated": "2026-01-01", "contacts_limit": 1000})rows = []for item in apify.dataset(run["defaultDatasetId"]).iterate_items():for contact in item.get("contacts", {}).get("results", {}).get("contacts", []):rows.append({"contact_id": contact["contact_id"],"organization_crd": contact["organization_crd"],"first_name": contact["first_name"],"last_name": contact["last_name"],"email": contact["email"],"phone": contact["phone"],"linkedin_url": contact["linkedin_url"],"firm_name": contact["firm_name"],})supabase.table("sec_advisor_contacts").upsert(rows).execute()
MCP and AI agents
Add this API as a tool to any Apify MCP server client, including Claude Code (free trial) and Cursor, and let an agent answer questions like "list registered investment advisor firms in Boston and enrich them with contact emails". The Actor-specific MCP URL is https://mcp.apify.com/?tools=actors,docs,johnvc/SECInvestmentAdvisorContacts.
Webhooks
For anything custom, add an Apify webhook on the ACTOR.RUN.SUCCEEDED event to post the dataset to your own endpoint the moment a run finishes.
๐ Ready to Find Finance Professionals?
Start using Investment and Finance Professional Search today and discover investment and financial firms and their leadership teams from our database of 250,000+ professionals and 15,000+ firms. Whether you're building lead generation pipelines, conducting market research, expanding your network, or enriching CRM systems, you'll have clean, structured data in minutes!
Made with โค๏ธ
Transform your finance professional lead generation with reliable, production-ready search capabilities. Access one of the largest databases of investment and finance professionals available.
n8n integration
Available as an n8n community node, n8n-nodes-sec-investment-advisors-api. In n8n: Settings, Community Nodes, install n8n-nodes-sec-investment-advisors-api, then use it in any workflow (it also works as an AI Agent tool).
Featured Tasks
Ready-made use cases you can run in one click:
- List SEC registered investment advisors in Texas - pull SEC registered investment advisor firms in Texas: firm names, identifiers, locations, and registration details as structured JSON..
- Build an RIA contact list for New York City - build an RIA contact list for New York City from SEC registration data: firms plus associated contacts, returned as structured JSON..
- Download SEC investment advisor data as CSV - run an SEC registered advisor search and export the results: download the dataset as CSV or JSON, no manual public-records digging..
- Build financial advisor lead lists from SEC data - build financial advisor lead lists from SEC registration data instead of buying them: firm and contact records as structured JSON..
- Prospect SEC investment advisors from Claude via MCP - connect this MCP-ready SEC advisor API to Claude and prospect registered investment advisor firms and their details directly in chat. (free trial available).
๐ Related Tools
Pair this SEC investment advisor API with other tools in the same lead generation and financial research workflow:
- Startup Investors Data Scraper: build investor and finance lead lists that complement your registered advisor prospecting.
- LinkedIn Company API: enrich the RIA firms you find here with firmographics and sales intelligence.
- LinkedIn Profile API: add public profile data to individual advisor contacts before outreach.
- Crunchbase Company API: layer funding, investor, and firmographic data onto advisory firms for account research.
Older alternatives exist but tend to be thin. One FINRA-focused broker-dealer lead Actor on the Store, for example, publishes a run success rate below 50 percent, carries only a couple of users, and has no reviews (see it here); this API is actively maintained, returns clean and consistent JSON, and covers 250,000+ contacts across 15,000+ firms.
FAQ
Can I schedule the SEC Investment Advisors API?
Yes. Any run can be automated on a schedule. Save a task with your input (for example a state filter plus date_updated), then open the Actor's Actions, then Schedule menu and attach a schedule. Common cron strings are 0 7 * * * for daily at 7 AM, 0 */6 * * * for every six hours, and 0 9 * * 1 for Mondays. One schedule can drive many tasks at once. For the full monitoring recipe, including incremental pulls with date_updated and pushing results to Slack or Supabase, see the Integrations section above.
Should I use an API or a web scraper for SEC investment advisor data?
Both give you the same registered advisor records; the difference is how you call them. An official government portal is built for one-off human lookups, not bulk export, and has no clean interface for pulling thousands of firms and contacts at once. This Actor gives you that data as a no-code web scraper you run from a form, or as a clean API endpoint you call yourself, with no quotas to manage. If the terms are new to you, here is a neutral primer on web scraping.
Can I use the SEC Investment Advisors API programmatically?
Yes. The Apify API lets you run the Actor, schedule it, and fetch datasets over HTTP, and the apify-client package is available for both Python and Node.js. Grab ready-made snippets and your token from the Actor's API tab.
Can I use this API through an MCP Server?
Yes. Add it as a tool to any MCP client, including Claude Code (free trial) and Cursor, through the hosted Apify MCP server. The Actor-specific URL is https://mcp.apify.com/?tools=actors,docs,johnvc/SECInvestmentAdvisorContacts. See the Apify MCP docs for client setup.
Can I integrate this advisor data with other apps?
Yes. The Actor connects to almost any cloud service through Apify integrations: route results into Make, Zapier, Slack, Google Sheets, and more. For custom actions the moment a run finishes, add an Apify webhook on ACTOR.RUN.SUCCEEDED.
Where does this data come from?
The records mirror the public SEC Investment Adviser Public Disclosure (IAPD) registry, the same source regulators publish at adviserinfo.sec.gov. A Registered Investment Adviser is a firm or person registered with the SEC or a state to give investment advice.
What is business development, and how does this data help?
Business development is the work of finding and growing new commercial relationships. Registered advisor firm and contact lists feed that work directly: they let sales and partnerships teams target the right RIA firms, reach decision makers, and prioritize outreach by location or firm size.
How do I generate leads with this Actor?
Filter by location, firm name, or organization CRD to build a focused list, then export the contact rows (name, email, phone, LinkedIn) into your CRM or outreach tool. Run it on a schedule with date_updated to keep a steady flow of new leads instead of a one-time list.
How much does it cost?
Pricing is pay-per-event: a small setup fee per run plus a per-contact charge, while firm-only queries are free beyond the setup fee. You only pay for contacts you actually receive. See the Pricing section for details.
How else can I build finance and investor lead lists?
Combine this Actor with related tools in the Related Tools section: use the Startup Investors Data Scraper for investor leads, the LinkedIn Company API and LinkedIn Profile API to enrich firms and contacts, and the Crunchbase Company API for funding and firmographic context.
Last Updated: 2026.07.13