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.
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_idas the legislator endpoints. - Change feed — poll
/v1/changes, subscribe to the/v1/streamSSE 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.
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.

