Congress Stock Trades API — Senate & House (STOCK Act)
Pricing
$5.00 / 1,000 congressional trades
Congress Stock Trades API — Senate & House (STOCK Act)
Stock trades by US Senators and Representatives from official STOCK Act disclosures, House and Senate in one schema: ticker, buy/sell, amount range, owner, and days to disclose. Filter by politician or ticker. Pay per result.
Pricing
$5.00 / 1,000 congressional trades
Rating
0.0
(0)
Developer
SmartMoney Data
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 minutes ago
Last modified
Categories
Share
Follow the stock trades of US Senators and Representatives, straight from their official STOCK Act disclosures — one clean table for both chambers.
Members of Congress must disclose stock trades over $1,000 within 45 days. The Senate publishes them behind a session-gated search site; the House publishes them as PDFs. This Actor handles both and gives you structured data: who traded, what, when, how much — and how late they reported it.
Part of the SmartMoney Data suite: Insider Trades · Hedge Fund 13F Holdings · Congress Stock Trades · Form 144 Planned Sales · 13D/13G Activist Stakes
What you can do with it
- 📈 "Congress buys" strategies — the idea behind popular congressional-trading ETFs, as raw data.
- 🔔 Alerts — get notified when any member trades a stock on your watchlist.
- 📰 Journalism & watchdogs — track conflicts of interest and late disclosures.
- 📊 Research — committee-member trading, sector patterns, timing studies.
- 🤖 AI agents & apps — "Who in Congress traded NVDA this quarter?" as one API call.
Features
- ✅ Both chambers — Senate electronic filings and House PDF filings, normalised into one schema
- ✅ Politician, chamber, state & district
- ✅ Ticker, asset name & asset type (stocks, options, bonds, funds…)
- ✅ Purchase / Sale (Full) / Sale (Partial) / Exchange
- ✅ Amount range as text and numeric
amountMin/amountMaxfor filtering and sorting - ✅ Owner — Self, Spouse, Joint or Dependent Child
- ✅
reportingLagDays— days between the trade and its disclosure (spot late filers) - ✅ Filters by politician, ticker, transaction type and minimum amount — you only pay for rows you keep
- ✅ Summary of the most-traded tickers and per-politician buy/sell counts
- ✅ Link to the original official filing on every row
How to use it
Everything disclosed in the last 30 days
{ "lookbackDays": 30 }
One member's large purchases over the past year
{"politicians": ["Pelosi"],"transactionTypes": ["purchase"],"minAmountUsd": 50000,"lookbackDays": 365}
Who in Congress traded these stocks this quarter?
{ "tickers": ["NVDA", "MSFT", "LMT"], "lookbackDays": 90 }
Senate only
{ "chambers": ["senate"], "lookbackDays": 14 }
Output
One row per trade. Example (illustrative values):
{"politician": "Jane Q. Public","chamber": "House","state": "CA","district": "11","owner": "Spouse","ticker": "GOOGL","assetName": "Alphabet Inc. - Class A","assetType": "ST","transactionType": "Purchase","transactionDate": "2026-09-01","disclosureDate": "2026-09-16","reportingLagDays": 15,"amountRange": "$250,001 - $500,000","amountMin": 250001,"amountMax": 500000,"comment": null,"filingUrl": "https://disclosures-clerk.house.gov/public_disc/ptr-pdfs/…pdf"}
Download as JSON, CSV, Excel, XML or HTML, or fetch via API. The SUMMARY record in the key-value store lists the most-traded tickers (and who traded them) plus per-politician purchase/sale counts.
Use it from code or an AI agent
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("smartmoney-data/congress-stock-trades-tracker").call(run_input={"tickers": ["NVDA"], "lookbackDays": 90})for t in client.dataset(run["defaultDatasetId"]).iterate_items():print(t["politician"], t["transactionType"], t["amountRange"])
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('smartmoney-data/congress-stock-trades-tracker').call({ lookbackDays: 7 });const { items } = await client.dataset(run.defaultDatasetId).listItems();
AI agents: add this Actor as a tool through the Apify MCP server. No-code: schedule it daily and send new trades to Google Sheets, Slack, Discord, email, Zapier or Make.
Pricing
Pay per result — you're charged for each trade returned; filtered-out trades are free. See the Pricing tab for current rates. Set a maximum cost per run and the Actor stops cleanly when it's reached.
FAQ
Why are amounts ranges instead of exact values?
The STOCK Act only requires members to disclose a range (e.g. $1,001–$15,000). amountMin/amountMax make those ranges sortable and filterable.
How quickly do trades show up?
Members have up to 45 days to disclose, so trades appear when the member files — reportingLagDays shows how long they took.
Are all filings included?
All electronically filed periodic transaction reports. A small share of filings are handwritten paper scans that can't be read reliably; these are skipped and counted in SUMMARY.paperOrScanned.
How accurate is the House data? House disclosures are PDFs; the parser rebuilds wrapped asset names and amounts, and every row links to the source filing so you can verify it. If you spot a mis-parsed filing, send us the link and we'll fix it.
Is this legal to use? Yes. These are public disclosures published by the US Senate and House under the STOCK Act.
Related Actors
- 👔 SEC Insider Trades Tracker — what CEOs and directors are buying and selling.
- 🏦 Hedge Fund 13F Holdings Tracker — what Berkshire, Pershing Square & co. bought and sold last quarter.
- 🚨 Form 144 Planned Insider Sales — executives and directors who have filed to sell, before the sale happens.
- 🎯 13D & 13G Activist Stakes — activist funds and 5%+ owners, with their stated purpose.
Support
Found a bug or need a feature? Open an issue on the Issues tab or email smartmoney-data@googlegroups.com — we usually reply within a day.
Data is provided for informational purposes only and is not investment advice.