---
title: "Returns Form 278 annual financial disclosures filed by members of Congress — assets, income, liabilities, transactions, gifts and outside positions. The same filings are published free as news at https://keyvex.com/disclosures under 5 U.S.C. § 13107(c)."
method: GET
path: "/v1/annual-financial-disclosures"
---

# Returns Form 278 annual financial disclosures filed by members of Congress — assets, income, liabilities, transactions, gifts and outside positions. The same filings are published free as news at https://keyvex.com/disclosures under 5 U.S.C. § 13107(c).

`GET /v1/annual-financial-disclosures`

## Request

- Base URL: `https://api.keyvex.com`
- URL: `https://api.keyvex.com/v1/annual-financial-disclosures`
- Auth: API key in header `x-api-key`

Returns Form 278 (Public Financial Disclosure / Annual Financial Disclosure) filings — the annual snapshot members of Congress file each year showing assets, income sources, liabilities, transactions, gifts, outside positions, and (for spouse + dependent children) the same.  The same filings are published free as news at https://keyvex.com/disclosures under 5 U.S.C. § 13107(c).  SCOPE — v1 covers BOTH chambers: Senate (Senate eFD) and House (House Clerk). Filed by every senator and representative (and senior executive-branch officials, federal judges) by May 15 each year.  Use this when the user asks about: a member's asset composition, outside income sources, board seats / outside positions, liabilities (mortgages, loans), or for news reporting on annual disclosures.  CONTENT — when a filing's schedules were machine-parsed, `content_parsed` is true and the record carries structured `assets` (Schedule A) and `liabilities` arrays plus `asset_count` / `liability_count`. `value_range` / `amount_range` are the disclosed RANGES (e.g., '$50,001 - $100,000'), NOT point estimates — KeyVex does not collapse a range to a single number. SENATE rows carry the ranges verbatim. HOUSE rows are read from the House Clerk PDF by column position. On a House candidate or new-filer report, whose income prints in two columns ('current year to filing', 'preceding year'), `income_range` is empty — neither is the reporting period; `report_url` shows both. A row KeyVex could not read with confidence carries `parse_unreliable: true`, and for such rows `report_url` is authoritative. Net-worth roll-up is intentionally NOT provided (it would be a KeyVex-derived aggregate, not a disclosed value). When schedules are unavailable — Senate PAPER (scanned-image) filings, which carry no machine-readable text, or the occasional parse skip — `content_parsed` is false and `coverage_note` names the limitation; follow `report_url` to read the original. This honest coverage boundary is never a silent omission.  Different from get_congressional_trades: PTRs are per-trade real-time notices (filed within 30-45 days), while Form 278 is the year-end balance-sheet snapshot. Combine both for the full activity + position view of a member.  Report types: 'Annual' (yearly filing covering prior calendar year), 'New Filer' (initial disclosure on entering office), 'Termination' (final disclosure on leaving office), 'Combined' (annual+termination for filer who left mid-year), 'Amendment' (correction of a prior filing), 'Other' (rare).

## Query parameters

- `bioguide_id` string
- `member_name` string
- `chamber` 'senate' | 'house'
- `state` string
- `party` string
- `filing_year` integer
- `report_type` 'Annual' | 'New Filer' | 'Termination' | 'Combined' | 'Amendment' | 'Periodic' | 'Other'
- `since` string
- `until` string
- `sort_by` 'filing_date' | 'filing_year'
- `sort_order` 'desc' | 'asc'
- `limit` integer

## Response `200`

JSON envelope: { results: [...], count, has_more }.

## Other responses

- `400`: Invalid parameter.
- `401`: Missing or invalid API key.
- `402`: This tool requires a higher plan (upgrade_required). Retrying will not help.
- `429`: Tier rate/quota limit reached (rate_limited). Retry-After points at the reset.

---

[API](https://skmtc.dev/keyvex/apis/keyvex-api.md) · [All operations](https://skmtc.dev/keyvex/apis/keyvex-api/llms.txt) · [OpenAPI document](https://skmtc.dev/keyvex/apis/keyvex-api/revisions/01c0210c19cd?raw)
