NFA BASIC Registrant Scraper
Pricing
Pay per event
NFA BASIC Registrant Scraper
Search NFA BASIC registrants by firm name, individual, pool, or NFA ID. Extract registration status, categories, profile URLs, contact fields, and regulatory action summaries for compliance workflows.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Extract public NFA BASIC registrant data for futures, swaps, commodities, CTA, CPO, FCM, IB, and associated due-diligence workflows.
What does NFA BASIC Registrant Scraper do?
NFA BASIC Registrant Scraper searches the National Futures Association BASIC registry and saves structured registrant records.
It can search by:
- ✅ Firm name
- ✅ Individual last name and optional first name
- ✅ Pool name
- ✅ Exact NFA ID
Each output row includes identity, registration status, registration categories, contact/location fields when public, profile URL, and regulatory-action summaries when available.
Who is it for?
This scraper is useful for compliance, risk, and revenue teams that need repeatable NFA BASIC checks.
- 🧾 Compliance analysts verifying futures and swaps counterparties
- 🏦 Broker-dealer and FCM operations teams checking registration categories
- 🔎 Due-diligence providers enriching regulated entity profiles
- 📈 Commodity and fintech sales teams building compliant lead lists
- 🧑⚖️ Legal teams reviewing regulatory action histories
- 🧰 Data vendors normalizing NFA BASIC records into internal systems
Why use this actor?
Manual BASIC searches are slow when you need to check many firms or IDs.
This actor converts the public website workflow into a repeatable API job.
Benefits:
- Structured JSON, CSV, Excel, XML, and Parquet exports
- Direct Apify API access
- Exact NFA profile URLs for audit trails
- Batch search support
- Per-record regulatory-action indicators
- No login required for the public data used by the actor
Data extracted
| Field | Description |
|---|---|
searchType | firm, individual, pool, or nfaId |
searchQuery | Input query that produced the record |
entityType | Inferred BASIC entity type |
nfaId | Public NFA ID |
name | Registrant name |
membershipStatus | BASIC membership/approval status |
registrationTypes | Current public registration categories |
hasRegulatoryActions | Whether BASIC marks regulatory actions |
regulatoryActionCount | Count exposed in search/profile data |
city, state, country | Public location data when available |
address, phone | Public contact data from profile details |
profileUrl | Direct BASIC profile URL |
currentActivities | Current activity/status questions when exposed |
registrationHistory | Recent registration history lines |
regulatoryActions | Summarized action/outcome details |
scrapedAt | ISO timestamp |
How much does it cost to scrape NFA BASIC registrants?
This actor uses pay-per-event pricing.
You pay a small start fee per run plus a per-registrant result fee.
The default prefill is intentionally small so first runs are cheap.
For larger compliance batches, use maxItems to control the maximum number of saved records.
How to use NFA BASIC Registrant Scraper
- Open the actor on Apify.
- Add one or more
searchQueries. - Choose whether to include detailed profile/background data.
- Set
maxItems. - Run the actor.
- Download results from the dataset.
Input example
{"searchQueries": [{ "type": "firm", "query": "goldman" },{ "type": "nfaId", "query": "0002014" }],"includeDetails": true,"maxItems": 100,"maxActionsPerRegistrant": 5}
Input fields
searchQueries
Main search list.
Each query has:
type:firm,individual,nfaId, orpoolquery: firm name, last name, pool name, or IDfirstName: optional, only for individual searches
firmNames
Shortcut list for firm-name searches.
individualLastNames
Shortcut list for individual last-name searches.
nfaIds
Shortcut list for exact NFA ID searches.
Numeric IDs are padded to seven digits.
includeDetails
When enabled, the actor fetches profile details, registration history, current activities, and regulatory-action indexes.
maxItems
Maximum rows saved across all searches.
maxActionsPerRegistrant
Caps regulatory-action summaries attached to each registrant row.
Output example
{"searchType": "firm","searchQuery": "goldman","entityType": "firm","nfaId": "0002014","name": "GOLDMAN SACHS & CO LLC","membershipStatus": "NFA Member Approved","registrationTypes": ["Commodity Pool Operator", "Commodity Trading Advisor", "Futures Commission Merchant", "Swap Dealer"],"hasRegulatoryActions": true,"regulatoryActionCount": 86,"city": "NEW YORK","state": "NY","country": "UNITED STATES","profileUrl": "https://www.nfa.futures.org/basicnet/basic-profile.aspx?nfaid=0002014","source": "nfa-basic"}
Tips for best results
- Use exact NFA IDs when you already have them.
- Use firm names for lead enrichment or broad discovery.
- Use
includeDetails: falsefor faster search-only batches. - Increase
maxActionsPerRegistrantonly when regulatory action detail matters. - Keep
maxItemsbounded for scheduled monitoring runs.
Common workflows
Counterparty verification
Search an NFA ID before onboarding a commodity, futures, or swaps counterparty.
Compliance monitoring
Run the same firm list regularly and compare regulatory-action counts over time.
Lead enrichment
Search firm names to add NFA IDs, registration categories, and profile URLs to CRM records.
Investigation prep
Export registration history and regulatory action summaries before deeper manual review.
Integrations
You can connect the dataset to:
- Google Sheets via Apify integrations
- Zapier workflows
- Make scenarios
- Webhooks for monitoring alerts
- Internal compliance databases
- BI tools through API exports
API usage
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/nfa-basic-registrant-scraper').call({searchQueries: [{ type: 'firm', query: 'goldman' }],includeDetails: true,maxItems: 100});console.log(run.defaultDatasetId);
Python
from apify_client import ApifyClientclient = ApifyClient('YOUR_APIFY_TOKEN')run = client.actor('automation-lab/nfa-basic-registrant-scraper').call(run_input={'searchQueries': [{'type': 'nfaId', 'query': '0002014'}],'includeDetails': True,'maxItems': 10,})print(run['defaultDatasetId'])
cURL
curl -X POST "https://api.apify.com/v2/acts/automation-lab~nfa-basic-registrant-scraper/runs?token=$APIFY_TOKEN" \-H 'Content-Type: application/json' \-d '{"searchQueries":[{"type":"firm","query":"goldman"}],"maxItems":100}'
MCP integration
Use this actor from Claude Desktop, Claude Code, or other MCP clients through Apify MCP.
MCP URL:
https://mcp.apify.com/?tools=automation-lab/nfa-basic-registrant-scraper
Claude Code setup:
$claude mcp add apify-nfa-basic "https://mcp.apify.com/?tools=automation-lab/nfa-basic-registrant-scraper"
Claude Desktop JSON config:
{"mcpServers": {"apify-nfa-basic": {"url": "https://mcp.apify.com/?tools=automation-lab/nfa-basic-registrant-scraper"}}}
Example prompts:
- "Search NFA BASIC for Goldman and summarize active registration categories."
- "Verify NFA ID 0002014 and list regulatory action counts."
- "Create a compliance table for these NFA IDs."
Legality
The actor extracts publicly available registry data from NFA BASIC.
You are responsible for using the data lawfully and respecting applicable compliance, privacy, and contractual requirements.
Do not use the output for unlawful discrimination, harassment, or misleading claims.
FAQ
Is this actor affiliated with NFA?
No. This actor is not affiliated with or endorsed by the National Futures Association.
Can I use this for regulated compliance decisions?
Use the output as a structured collection aid and audit trail. Important decisions should still be reviewed against the source BASIC profile and your internal compliance policy.
Limitations
- The actor depends on the public NFA BASIC website and its JSON-RPC endpoints.
- Some profile fields are unavailable for some registrants.
- Regulatory action details are summaries, not a substitute for legal review.
- The actor does not authenticate into private NFA systems.
Troubleshooting
Why did I get fewer results than expected?
Check maxItems. The actor stops when it reaches that limit.
Also try a broader firm name or an exact NFA ID.
Why is a field empty?
NFA BASIC does not expose every address, phone, activity, or action field for every registrant.
Why are some records duplicated by name?
BASIC can list historical names or related records with the same NFA ID. The actor keeps unique search-result rows for auditability.
Related scrapers
Explore other Automation Lab actors for compliance, enrichment, and public-records workflows:
- https://apify.com/automation-lab
- https://apify.com/automation-lab/website-contact-finder
- https://apify.com/automation-lab/bulk-url-status-checker
Changelog
0.1
Initial version with firm, individual, pool, and NFA ID search plus profile details.
Support
Open an Apify issue on the actor page if the public BASIC site changes or you need additional fields.
Notes
This actor is not affiliated with or endorsed by the National Futures Association.
It is designed to help users structure public registry lookups into repeatable datasets.
Example batch ideas
- Daily check of high-risk counterparties
- Weekly update of CPO and CTA lead lists
- One-time enrichment of CRM accounts
- Legal review prep for known NFA IDs
- Vendor onboarding verification
- Commodity trading advisor monitoring
- Futures commission merchant status checks
Dataset export formats
Apify datasets can be downloaded as:
- JSON
- JSONL
- CSV
- Excel
- XML
- RSS
- Parquet
Scheduling
Use Apify schedules for recurring monitoring.
For example:
- Daily compliance refresh
- Weekly prospect enrichment
- Monthly regulatory action audit
Webhook alerts
Configure a webhook after each run to send the dataset ID to your own system.
Your system can then compare current output to previous results.
Quality controls
Recommended checks:
- Match exact NFA IDs when possible
- Review
profileUrlfor important records - Treat regulatory-action summaries as flags for follow-up
- Store
scrapedAtfor audit history
Contact enrichment use case
When a firm profile includes address and phone fields, the actor returns them in structured columns.
This is useful for CRM enrichment, vendor onboarding, and account research.
Compliance use case
Compliance teams can maintain a list of NFA IDs and run scheduled checks.
The output highlights registration categories and regulatory-action counts for review.
Due diligence use case
Due-diligence teams can use this actor as a first-pass data collection tool before manual analysis.
The saved profile URL helps reviewers jump back to the source record.