100% FreeNo Signup Required
Markets
DJIA38,892.45+156.78(+0.40%)
S&P 5005,021.84+23.45(+0.47%)
NASDAQ15,927.90-45.23(-0.28%)
SPY502.18+2.34(+0.47%)
QQQ437.52-1.23(-0.28%)
AAPL189.45+1.89(+1.01%)
MSFT412.91+3.45(+0.84%)
NVDA878.35+12.56(+1.45%)
GOOGL141.28+0.78(+0.56%)
TSLA185.67-4.34(-2.28%)
META485.12+8.92(+1.87%)
ES=F5,025.50+18.25(+0.36%)
NQ=F17,845.75-32.50(-0.18%)
VIX14.23-0.45(-3.06%)
DJIA38,892.45+156.78(+0.40%)
S&P 5005,021.84+23.45(+0.47%)
NASDAQ15,927.90-45.23(-0.28%)
SPY502.18+2.34(+0.47%)
QQQ437.52-1.23(-0.28%)
AAPL189.45+1.89(+1.01%)
MSFT412.91+3.45(+0.84%)
NVDA878.35+12.56(+1.45%)
GOOGL141.28+0.78(+0.56%)
TSLA185.67-4.34(-2.28%)
META485.12+8.92(+1.87%)
ES=F5,025.50+18.25(+0.36%)
NQ=F17,845.75-32.50(-0.18%)
VIX14.23-0.45(-3.06%)
LIVE
API DOCUMENTATION
v1.0

Free Congressional Trading Data API

Access real-time congressional stock trades, politician portfolios, and market data through our free REST API. Built for developers, researchers, and journalists.

No API Key RequiredREST + JSON20 req/min FreeCORS Enabled
OVERVIEW

The QuantEngines API provides free, programmatic access to congressional stock trading disclosures filed under the STOCK Act. Every trade reported by members of the U.S. Senate and House of Representatives is parsed, normalized, and made available through simple REST endpoints.

Use this data to build trading tools, conduct academic research, create dashboards, or power journalism investigations. No registration required for public endpoints.

500+
Politicians Tracked
Daily
Data Updates
4
Public Endpoints

Base URL

All requests
https://quantengines.com/api/v1
AUTHENTICATION

No API key required for public endpoints. Simply make HTTP requests to any endpoint listed below.

Premium endpoints (webhooks, alerts, bulk export) require a Bearer token obtained after signing up for a paid plan.

Premium authentication (optional)
# Only needed for premium endpoints
curl -H "Authorization: Bearer YOUR_API_KEY" \
  https://quantengines.com/api/v1/premium/alerts
RATE LIMITS
PlanRate LimitFeaturesPrice
Free20 req/minAll public endpoints, JSON responses$0
Premium200 req/minWebhooks, alerts, bulk CSV export, historical archiveSee pricing

Rate limit headers are included in every response: X-RateLimit-Remaining, X-RateLimit-Reset

Endpoints

GET/api/v1/trades/recent/list

Returns the most recent congressional stock trades, sorted by disclosure date. Includes transaction type, estimated amounts, and the filing politician.

Parameters

NameTypeDescription
limitintegerNumber of trades to return. Default: 10, Max: 100
skipintegerOffset for pagination. Default: 0

Example Response

{
  "trades": [
    {
      "id": "txn_2024_0918_pelosi_nvda",
      "politician": "Nancy Pelosi",
      "politician_id": "P000197",
      "chamber": "house",
      "party": "Democrat",
      "ticker": "NVDA",
      "company": "NVIDIA Corporation",
      "transaction_type": "purchase",
      "amount_range": "$1,000,001 - $5,000,000",
      "disclosure_date": "2024-09-18",
      "transaction_date": "2024-09-12",
      "asset_type": "Stock",
      "comment": null
    },
    {
      "id": "txn_2024_0917_tuberville_ba",
      "politician": "Tommy Tuberville",
      "politician_id": "T000278",
      "chamber": "senate",
      "party": "Republican",
      "ticker": "BA",
      "company": "The Boeing Company",
      "transaction_type": "sale_full",
      "amount_range": "$100,001 - $250,000",
      "disclosure_date": "2024-09-17",
      "transaction_date": "2024-09-10",
      "asset_type": "Stock",
      "comment": null
    }
  ],
  "total": 14832,
  "limit": 10,
  "skip": 0
}
GET/api/v1/politicians/

List all tracked politicians with their chamber, party, and trading activity summary. Filter by chamber or party affiliation.

Parameters

NameTypeDescription
chamberstringFilter by chamber: "senate" or "house"
partystringFilter by party: "Democrat", "Republican", or "Independent"
limitintegerNumber of results to return. Default: 50, Max: 200
skipintegerOffset for pagination. Default: 0

Example Response

{
  "politicians": [
    {
      "id": "P000197",
      "name": "Nancy Pelosi",
      "chamber": "house",
      "party": "Democrat",
      "state": "CA",
      "district": 11,
      "total_trades": 237,
      "total_volume_estimate": "$15,000,000+",
      "last_trade_date": "2024-09-12",
      "top_tickers": ["NVDA", "AAPL", "MSFT", "GOOGL", "RBLX"]
    },
    {
      "id": "T000278",
      "name": "Tommy Tuberville",
      "chamber": "senate",
      "party": "Republican",
      "state": "AL",
      "district": null,
      "total_trades": 482,
      "total_volume_estimate": "$8,200,000+",
      "last_trade_date": "2024-09-10",
      "top_tickers": ["BA", "GE", "TSLA", "META", "AMZN"]
    }
  ],
  "total": 538,
  "limit": 50,
  "skip": 0
}
GET/api/v1/market-data/public/quote/{symbol}

Get a real-time stock quote for any US-listed equity. Returns the latest price, volume, change, and basic company info.

Parameters

NameTypeDescription
symbolREQUIREDstringStock ticker symbol, e.g. "AAPL", "NVDA"

Example Response

{
  "symbol": "NVDA",
  "company_name": "NVIDIA Corporation",
  "price": 138.27,
  "change": 4.52,
  "change_percent": 3.38,
  "volume": 312849100,
  "market_cap": 3400000000000,
  "pe_ratio": 67.4,
  "week_52_high": 152.89,
  "week_52_low": 39.23,
  "timestamp": "2024-09-18T16:00:00Z"
}
GET/api/v1/market-data/public/historical/{symbol}

Retrieve historical OHLCV price data for a given stock symbol. Perfect for charting, backtesting, or correlating with congressional trade timing.

Parameters

NameTypeDescription
symbolREQUIREDstringStock ticker symbol, e.g. "AAPL"
periodstringTime period: "1mo", "3mo", "6mo", "1y", "5y". Default: "3mo"
intervalstringData interval: "1d", "1wk", "1mo". Default: "1d"

Example Response

{
  "symbol": "NVDA",
  "interval": "1d",
  "period": "3mo",
  "data": [
    {
      "date": "2024-09-18",
      "open": 134.50,
      "high": 139.20,
      "low": 133.82,
      "close": 138.27,
      "volume": 312849100
    },
    {
      "date": "2024-09-17",
      "open": 131.10,
      "high": 134.92,
      "low": 130.44,
      "close": 133.75,
      "volume": 245612800
    }
  ],
  "total_points": 63
}

Code Examples

Copy-paste examples to start pulling congressional trading data in seconds.

Python

python - requests
import requests

# Get the latest congressional trades
response = requests.get("https://quantengines.com/api/v1/trades/recent/list", params={
    "limit": 25
})
trades = response.json()

for trade in trades["trades"]:
    print(f"{trade['politician']} {trade['transaction_type']} "
          f"{trade['ticker']} ({trade['amount_range']})")

# Get all senators' trading activity
senators = requests.get("https://quantengines.com/api/v1/politicians/", params={
    "chamber": "senate",
    "limit": 100
}).json()

# Get a stock quote for a recently traded ticker
quote = requests.get(
    f"https://quantengines.com/api/v1/market-data/public/quote/NVDA"
).json()
print(f"NVDA: ${quote['price']} ({quote['change_percent']:+.2f}%)")

JavaScript

javascript - fetch
// Get recent congressional trades
const response = await fetch(
  "https://quantengines.com/api/v1/trades/recent/list?limit=25"
);
const { trades } = await response.json();

trades.forEach(trade => {
  console.log(
    `${trade.politician} ${trade.transaction_type} ` +
    `${trade.ticker} (${trade.amount_range})`
  );
});

// Get historical data to correlate with trade timing
const history = await fetch(
  "https://quantengines.com/api/v1/market-data/public/historical/NVDA?period=6mo"
).then(r => r.json());

console.log(`Got ${history.total_points} data points for ${history.symbol}`);

cURL

curl
# Recent trades
curl -s "https://quantengines.com/api/v1/trades/recent/list?limit=5" | jq .

# Filter politicians by chamber
curl -s "https://quantengines.com/api/v1/politicians/?chamber=senate&limit=10" | jq .

# Real-time quote
curl -s "https://quantengines.com/api/v1/market-data/public/quote/AAPL" | jq .

# Historical price data
curl -s "https://quantengines.com/api/v1/market-data/public/historical/TSLA?period=1y&interval=1wk" | jq .
ERROR CODES
StatusMeaning
200Success
400Bad request - check your parameters
404Resource not found (invalid symbol, politician ID, etc.)
429Rate limit exceeded - wait and retry, or upgrade your plan
500Server error - please report if persistent
PREMIUM API ACCESS

Need more from the API?

Upgrade to Premium for higher rate limits, webhook notifications when politicians file new trades, real-time alerts, bulk CSV exports, and full historical archive access.

200/min
API Rate Limit
Webhooks
Real-time Notifications
CSV
Bulk Data Export
Alerts
Trade Notifications
View Premium Plans
SUPPORT & COMMUNITY

Found a bug or have a feature request? We welcome contributions and feedback.

QuantEngines Congressional Trading API -- Free for developers, researchers, and journalists.

Data sourced from public STOCK Act filings. Updated daily.