Reference · Hearings/docs/hearings

Hearings

Linked to bills, members, and committees by foreign keys.

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

Request

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

Request parameters
NameInTypeRequiredDescription
{id}pathstringoptionalHearing id, e.g. hr-2026-04-22-hsju.
committee_idquerystringoptionalFilter to a single committee (joins to /committees).
congressqueryintegeroptionalFilter to a single Congress.
date_fromquerystringoptionalISO 8601 lower bound (inclusive).
date_toquerystringoptionalISO 8601 upper bound (inclusive).
cursorquerystringoptionalOpaque pagination cursor.
limitqueryintegeroptionalPage size, 1–100. Defaults to 25.

Run it — curl

curl···
# Upcoming Judiciary hearings
curl 'https://api.archivist.dev/hearings?committee_id=hsju00' \
  -H "Authorization: Bearer $ARCHIVIST_KEY"

# A single hearing
curl https://api.archivist.dev/hearings/hr-2026-04-22-hsju \
  -H "Authorization: Bearer $ARCHIVIST_KEY"

Run it — JavaScript

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

hearings.js···
const res = await fetch(
  'https://api.archivist.dev/hearings?committee_id=hsju00',
  { headers: { Authorization: `Bearer ${process.env.ARCHIVIST_KEY}` } },
);
const { items } = await res.json();
console.log(`${items.length} upcoming Judiciary hearings`);

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
itemsHearingItem[]
required
Page of hearings, newest first.
items[].hearing_idstring
required
Stable id (date-chamber-committeeCode).
items[].committee_idstring
required
Foreign key into /committees/{id}.
items[].datestring
required
ISO 8601 date of the hearing.
items[].witnessesWitness[]optionalWitnesses who testified, with their positions.
items[].documentsDocument[]optionalAssociated documents, with stable URLs.
items[].bill_idsstring[]optionalBills discussed, joins to /bills/{id}.
nextCursorstring | null
required
Pass into the next page; null on the last page.
response···
{
  "items": [
    {
      "hearing_id": "hr-2026-04-22-hsju",
      "committee_id": "hsju00",
      "date": "2026-04-22",
      "witnesses": [
        { "name": "Witness A", "position": "Witness, Department of Justice" }
      ],
      "documents": [
        { "type": "statement", "url": "https://api.archivist.dev/documents/…" }
      ],
      "bill_ids": ["118-hr-3076"]
    }
  ],
  "nextCursor": null
}

Related endpoints

Notes
  • Dates are ISO 8601 (no timezone — always calendar date in the committee’s jurisdiction).
  • bill_ids is an array because a single hearing may touch multiple bills; iterate and join to /bills/{id}.