Congressional trading and conflict-of-interest research
Congressエンドポイントを使えば、「Congressional trading and conflict-of-interest research」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Turn public congressional financial-disclosure filings into structured JSON — search by member name, state, district, or filing year, with normalized filing type, year, and PDF URL. Sourced from the House Clerk and Senate eFD public disclosure systems.
Search public congressional stock-disclosure filings (House or Senate) by member, ticker, or date range as structured JSON.
エンドポイントファミリー
2
ドキュメント化されたパラメータ
20
サンプル数
2
ライブカタログスナップショット
稼働エンドポイント
2
メソッド
GET
必須パラメータ
3
スキーマ参照
2
{
"platform": "Congress",
"endpoint": "congress-stock-disclosures",
"method": "GET",
"path": "/congress/stock-disclosures",
"auth": "apiKey"
}ユースケース
Search public congressional stock-disclosure filings (House or Senate) by member, ticker, or date range as structured JSON.
Congressエンドポイントを使えば、「Congressional trading and conflict-of-interest research」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Congressエンドポイントを使えば、「Public-official financial disclosure monitoring」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Congressエンドポイントを使えば、「Filing archive and compliance tooling」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
マネージド実行
以下の数値はすべて、稼働中のCongressエンドポイントカタログから取得しています(エンドポイント2件、ドキュメント化されたリクエストパラメータ20個、公開レスポンススキーマ2件)。DocsとPlaygroundが参照しているカタログと同じものです。
Congressのエンドポイントは2件、2つのリクエストファミリーに分類されています(Report、Stock Disclosures)。
これらのCongressエンドポイントには20個のリクエストパラメータがドキュメント化されており、うち3個が必須です。統合コードを書く前に入力仕様をすべて確認できます。
2件のCongressエンドポイントのうち2件が実際のサンプルレスポンスを、2件がドキュメント化されたレスポンススキーマを備えています。最初のリクエストの前に実データの形に合わせて実装できます。
Congressのエンドポイントは成功時のスキーマに加えてエラーレスポンス(400、404、500、503)もドキュメント化しています。ブロック、レート制限、レコード欠損は空データではなく型付きのエラーとして返ります。
Congressのエンドポイントは2個のホスト型MCPツールとして提供されており、エージェントは同じパラメータと同じJSON契約のまま、追加の実装なしに同じルートを呼び出せます。
カバレッジマップ
これらのカードは稼働中のエンドポイントカタログから生成されるため、このページはDocsとPlaygroundが使うAPIサーフェスをそのまま反映します。
/congress/report
/congress/stock-disclosures
エンドポイントカタログ
/congress/stock-disclosuresSearch public congressional stock disclosure filings (House or Senate)
レスポンスに関する注記
- `source_url` points to the upstream endpoint used for the search: - House: `https://disclosures-clerk.house.gov/FinancialDisclosure/ViewMemberSearchResult` - Senate: `https://efdsearch.senate.gov/search/report/data/` - Empty results return `count: 0`, `total: 0`, and `results: []` (HTTP 200). - Senate permits filter-only searches with no name, matching the source form. Its exact form filters are `first_name`, `last_name`, `filer_type`, `senator_state`, `candidate_state`, `report_type`, `from`, and `to`. - `count` is the number of rows on the current page; `total` is the number of rows across all pages after upstream filters. - Every result includes `year_kind`: `filing` means `filing_year` is a filing year; `election` means it is the House candidate election year. - Senate results include `filed_at` in canonical `YYYY-MM-DD` format. House list sources do not expose an exact filing date, so House results omit `filed_at`. - Senate exact-date searches verify that every returned row falls within the inclusive requested range. An inconsistent upstream page returns HTTP 503 instead of mismatched page totals. - No results page is distinguished from parser drift and blocked pages. - Blocked/error pages or parser drift return HTTP 503 with a typed error. Example response: ```json {"code":200,"msg":"OK","data":{"chamber":"senate","count":1,"total":26,"query":"Elizabeth Warren","sort":"filing_year_desc","page":1,"limit":25,"from":"2012","to":"2026","source_url":"https://efdsearch.senate.gov/search/report/data/","results":[{"member":"Elizabeth Warren","office":"Warren, Elizabeth (Senator)","filing_year":2025,"year_kind":"filing","filed_at":"2025-05-15","filing_type":"Annual Report","filing_url":"https://efdsearch.senate.gov/search/view/annual/example-id/"}]}} ```
MCPツール congress_stock_disclosures
/congress/reportFetch a single disclosure report by its filing_url (as returned by
レスポンスに関する注記
- `chamber` — always `senate` for this endpoint today (House disclosures aren't parseable HTML). The field's type is shared with `congress-stock-disclosures` and formally allows `house`, `senate`. - `parts` is a list of the report's content sections in document order. Annual reports have several numbered sections ("Part 1. Honoraria", "Part 3. Assets", ..., plus an unnumbered "Attachments & Comments"); PTR reports have exactly one, titled "Transactions". Each part carries: - `answer` — the section's yes/no lead question answer, when present (e.g. `"Yes"`). PTR's "Transactions" section has no such question and omits this field. - `rows` — the section's data table, when it has one, as a list of objects keyed by the table's own column headers (e.g. `Asset`, `Asset Type`, `Owner`, `Value`, `Income Type`, `Income` for an Annual report's Part 3 Assets table, or `Transaction Date`, `Owner`, `Ticker`, `Asset Name`, `Asset Type`, `Type`, `Amount`, `Comment` for a PTR's Transactions table). This is intentionally schema-agnostic across report types rather than hardcoded to one report type's columns. - `transactions` is the stable, normalized transaction list for both Annual reports (Part 4a and Part 4b) and PTR reports. It preserves document order and the source's displayed strings, including amount ranges and `--` placeholders. Each item includes `source_part`, optional `source_row_number`, `transaction_date`, `owner`, optional `ticker`, `asset_name`, optional `asset_type`, `transaction_type`, `amount`, and optional `comment`. The original table remains available in `parts[].rows` for backward compatibility and source-specific columns. - `body` is populated only for Due Date Extension notices -- a short prose notice (who requested the extension and the new due date), not a Parts-table form like Annual/PTR. `filer`/`filed_at`/`parts` stay blank for this type since the page has no structurally distinct fields for them; the filer's name appears inline in the `body` prose instead. - A URL that doesn't match a supported report returns HTTP 400 with a typed error. - A report id that doesn't exist returns HTTP 404. - A blocked, empty, or unexpectedly-shaped upstream response returns HTTP 503 and may be retried. Example response (Annual): ```json {"code":200,"msg":"OK","data":{"chamber":"senate","report_type":"annual","report_id":"cc198326-0f50-4f47-8b03-a5c6440f400f","source_url":"https://efdsearch.senate.gov/search/view/annual/cc198326-0f50-4f47-8b03-a5c6440f400f/","title":"Annual Report for Calendar 2018","filer":"The Honorable John A Barrasso (Barrasso, John)","filed_at":"05/15/2019 @ 8:11 AM","parts":[{"title":"Part 4b. Transactions","answer":"Yes","rows":[{"#":"1","Owner":"Self","Ticker":"VTSAX","Asset Name":"Vanguard Total Stock Market Index Fund","Transaction Type":"Sale (Partial)","Transaction Date":"01/02/2018","Amount":"$250,001 - $500,000","Comments":"n/a"}]}],"transactions":[{"source_part":"Part 4b. Transactions","source_row_number":"1","transaction_date":"01/02/2018","owner":"Self","ticker":"VTSAX","asset_name":"Vanguard Total Stock Market Index Fund","transaction_type":"Sale (Partial)","amount":"$250,001 - $500,000","comment":"n/a"}],"fetched_at":"2026-08-08T00:00:00Z"}} ``` Example response (PTR): ```json {"code":200,"msg":"OK","data":{"chamber":"senate","report_type":"ptr","report_id":"deb8df2a-b8ef-4f02-ae44-1f3b7168ccc2","source_url":"https://efdsearch.senate.gov/search/view/ptr/deb8df2a-b8ef-4f02-ae44-1f3b7168ccc2/","title":"Periodic Transaction Report for 01/03/2019","filer":"The Honorable Thomas R Carper (Former Senator)","filed_at":"01/03/2019 @ 1:10 PM","parts":[{"title":"Transactions","rows":[{"#":"5","Transaction Date":"12/19/2018","Owner":"Spouse","Ticker":"--","Asset Name":"Bank of America","Asset Type":"Corporate Bond","Type":"Purchase","Amount":"$15,001 - $50,000","Comment":"--"}]}],"transactions":[{"source_part":"Transactions","source_row_number":"5","transaction_date":"12/19/2018","owner":"Spouse","ticker":"--","asset_name":"Bank of America","asset_type":"Corporate Bond","transaction_type":"Purchase","amount":"$15,001 - $50,000","comment":"--"}],"fetched_at":"2026-08-08T00:00:00Z"}} ``` Example response (Due Date Extension): ```json {"code":200,"msg":"OK","data":{"chamber":"senate","report_type":"due_date_extension","report_id":"13373873-428a-423f-8d0f-be3e1e36a1a2","source_url":"https://efdsearch.senate.gov/search/view/extension-notice/regular/13373873-428a-423f-8d0f-be3e1e36a1a2/","title":"Candidate Report for 2026 Due Date Extension 1","filer":"","filed_at":"","parts":[],"body":"Theodore (Todd) B Achilles timely requested an extension of time for filing the annual Public Financial Disclosure Report.\n\nPursuant to section 101(g) of the Ethics in Government Act of 1978, as amended, a 90-day extension was granted and the new due date for the report is no later than August 13, 2026.","fetched_at":"2026-08-08T00:00:00Z"}} ```
MCPツール congress_report
関連API
Financial Data
Turn official SEC filings into structured data for financial research, due diligence, and AI-agent workflows — normalized statements with ratios, extracted filing sections, insider and institutional activity, all credential-free.
Financial Data
Collect Yahoo Finance quote pages, market data, historical prices, screeners, calendars, and ticker research modules as structured JSON for dashboards, watchlists, and agent-native workflows.
Financial Data
Extract public Google Finance quote pages, chart data, market news, company metadata, financial sections, market movers, and market category pages as structured JSON for research dashboards, monitoring workflows, watchlists, and AI agents.
Congressのスクレイピング方法
US House and Senate members are legally required to file periodic financial disclosures, but the House Clerk and Senate eFD systems publish them as separate search portals and PDFs. Crawlora's 2 congressional endpoints turn those filings into structured JSON — searchable by member, state, district, ticker, or year — and parse an individual report.
Filter by chamber (house or senate), member or first and last name, state, district, ticker, filer type, election year, and a from and to date range.
Sort by name, office, or filing year in either direction, and page through results with page and limit.
Each row comes back with a normalized filing type, its year, and the PDF URL of the original document.
The report endpoint takes that URL and fetches and parses the disclosure into structured JSON, instead of leaving you with a PDF to read by hand.
FAQ
Send a member name — or a ticker, chamber, state, or year filter — as query parameters to Crawlora's /congress/stock-disclosures endpoint and get normalized filing rows back: member, office, filing year, filing type, and the PDF URL of the original document, as structured JSON.
Both. Pass chamber=house or chamber=senate — House disclosures come from the House Clerk's public site and Senate disclosures from the Senate eFD system, the two official filing portals. These are public records that members of Congress are legally required to file; Crawlora normalizes the two different systems into one response shape.
The search endpoint accepts a ticker filter alongside member, state, district, filer type, and year. How individual holdings appear varies by report type, so pair a ticker search with the report endpoint to parse the underlying document.
annual, periodic_transaction, due_date_extension, blind_trust, and other. Periodic transaction reports are the ones that disclose individual trades within a reporting window.
No. This is a public-records API for research, journalism, and compliance work. Crawlora is not an investment adviser, and how you publish or act on congressional disclosure data is your responsibility under applicable law.