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://api.delilahusa.com
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. /v1/health is public and needs no key, as are /openapi.json and /docs. Freshness and depth live at /v1/coverage, which does require a key.
Authentication
Every /v1/* data endpoint takes an API key in the X-API-Key header. See Authentication, or request a key.
curl "https://api.delilahusa.com/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 — every endpoint with its parameters and response shapes.
- MCP server — query Delilah from Claude and other assistants over the Model Context Protocol.
- Topics — the canonical taxonomy you can filter bills by.
- Plans & Pricing — choose the right level of access.

