Congress Trades API

Congress Trades Trades API

Get US Congress members' financial disclosures and stock trades (member, ticker, transaction type, amount range, and dates), filterable by member, ticker, or date range. Results come newest filing first (by reportedUtc, not tradedUtc), so a recent filing can list trades made years earlier.

$2.05/1k results, pay per request, no subscription.

What the API returneditems[0]
{
"id": "cg_2026_84471",
"symbol": "NVDA",
"assetName": "NVIDIA Corporation",
"firstName": "Marjorie",
"lastName": "Castellane",
"chamber": "House",
"stateDistrict": "TX11",
"owner": "SP",
... 6 more fields
}
Uptime
100.00%
30d · 9 calls
Requests
9
30d · weekly, last 12 wks
Response
6.5s
median · 30d

Pricing

Congress Trades Trades API pricing

You pay
$20.54
$2.05/1k results, only for what you use. No monthly plan.
One request costs at most $0.0534 (26 results).
The $0.10 starting balance covers at least 1 requests.

Try it

Get Congress Trades trades in one request

Open in
Get a free key
Sample response
Free runs return only the first 3 results. Fund a key to get the full response.

This sample shows 17 of 18 fields. See every field

{
  "found": true,
  "data": {
    "items": [
      {
        "id": "cg_2026_84471",
        "symbol": "NVDA",
        "assetName": "NVIDIA Corporation",
        "firstName": "Marjorie",
        "lastName": "Castellane",
        "chamber": "House",
        "stateDistrict": "TX11",
        "owner": "SP",
        "transactionType": "P",
        "amountRange": "$50,001 - $100,000",
        "tradedUtc": 1789430400,
        "reportedUtc": 1790467200,
        "assetType": "ST",
        "year": 2026
      },
      {
        "id": "cg_2026_84392",
        "symbol": "MSFT",
        "assetName": "Microsoft Corporation",
        "firstName": "Marjorie",
        "lastName": "Castellane",
        "chamber": "House",
        "stateDistrict": "TX11",
        "owner": "JT",
        "transactionType": "S",
        "amountRange": "$15,001 - $50,000",
        "tradedUtc": 1788912000,
        "reportedUtc": 1789862400,
        "assetType": "ST",
        "year": 2026
      },
      {
        "id": "cg_2026_83810",
        "symbol": "XOM",
        "assetName": "Exxon Mobil Corporation",
        "firstName": "Marjorie",
        "lastName": "Castellane",
        "chamber": "House",
        "stateDistrict": "TX11",
        "owner": "DC",
        "transactionType": "P",
        "amountRange": "$1,001 - $15,000",
        "tradedUtc": 1787788800,
        "reportedUtc": 1789084800,
        "assetType": "ST",
        "year": 2026
      }
    ]
  }
}

Full parameter and response reference - every field, type, and example for this endpoint.

Reference

One request, one response shape.

Every field you send and every field you get back, each with a real example.

Last verified 2026-10-31 · uptime and latency measured over 30d

Request body

JSON, posted to this endpoint.

  • endDatestring

    Latest transaction date to include, inclusive, in YYYY-MM-DD format (e.g. 2026-06-01).

  • firstNamestring

    Filter by the congressional member's first name, case-insensitive partial match (e.g. Nancy).

  • lastNamestring

    Castellane

    Filter by the congressional member's last name, case-insensitive partial match (e.g. Pelosi).

  • limitinteger

    3

    Maximum number of results to return (1-25, default 25). You are billed per result returned, so a lower limit costs less.

  • startDatestring

    Earliest transaction date to include, inclusive, in YYYY-MM-DD format (e.g. 2026-01-01).

  • tickerstring

    Filter to transactions involving this stock ticker symbol (e.g. NVDA).

You send. A small JSON body. The values shown are examples to replace with your own.

Response

JSON, one example value per field.

each itemdata.items[]

Disclosure records: member name and chamber, stock ticker, transaction type, amount range, and transaction/report dates. Populated whenever the provider has data for the entity.

  • amountRangestring

    $50,001 - $100,000

    Disclosed dollar amount range for the transaction.

  • assetNamestring

    NVIDIA Corporation

    Full name of the traded asset. Populated whenever the provider has data for the entity.

  • assetTypestring

    ST

    House disclosure asset class code, e.g. ST for stock or OP for option.

  • chamberstring

    House

    Congressional chamber, e.g. House or Senate.

  • firstNamestring

    Marjorie

    Member's first name. Populated whenever the provider has data for the entity.

  • idstring

    cg_2026_84471

    Stable disclosure record identifier. Populated whenever the provider has data for the entity.

  • lastNamestring

    Castellane

    Member's last name. Populated whenever the provider has data for the entity.

  • ownerstring

    SP

    Trade owner code, e.g. SP (spouse), JT (joint), DC (dependent child).

  • reportedUtcnumber

    1790467200

    UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds. Date the transaction was reported/disclosed.

  • stateDistrictstring

    TX11

    Member's state and district, e.g. PA11.

  • symbolstring

    NVDA

    Stock ticker symbol of the traded asset. Populated whenever the provider has data for the entity.

  • tradedUtcnumber

    1789430400

    UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds. Date the transaction occurred.

  • transactionTypestring

    P

    Transaction type code, e.g. P (purchase), S (sale).

  • yearinteger

    2026

    Calendar year of the disclosure filing.

top level
  • foundboolean

    true

    True when at least one disclosure record was returned.

  • reason"not_found"

    Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.

You get back. Named, typed fields in the same shape whichever source answers.

FAQ

About the Congress Trades Trades API

The AnyAPI Congress Trades Trades API returns Congress Trades trades data as normalized JSON from one POST call to /v1/run/congress.trades. Get US Congress members' financial disclosures and stock trades (member, ticker, transaction type, amount range, and dates), filterable by member, ticker, or date range. Results come newest filing first (by reportedUtc, not tradedUtc), so a recent filing can list trades made years earlier. AnyAPI returns one normalized schema whichever source serves it. It costs $2.05 per 1,000 results, and never more than $0.0534 for a single request, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 100.0% of Congress Trades trades calls through AnyAPI succeeded, with a median response time of 6.5 seconds across 9 measured calls.

It costs $2.05 per 1,000 results, and never more than $0.0534 for a single request, in US dollars with no subscription and no monthly minimum. You fund one USD wallet and each call draws it down. Some failed wallet-funded requests incur processing charges that we pass through at cost, with no markup; the error response shows the amount charged.

Get US Congress members' financial disclosures and stock trades (member, ticker, transaction type, amount range, and dates), filterable by member, ticker, or date range. Results come newest filing first (by reportedUtc, not tradedUtc), so a recent filing can list trades made years earlier. The response is normalized JSON with the same envelope every AnyAPI endpoint returns, so parsing a second endpoint is a change of URL and nothing else.

Over the last 30 days, 100.0% of Congress Trades trades calls through AnyAPI succeeded, with a median response time of 6.5 seconds across 9 measured calls. These are AnyAPI's own measurements of traffic through the gateway, recomputed continuously, not a published service-level target.

Yes. A new AnyAPI account starts with $0.10 of free balance and no card required, which covers at least 1 Congress Trades Trades calls at up to $0.0534 each.

Send a POST request to https://api.getanyapi.com/v1/run/congress.trades with your AnyAPI key in an "Authorization: Bearer" header and the input as a JSON body. The same key and the same wallet work on every AnyAPI endpoint.

No. You add US dollars to one prepaid AnyAPI balance and each request draws it down. There is no monthly plan and no minimum, and the same balance pays for every AnyAPI endpoint.

Yes. Install @getanyapi/sdk from npm for TypeScript or getanyapi from pip for Python. Both call every AnyAPI endpoint with the same key, and any HTTP client works too.

Yes. An agent can connect to the AnyAPI MCP server at https://api.getanyapi.com/mcp, or create its own free-trial key with one unauthenticated POST to https://api.getanyapi.com/agent/signup and call this endpoint over HTTP.