Delilah API

A read-only REST API for US legislative data — the US Congress, all 50 states, and Washington DC. Bills and their full text, sponsors, roll-call votes down to how each member voted, committees, hearings, legislators, candidates, and a near-real-time change feed with SSE and webhooks.

Base URL

Every endpoint is served over HTTPS and versioned under /v1.

text
https://delilah-api.jsv21b.workers.dev

What you can access

  • Bills — search across 52 jurisdictions, then drill into sponsors, action history, text versions, subjects, amendments, committee referrals, calendar events, fiscal notes, staff analyses, statute citations, same-as/similar-to cross-references, and computed text diffs between versions.
  • Roll-call votes — the tally and the individual member votes for each roll call, which most feeds do not carry.
  • Legislators— rosters by state, party, chamber, and district, plus a member's full voting history and sponsored bills.
  • Committees & hearings — membership, schedules, and hearing records including video, audio, and transcript links where the state publishes them.
  • Candidates — ballot and FEC profiles keyed to the same people_id as the legislator endpoints.
  • Change feed — poll /v1/changes, subscribe to the /v1/stream SSE endpoint, or register a webhook.

Responses are JSON, timestamps are ISO 8601 UTC, and every list endpoint returns the same data envelope. Two endpoints are public and need no key — /v1/health and /v1/status — along with /v1/coverage, so you can measure our freshness and depth before you integrate.

Authentication

Every /v1/* data endpoint takes an API key in the X-API-Key header. See Authentication, or request a key.

bash
curl "https://delilah-api.jsv21b.workers.dev/v1/bills?state=FL&limit=5" \
  -H "X-API-Key: dk_live_…"

Know the status ladder

status_id follows this API’s own ladder, where 5 means Signed into Law and 8 means Chaptered. If you are moving from another data source, do not assume the same integer means the same thing — map explicitly. The full ladder is in the API Reference.

How teams integrate

Most integrations mirror the corpus once, then stay in sync from the change feed rather than re-listing bills — poll /v1/changes?since=… on a cadence, or hold open an /v1/stream connection. See Pagination for the recommended drain-and-sync pattern.

Next steps

  • Quickstart — make your first call in a few minutes.
  • API Reference — all 46 endpoints with their parameters and response shapes.
  • AI Tooling — query Delilah from Claude and other assistants over MCP.
  • Topics — the canonical taxonomy you can filter bills by.
  • Plans & Pricing — choose the right level of access.