?>
ESC to close

Politician Stock Trading API

Maintained by Piyush Arora

Last updated:

Rank every member of Congress by how much and how often they trade, and by how their stock purchases have done against the S&P 500. Then pull any member's profile, trading statistics for every period and estimated stock portfolio in one call. Two endpoints, as clean JSON: /congress/politicians for rankings and /congress/politician for one member. The API is free to use.

Part of the Congressional Trading API: each trade, with its amount and dates, is in Congress Trades, and congressional activity in a single stock is in Congress Trades by Stock. Prefer to browse? Every member has a page on our Congress Trading Tracker.

GET https://data.businessquant.com/congress/politicians?window={window}&api_key={api_key}
GET https://data.businessquant.com/congress/politician?member={member}&api_key={api_key}

1. Request Parameters — Politician Rankings

/congress/politicians returns every member of Congress who traded in a period, ranked. Periods are given with window: 30D, 90D, 180D, YTD, 1Y or ALL (all time, the default). Rank by dollar volume, number of trades, buys, sells, latest disclosure or the return of their purchases, and narrow by party, state or members serving now.

ParameterDescription
api_key
Required
Your unique API key for authentication and usage tracking.
window
Optional
Period the ranking covers. Default ALL.
Format: window=1Y
sort
Optional
Ranking: volume (default, buy + sell dollar volume), trades, buys, sells, last_filing (most recent disclosure) or return (average return of purchases against the S&P 500).
Format: sort=trades
party
Optional
Only members of this party, e.g. D or R.
Format: party=R
state
Optional
Only members from this state (two-letter code).
Format: state=TX
current_only
Optional
Only members serving now. Default false.
Format: current_only=true
page
Optional
Page number. Defaults to 1.
Format: page=1
page_size
Optional
Records per page. Maximum 500. Default 100.
Format: page_size=50
Example cURL — Most Active Traders, Last Year
curl -X GET "https://data.businessquant.com/congress/politicians?window=1Y&sort=trades&page_size=10&api_key=YOUR_API_KEY"
Sample Response — rankings (1 record shown)
{
    "metadata": {
        "window": "1Y",
        "sort": "trades",
        "page": 1,
        "page_size": 10,
        "total_records": 113,
        "total_pages": 12,
        "note": ""
    },
    "data": [
        {
            "bioguide_id": "K000389",
            "politician_name": "Ro Khanna",
            "chamber": "House",
            "party": "D",
            "state": "CA",
            "district": 17,
            "is_current_member": true,
            "window": "1Y",
            "n_trades": 5559,
            "n_buys": 2938,
            "n_sells": 2621,
            "n_exchanges": 0,
            "buy_volume_est": 44277968,
            "sell_volume_est": 39363808.5,
            "net_volume_est": 4914159.5,
            "n_filings": 12,
            "first_trade_date": "2010-01-03",
            "last_trade_date": "2026-09-30",
            "last_filing_date": "2026-10-07",
            "n_tickers": 547,
            "top_tickers": [
                "MU",
                "FDS",
                "MSFT",
                "UBER",
                "BRK-B"
            ],
            "top_sector": "Technology",
            "median_filing_delay_days": 22,
            "pct_late": 0.0059363194819212085,
            "avg_excess_return_buys": 0.015298716513429124,
            "win_rate_buys": 0.5152462861610634
        }
    ]
}

2. Request Parameters — One Politician

/congress/politician returns one member in a single call: their profile (chamber, party, state, district, committees), trading statistics for every period from 30 days to all time, their estimated current stock portfolio with value, cost, return and weight, and the stocks they trade most.

ParameterDescription
api_key
Required
Your unique API key for authentication and usage tracking.
member
Required
The member: their member ID (P000197) or member slug (nancy-pelosi-p000197). Every trade record carries the ID as bioguide_id.
Format: member=P000197
Example cURL — Nancy Pelosi
curl -X GET "https://data.businessquant.com/congress/politician?member=P000197&api_key=YOUR_API_KEY"
Sample Response — one politician (lists cut to 2)
{
    "metadata": {
        "member": "P000197",
        "politician_name": "Nancy Pelosi",
        "note": ""
    },
    "data": {
        "profile": {
            "bioguide_id": "P000197",
            "politician_name": "Nancy Pelosi",
            "chamber": "House",
            "party": "D",
            "state": "CA",
            "district": 11,
            "is_current_member": true,
            "committees": null,
            "n_trades": 211,
            "n_buys": 129,
            "n_sells": 80,
            "n_exchanges": 2,
            "buy_volume_est": 116068564.5,
            "sell_volume_est": 110618549.5,
            "n_tickers": 44,
            "first_trade_date": "2013-01-26",
            "last_trade_date": "2026-09-08",
            "last_filing_date": "2026-10-02"
        },
        "stats": [
            {
                "window": "90D",
                "n_trades": 8,
                "n_buys": 8,
                "n_sells": 0,
                "n_exchanges": 0,
                "buy_volume_est": 10125004,
                "sell_volume_est": 0,
                "net_volume_est": 10125004,
                "n_filings": 2,
                "first_trade_date": "2026-07-24",
                "last_trade_date": "2026-09-08",
                "last_filing_date": "2026-10-02",
                "n_tickers": 2,
                "top_tickers": [
                    "BE",
                    "INTC"
                ],
                "top_sector": "Industrials",
                "median_filing_delay_days": 26.5,
                "pct_late": 0,
                "avg_excess_return_buys": -0.05460919040759641,
                "win_rate_buys": 0.6666666666666666
            },
            {
                "window": "180D",
                "n_trades": 10,
                "n_buys": 10,
                "n_sells": 0,
                "n_exchanges": 0,
                "buy_volume_est": 13875005,
                "sell_volume_est": 0,
                "net_volume_est": 13875005,
                "n_filings": 3,
                "first_trade_date": "2026-05-29",
                "last_trade_date": "2026-09-08",
                "last_filing_date": "2026-10-02",
                "n_tickers": 3,
                "top_tickers": [
                    "BE",
                    "INTC",
                    "UBER"
                ],
                "top_sector": "Industrials",
                "median_filing_delay_days": 25,
                "pct_late": 0,
                "avg_excess_return_buys": -0.05460919040759641,
                "win_rate_buys": 0.6666666666666666
            }
        ],
        "holdings": [
            {
                "ticker": "V",
                "issuer_name": "Visa Inc.",
                "sector": "Financial Services",
                "held_shares_est": 46047.58403683807,
                "held_value_est": 19592786.08215079,
                "held_cost_est": 15000000.5,
                "held_return": 0.3061856952705295,
                "held_weight": 0.1345322667637085,
                "held_since": "2026-05-15",
                "price_latest": 425.49,
                "price_latest_date": "2026-11-02"
            },
            {
                "ticker": "CRM",
                "issuer_name": "Salesforce, Inc.",
                "sector": "Technology",
                "held_shares_est": 86450.35430168854,
                "held_value_est": 19552476.47411757,
                "held_cost_est": 15000000.5,
                "held_return": 0.30349838815789165,
                "held_weight": 0.13425548412961408,
                "held_since": "2026-05-15",
                "price_latest": 226.17,
                "price_latest_date": "2026-11-02"
            }
        ],
        "top_traded": [
            {
                "ticker": "AAPL",
                "issuer_name": "Apple Inc.",
                "sector": "Technology",
                "asset_class": "Stock",
                "n_trades": 34,
                "n_buys": 17,
                "n_sells": 17,
                "buy_volume_est": 10825008.5,
                "sell_volume_est": 59775008.5,
                "net_volume_est": -48950000,
                "first_trade_date": "2016-01-13",
                "last_trade_date": "2025-12-30",
                "avg_excess_return_buys": 3.1685995337542474
            },
            {
                "ticker": "NVDA",
                "issuer_name": "Nvidia Corp",
                "sector": "Technology",
                "asset_class": "Option",
                "n_trades": 15,
                "n_buys": 11,
                "n_sells": 4,
                "buy_volume_est": 17800005.5,
                "sell_volume_est": 9175002,
                "net_volume_est": 8625003.5,
                "first_trade_date": "2021-06-03",
                "last_trade_date": "2026-01-16",
                "avg_excess_return_buys": 3.3566110886770457
            }
        ]
    }
}

3. Response Fields

Every response is a metadata object (the filters applied, and for rankings the page, page size, total records and total pages) and a data payload. Dollar volumes and portfolio values are estimates and carry the _est suffix. Returns are decimals: 0.12 is 12%.

/congress/politicians and the stats of /congress/politician

One record per member for the chosen window. A member's own stats list has one such record per period, without the member's name and profile fields.

FieldTypeDescription
bioguide_idstringMember ID.
politician_namestringName of the member.
chamber / party / state / districtstringThe member's chamber, party, state and district.
is_current_memberbooleantrue while the member is serving.
windowstringPeriod the record covers: 30D, 90D, 180D, YTD, 1Y or ALL.
n_tradesintegerTrades in the period.
n_buys / n_sells / n_exchangesintegerTrades by direction.
buy_volume_estnumberEstimated dollar volume bought.
sell_volume_estnumberEstimated dollar volume sold.
net_volume_estnumberBought minus sold.
n_filingsintegerDisclosure reports filed in the period.
first_trade_date / last_trade_datestringFirst and latest trade in the period.
last_filing_datestringLatest disclosure.
n_tickersintegerDistinct stocks traded.
top_tickersarray|nullMost-traded tickers, most active first.
top_sectorstring|nullSector traded most.
median_filing_delay_daysnumber|nullTypical number of days the member takes to disclose a trade.
pct_latenumber|nullShare of trades disclosed after the 45-day deadline (0 to 1).
avg_excess_return_buysnumber|nullAverage return of the member's purchases since the trade, minus the S&P 500 over the same dates.
win_rate_buysnumber|nullShare of purchases that have beaten the S&P 500 since the trade (0 to 1).

/congress/politician

data is an object with four parts: profile (the member and their all-time totals, plus committees), stats (one record per period, fields as above), holdings and top_traded.

FieldTypeDescription
profile.committeesarray|nullCommittees the member sits on.
holdings[].ticker / issuer_name / sectorstringThe stock held.
holdings[].held_shares_estnumberEstimated shares held today.
holdings[].held_value_estnumberEstimated value at the latest close.
holdings[].held_cost_estnumberEstimated dollars invested in the position.
holdings[].held_returnnumber|nullEstimated return on the position.
holdings[].held_weightnumberShare of the member's estimated stock portfolio (0 to 1).
holdings[].held_sincestringDate the position was opened.
holdings[].price_latest / price_latest_datenumber / stringLatest close and its date.
top_traded[].ticker / issuer_name / sector / asset_classstringThe stock traded.
top_traded[].n_trades / n_buys / n_sellsintegerAll-time trades in the stock by the member.
top_traded[].buy_volume_est / sell_volume_est / net_volume_estnumberEstimated dollars bought, sold and net.
top_traded[].first_trade_date / last_trade_datestringFirst and latest trade in the stock.
top_traded[].avg_excess_return_buysnumber|nullAverage return of the member's purchases of the stock against the S&P 500.

4. Endpoint Variations

Copy any of the following directly into your application or HTTP client.

1. Most Active Traders in Congress — Members ranked by number of trades over the last year.
https://data.businessquant.com/congress/politicians?window=1Y&sort=trades&api_key=YOUR_API_KEY
2. Best-Performing Politicians — Current members ranked by how their purchases did against the S&P 500.
https://data.businessquant.com/congress/politicians?window=ALL&sort=return&current_only=true&api_key=YOUR_API_KEY
3. Biggest Traders by Dollar Volume — One party, year to date.
https://data.businessquant.com/congress/politicians?window=YTD&party=R&sort=volume&api_key=YOUR_API_KEY
4. One State's Delegation — Current members from Texas, latest disclosure first.
https://data.businessquant.com/congress/politicians?state=TX&current_only=true&sort=last_filing&api_key=YOUR_API_KEY
5. Politician Portfolio — A member's profile, stats per period, estimated holdings and most-traded stocks.
https://data.businessquant.com/congress/politician?member=nancy-pelosi-p000197&api_key=YOUR_API_KEY
6. That Politician's Trades — The same member's disclosed trades, newest first.
https://data.businessquant.com/congress/trades?member=P000197&api_key=YOUR_API_KEY

5. API Response Sample — Politician Rankings

The most active traders in Congress over the last year, ranked by number of trades — 113 members traded in the period, the top 10 shown.

API Response — Politician Rankings

Window 1Y  ·  sorted by trades  ·  113 members

MemberChamber Trades Buys Sells Bought (est.) Sold (est.) Top Tickers Last Disclosure
Ro Khanna
D-CA
House 5,559 2,938 2,621 $44.28M $39.36M MU, FDS, MSFT 2026-10-07
Gilbert Ray Cisneros, Jr.
D-CA
House 1,239 771 464 $13.43M $10.92M DASH, APP, FLEX 2026-10-12
Michael T. McCaul
R-TX
House 1,073 572 501 $42.89M $31.08M INTU, SPGI, SAP 2026-10-14
Lisa C. McClain
R-MI
House 487 164 323 $1.78M $2.76M AAPL, ASML, CACI 2026-10-12
April McClain Delaney
D-MD
House 361 156 204 $1.86M $6.51M CHRW, HUBB, TSCO 2026-09-09
Julia Letlow
R-LA
House 257 164 93 $1.39M $744.0K CRM, AAPL, META 2026-03-12
Julie Johnson
D-TX
House 221 43 177 $344.0K $1.42M CARR, CMS, DE 2026-08-05
Kevin Hern
R-OK
House 211 29 172 $5.48M $14.56M DVN, HD, BSX 2026-10-28
David J. Taylor
R-OH
House 181 104 77 $856.6K $763.0K AVGO, GOOGL, HD 2026-10-29
Scott H. Peters
D-CA
House 151 82 69 $21.60M $20.04M — 2026-10-15

6. API Response Sample — Politician Portfolio

Nancy Pelosi's profile, trading statistics and estimated stock portfolio in one call — 211 disclosed trades in 44 stocks; the 10 largest estimated holdings shown.

API Response — Politician Portfolio

Nancy Pelosi  ·  D-CA  ·  House

Trades211
Bought (est.)$116.07M
Sold (est.)$110.62M
Last Disclosure2026-10-02
HoldingSector Shares (est.) Value (est.) Cost (est.) Return Weight Held Since
V
Visa Inc.
Financial Services 46,048 $19.59M $15.00M 30.6% 13.5% 2026-05-15
CRM
Salesforce, Inc.
Technology 86,450 $19.55M $15.00M 30.3% 13.4% 2026-05-15
MSFT
Microsoft Corp
Technology 35,552 $18.03M $15.00M 20.2% 12.4% 2026-05-15
AAPL
Apple Inc.
Technology 49,962 $16.90M $15.00M 12.7% 11.6% 2026-05-15
AMZN
Amazon Com Inc
Consumer Discretionary 56,788 $13.95M $15.00M -7.0% 9.6% 2026-05-15
NVDA
Nvidia Corp
Technology 66,572 $13.45M $15.00M -10.3% 9.2% 2026-05-15
AVGO
Broadcom Inc.
Technology 35,278 $11.37M $15.00M -24.2% 7.8% 2026-05-15
GOOGL
Alphabet Inc.
Technology 37,804 $10.55M $15.00M -29.7% 7.2% 2026-05-15
CRWD
CrowdStrike Holdings, Inc.
Technology 20,199 $4.88M $3.00M 62.8% 3.4% 2026-05-15
PANW
Palo Alto Networks Inc
Technology 12,354 $4.35M $3.00M 44.8% 3.0% 2026-05-15

7. Use Cases

Common ways the politician endpoints are used.

Copy-Trading & Signals

Follow the politicians whose purchases have beaten the market. Rank members with /congress/politicians?sort=return, then poll /congress/trades?member=... for their new disclosures.

Politician Profiles

Build a profile for every member: /congress/politician returns their committees, trading statistics per period, estimated holdings and most-traded stocks.

Journalism & Accountability

Spot trades in stocks overseen by a member's committees, trades disclosed late, and heavy trading ahead of major news, with the trade date, disclosure date and amount on every record.

8. More Congressional Trading Endpoints

The Congressional Trading API is three pages and four endpoints, all on the same API key and the same {metadata, data} envelope.

Congress Trades
/congress/trades

Every disclosed trade with the member, owner, asset, amount, trade and disclosure dates and the return since, filterable by stock, member, party, state, side, owner, asset type and dates.

Politician TradesThis page
/congress/politicians · /congress/politician

Rank members of Congress by volume, trades or the return of their purchases, and pull any member's profile, statistics for every period and estimated portfolio.

Congress Trades by Stock
/congress/ticker

One stock through Congress's eyes: buyers and sellers, the party split, every member who traded it with their position, and monthly buying and selling.

Frequently Asked Questions

What is a politician stock trading API?

It is an API that returns how members of Congress trade stocks as structured data: rankings of politicians by trading volume, number of trades and returns, and each member's statistics and estimated portfolio. The Business Quant Politician Stock Trading API returns them as JSON.

How do I find the politicians with the best stock trading returns?

Call /congress/politicians with sort=return. It ranks members by the average return of their purchases against the S&P 500 over the window you choose; add current_only=true for members serving now. Each record also carries win_rate_buys, the share of purchases that beat the S&P 500.

Can I get a politician's stock portfolio through the API?

Yes. /congress/politician?member=P000197 returns Nancy Pelosi's estimated current holdings with shares, value, cost, return and weight, next to her profile, trading statistics for every period and most-traded stocks. It works with any member's ID or member slug.

Which members of Congress trade the most?

/congress/politicians?window=1Y&sort=trades ranks members by number of trades over the last year, and sort=volume ranks them by estimated dollar volume. Filter by party, state or current_only.

Is the Politician Stock Trading API free?

Yes. Both endpoints are free to use on every plan, including the free plan.