Reference · Committees/docs/committees

Committees

Names normalized so a hearing matches its committee record.

GEThttps://api.archivist.dev/committees{id}

Request

The list endpoint at /committees accepts the following query parameters. A specific record can be fetched by appending its id segment.

Request parameters
NameInTypeRequiredDescription
{id}pathstringoptionalCommittee id, e.g. hsju00 (House Judiciary) or ssfi00 (Senate Finance).
chamberquerystringoptionalhouse, senate, or joint.
congressqueryintegeroptionalFilter to a single Congress.
parent_idquerystringoptionalRestrict to subcommittees of a parent committee.
cursorquerystringoptionalOpaque pagination cursor.
limitqueryintegeroptionalPage size, 1–100. Defaults to 25.

Run it — curl

curl···
# All House committees for the 118th Congress
curl 'https://api.archivist.dev/committees?chamber=house&congress=118' \
  -H "Authorization: Bearer $ARCHIVIST_KEY"

# A single committee
curl https://api.archivist.dev/committees/hsju00 \
  -H "Authorization: Bearer $ARCHIVIST_KEY"

Run it — JavaScript

Plain fetch — no SDK, no runtime dependency. The key reads from env at server startup.

committees.js···
const res = await fetch(
  'https://api.archivist.dev/committees?chamber=house&congress=118',
  { headers: { Authorization: `Bearer ${process.env.ARCHIVIST_KEY}` } },
);
const { items } = await res.json();
const judiciary = items.find((c) => c.name.includes('Judiciary'));

Response

Successful responses are 200 OK with the shape below. Errors come back as { "error": "..." } — see the error reference for the full status table.

Response schema
FieldTypeRequiredDescription
itemsCommitteeItem[]
required
Page of committees, ordered by chamber then name.
items[].committee_idstring
required
Stable id — chamber-key code.
items[].chamberstring
required
house, senate, or joint.
items[].namestring
required
Display name (e.g. House Committee on the Judiciary).
items[].parent_idstring | nulloptionalParent committee id for subcommittees, null for top-level.
items[].membersCommitteeMember[]optionalMembers on the committee for the most recent Congress.
nextCursorstring | null
required
Pass into the next page; null on the last page.
response···
{
  "items": [
    {
      "committee_id": "hsju00",
      "chamber": "house",
      "name": "House Committee on the Judiciary",
      "parent_id": null,
      "members": [
        { "member_id": "M000197", "role": "member" }
      ]
    }
  ],
  "nextCursor": null
}

Related endpoints

Notes
  • committee_id is stable across renamings and reorgs — the same entity returns whether it’s the 117th or 118th Congress.
  • parent_id is set on subcommittees; pass it into /committees/{parent_id} for the parent.