FINANCIALPEOPLE API MCP READY

Congress Financial Disclosures API

US congressional financial disclosure and stock trading data, searchable by member name, exact report date, date range or ticker symbol. Each record is one disclosed transaction, filed under the STOCK Act and published by the House and Senate.

MEDIAN LAGon demand
PARAMETERS7
TOTAL USERS208
MONTHLY ACTIVE50
RUNS SUCCEEDED100.0%
RATING5.0 (3)

Input parameters

PARAMETERTYPEREQDEFAULTDESCRIPTION
First_Name string no Member's first name; case-insensitive partial match
Last_Name string no Member's last name; case-insensitive partial match
Stock_Symbol string no Ticker, e.g. AAPL, MSFT, NVDA; case-insensitive partial match
Start_Date date no Earliest transaction date, inclusive, YYYY-MM-DD
End_Date date no Latest transaction date, inclusive, YYYY-MM-DD
Date_Reported date no Exact transaction date. Use Start_Date and End_Date for a range instead.
Max_Results integer no 100 1–1000 records per run — drives your bill

Worked examples

Recent activity — every filter blank
{ "Max_Results": 100 }
One member — last name, one year
{
  "Last_Name": "Pelosi",
  "Start_Date": "2024-01-01",
  "End_Date": "2024-12-31"
}
One ticker — everyone who traded it
{
  "Stock_Symbol": "NVDA",
  "Start_Date": "2024-01-01"
}
Event window — a narrow range around a vote
{
  "Start_Date": "2024-03-01",
  "End_Date": "2024-03-31",
  "Max_Results": 1000
}
POWER-USER TIP
Filing date and transaction date are not the same — Members have up to 45 days to disclose, so a transaction dated in March may not surface until May. Date filters here run on the transaction date — if you are studying disclosure lag, pull a wide range and compare the two dates rather than assuming recency.

Coverage

4
search axes — member name · ticker · exact date · date range
2
chambers — House and Senate
1,000
max records per run — paginate with date ranges for more

Tasks

Saved runs with the inputs already filled in — each one a standalone page and a working configuration example.

Request a task →

Code

curl

curl -X POST "https://api.apify.com/v2/acts/johnvc~us-congress-financial-disclosures-and-stock-trading-data/run-sync-get-dataset-items" \
  -H "Authorization: Bearer $APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"Stock_Symbol":"NVDA","Start_Date":"2024-01-01","Max_Results":500}'

Python

from apify_client import ApifyClient

client = ApifyClient("APIFY_TOKEN")
run = client.actor("johnvc/us-congress-financial-disclosures-and-stock-trading-data").call(
    run_input={"Last_Name": "Pelosi", "Start_Date": "2024-01-01", "End_Date": "2024-12-31"}
)
for tx in client.dataset(run.default_dataset_id).iterate_items():
    print(tx.get("date_reported"), tx.get("ticker"), tx.get("transaction_type"))

What people use it for

Alternatives