CFTC Enforcement Actions Scraper
Pricing
from $0.02 / 1,000 enforcement action saveds
CFTC Enforcement Actions Scraper
Monitor CFTC enforcement actions, penalties, respondents, press releases, and linked orders for compliance research and due diligence.
Pricing
from $0.02 / 1,000 enforcement action saveds
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 CFTC enforcement actions, press releases, respondents, penalties, and linked legal orders from the public Commodity Futures Trading Commission website.
Use it to monitor regulatory action in futures, derivatives, commodities, retail commodity transactions, whistleblower awards, and related CFTC enforcement programs.
What does CFTC Enforcement Actions Scraper do?
CFTC Enforcement Actions Scraper collects structured records from the public CFTC enforcement actions index.
It saves each enforcement action as a dataset item with the action date, title, CFTC release URL, release number, linked order documents, monetary amounts, respondent names when parseable, and press release summary text.
The actor follows the CFTC year filter pages and can optionally open each press release detail page for richer text and amount extraction.
Who is it for?
- ⚖️ Compliance teams tracking CFTC enforcement trends.
- 🏦 Commodity, futures, swaps, and derivatives risk teams.
- 🔎 Due diligence analysts checking companies and individuals for regulatory history.
- 🧑⚖️ Law firms monitoring new enforcement orders and settlements.
- 📊 Researchers building enforcement action timelines or penalty datasets.
- 📰 Journalists watching new CFTC press releases.
Why use this scraper?
The CFTC website is public, but manual monitoring is repetitive.
This actor turns the enforcement index into exportable JSON, CSV, Excel, XML, or API data.
You can run it on a schedule, filter by years or dates, and connect the dataset to alerts, dashboards, spreadsheets, or compliance review workflows.
What data can you extract?
| Field | Description |
|---|---|
releaseNumber | CFTC release identifier when available. |
title | Enforcement action title. |
dateIso | Normalized action date. |
year | Publication year. |
actionType | Best-effort action category. |
respondents | Parsed respondents, defendants, or parties. |
monetaryAmounts | Dollar amounts mentioned in the source text. |
penaltyTotalUsd | Best-effort numeric sum of detected dollar amounts. |
releaseUrl | CFTC press release URL. |
orderLinks | Linked orders, PDFs, federal register notices, or downloads. |
summaryText | First substantive summary paragraph. |
detailText | Truncated press release body text. |
scrapedAt | Timestamp when the row was saved. |
How much does it cost to scrape CFTC enforcement actions?
This actor uses pay-per-event pricing.
You pay a small start fee per run and a per-record fee for each enforcement action saved.
A typical monitoring run for recent years is inexpensive because the CFTC index is static HTML and does not require a browser.
See the Apify run pricing panel for the current tiered per-item price.
Input options
maxItemslimits how many enforcement actions are saved.yearsselects specific CFTC year-filtered index pages.startUrlslets you provide custom CFTC enforcement index URLs.fromDateandtoDatefilter records by action date.includeDetailsfollows press release pages for body text and richer amount extraction.includeOrderLinkscaptures linked order and PDF URLs as metadata.
Example input
{"maxItems": 100,"years": [2026, 2025, 2024, 2023, 2022, 2021, 2020, 2019, 2018, 2017],"fromDate": "2024-01-01","includeDetails": true,"includeOrderLinks": true}
Example output
{"releaseNumber": "9263-26","title": "CFTC Orders Two Foreign Firms to Pay $2.5 Million for Illegal Off-Exchange Transactions with U.S. Customers","dateIso": "2026-06-29","year": 2026,"actionType": "Administrative Order","respondents": ["Netrios LP Ltd.", "Red Acre Ltd."],"monetaryAmounts": ["$2.5 Million", "$1.75 million", "$750,000"],"penaltyTotalUsd": 5000000,"releaseUrl": "https://www.cftc.gov/PressRoom/PressReleases/9263-26","orderLinks": [{"title": "Administrative Order: Netrios LP Ltd., Red Acre Ltd.","url": "https://www.cftc.gov/media/14291/ENF_Netrios_RedAcreOrder062626/download","type": "Administrative Order"}]}
How to run it
- Open the actor on Apify.
- Choose the years or custom CFTC index URLs you want to monitor.
- Set
maxItemsto the number of enforcement actions you need. - Keep detail enrichment enabled if you need summary text and penalty extraction.
- Click Start.
- Export the dataset or connect it through the Apify API.
Tips for better results
- Use
yearsfor broad historical collection. - Use
fromDatefor scheduled monitoring. - Set
includeDetailstofalsefor a faster title/date/link inventory. - Leave
includeOrderLinksenabled if your workflow needs legal order PDFs. - Use a low
maxItemsfor test runs, then increase it for production exports.
Integrations
You can connect this actor to:
- 📬 Email or Slack alerts for newly saved enforcement actions.
- 📈 BI dashboards tracking penalties by year.
- 🧾 Case-management systems used by legal and compliance teams.
- 🔍 Due-diligence workflows that screen entities for regulatory exposure.
- 🗂️ Document review pipelines that download linked orders after the actor saves metadata URLs.
API usage with Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/cftc-enforcement-actions-scraper').call({maxItems: 100,years: [2026, 2025, 2024],includeDetails: true});console.log(run.defaultDatasetId);
API usage with Python
from apify_client import ApifyClientclient = ApifyClient('YOUR_APIFY_TOKEN')run = client.actor('automation-lab/cftc-enforcement-actions-scraper').call(run_input={'maxItems': 100,'years': [2026, 2025, 2024],'includeDetails': True,})print(run['defaultDatasetId'])
API usage with cURL
curl -X POST "https://api.apify.com/v2/acts/automation-lab~cftc-enforcement-actions-scraper/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"maxItems":100,"years":[2026,2025,2024],"includeDetails":true}'
MCP usage
Use this actor from Claude Desktop, Claude Code, or another MCP-compatible client through Apify MCP.
MCP tool URL:
https://mcp.apify.com/?tools=automation-lab/cftc-enforcement-actions-scraper
Claude Code setup:
$claude mcp add apify-cftc-enforcement https://mcp.apify.com/?tools=automation-lab/cftc-enforcement-actions-scraper
Claude Desktop JSON config:
{"mcpServers": {"apify-cftc-enforcement": {"url": "https://mcp.apify.com/?tools=automation-lab/cftc-enforcement-actions-scraper"}}}
Example prompts:
- "Run the CFTC enforcement actions scraper for 2026 and summarize penalty amounts."
- "Monitor CFTC enforcement actions since 2024-01-01 and list respondents."
- "Extract linked consent orders from recent CFTC enforcement actions."
Scheduling and monitoring
For repeat workflows, create an Apify schedule with a recent fromDate and a modest maxItems.
The dataset can be compared with previous runs by releaseUrl or releaseNumber to identify new CFTC actions.
Data quality notes
The CFTC source is a public Drupal website.
Respondent names and penalty totals are best-effort parsed from titles, order labels, and press release text.
Always review the source press release and linked order before making legal or compliance decisions.
Limitations
- The actor does not download or parse PDF contents.
- Some older CFTC records may have different formatting.
penaltyTotalUsdcan double-count if the press release repeats the same amount in multiple contexts.actionTypeis inferred from text and linked document labels.
Legality
The actor collects public government web pages and public links.
You are responsible for using the data lawfully, respecting Apify terms, and ensuring your downstream use complies with your internal policies and applicable regulations.
FAQ
Is it legal to scrape CFTC enforcement actions?
The source pages are public CFTC government pages. Review your downstream use with your legal or compliance team if you combine the data with other screening systems.
Troubleshooting
Why did I get fewer records than expected?
Check maxItems, years, fromDate, and toDate. The CFTC year filter returns a finite list for each selected year.
Why is a respondent missing?
Some CFTC titles do not name all parties in a consistent way. Enable includeDetails and inspect detailText or the linked order for complete legal names.
Why is the penalty total different from the order?
penaltyTotalUsd is a convenience field parsed from visible dollar amounts. Treat it as a screening aid, not a legal calculation.
Related scrapers
Explore other Automation Lab compliance and finance actors on Apify:
- https://apify.com/automation-lab/ofac-sdn-watchlist-scraper
- https://apify.com/automation-lab/sec-edgar-scraper
- https://apify.com/automation-lab/finra-brokercheck-scraper
Support
If the CFTC website changes or you need another enforcement source, open an issue on the actor page with a sample URL and the fields you expect.
Changelog
Initial version extracts CFTC enforcement index records, press release detail text, order links, monetary amounts, and respondents.