Odel
Bargo Congress Trades

Bargo Congress Trades

@bargo-aiJavaScriptUpdated 1mo ago

Query normalized U.S. Congress STOCK Act trades with member, ticker, and performance data.

Server endpointStreamable HTTPNo authProbed

This is the third-party server itself — Odel doesn't run it. Hitting this URL directly talks straight to the upstream server with no auth or proxying. Connect through Odel to front it with managed auth.

Bargo Free API Packages

Official lightweight clients for Bargo Free APIs.

Packages

  • packages/npm - npm package: @bargo-ai/congress
  • packages/python - Python package: bargo-congress

Both packages currently support the Bargo Congress Trades API.

API docs: https://www.bargo.ai/free-apis/congress

Quickstart

No key is required to try the API. A free key raises your quota — get one at https://www.bargo.ai/free-apis/dash

Python

pip install bargo-congress
from bargo_congress import BargoCongressClient

client = BargoCongressClient()  # or BargoCongressClient(api_key="...")

# Recent disclosures for one ticker
data = client.ticker_trades("NVDA", limit=5)
for trade in data["trades"]:
    print(trade["member"], trade["type"], trade["amount_range"], trade["transaction_date"])

# Filter across both chambers
senate_buys = client.trades(chamber="senate", type="buy", limit=10)

# Members, one member's disclosures, aggregates, dataset freshness
client.members(limit=50)
client.member("gilbert-cisneros")
client.stats()
client.health()

JavaScript / TypeScript

npm install @bargo-ai/congress
import { BargoCongressClient } from "@bargo-ai/congress";

const client = new BargoCongressClient({ apiKey: process.env.BARGO_API_KEY });

const { trades } = await client.tickerTrades("NVDA", { limit: 5 });
for (const t of trades) {
  console.log(t.member, t.type, t.amount_range, t.transaction_date);
}

const senateBuys = await client.trades({ chamber: "senate", type: "buy", limit: 10 });

Also published on JSR as @bargo-ai/congress.

curl

curl "https://www.bargo.ai/free-apis/congress/v1/trades?ticker=NVDA&limit=5"

# With a free key
curl -H "X-Api-Key: $BARGO_API_KEY" \
  "https://www.bargo.ai/free-apis/congress/v1/trades?chamber=senate&type=buy&limit=10"

Endpoints

EndpointReturns
GET /tradesDisclosures, filterable by member, chamber, type, and date
GET /trades/{ticker}Disclosures for a single ticker
GET /membersMembers of Congress with disclosure activity
GET /members/{member_slug}One member's disclosures
GET /statsAggregate trading statistics
GET /healthAPI status and dataset freshness

Every trade includes member and chamber, ticker and asset description, transaction type, disclosed value range, transaction and disclosure dates, the official filing portal, and price-performance fields where available.

Agent Skill

  • bargo-congress-api — research and explain recent U.S. congressional stock-trade disclosures with Bargo's REST API, official clients, or hosted Congress MCP server.

MCP

A hosted Congress MCP server is available at https://www.bargo.ai/free-apis/congress/mcp, authenticated with an X-Api-Key header. See docs/mcp.md.

Limits

  • Keyless: 30 requests/day and 100 rows/day per IP
  • Free API key: 100 requests/day and 1,000 rows/day
  • Page size: up to 100 rows keyless, up to 250 rows with a key

Quotas are reported per response in the X-RateLimit-* headers. Treat those as authoritative.

Notes

Disclosures are filed under the STOCK Act and can legally appear up to roughly 45 days after a trade, so this is not a real-time feed. This is an independent, unofficial service, not affiliated with or endorsed by the U.S. House of Representatives, the U.S. Senate, or any member of Congress. Nothing here is investment advice.

Attribution

If you display Bargo Congress API data publicly, include visible attribution linking to Bargo.