State Legislation API: Bills, Legislators, Votes (Open States) avatar

State Legislation API: Bills, Legislators, Votes (Open States)

Pricing

from $5.00 / 1,000 state bill returneds

Go to Apify Store
State Legislation API: Bills, Legislators, Votes (Open States)

State Legislation API: Bills, Legislators, Votes (Open States)

Search US state legislation in all 50 states, DC and Puerto Rico: bills and resolutions with sponsors, actions, votes and versions, current state legislators by district or map point, committees, hearings and sessions, via the Open States API from Plural Policy. Bring your own key.

Pricing

from $5.00 / 1,000 state bill returneds

Rating

0.0

(0)

Developer

Nabeel Hassan

Nabeel Hassan

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Search and export US state legislation, state legislators, committees, hearings and legislative sessions for all 50 states, DC and Puerto Rico, as one clean dataset row per record.

Open States, run by Plural Policy, collects the bills, resolutions, sponsors, actions, roll call votes, bill text versions, legislators, committees and hearings of every state legislature into one public domain database. This actor wraps the read only Open States API v3 on v3.openstates.org: pick states and filters, or paste bill numbers and IDs, and get deduplicated rows with the bill number, title, session, chamber, status, latest action, sponsors and links already flattened, ready to download as JSON, CSV or Excel, schedule as a daily state bill tracking feed, or feed into policy monitoring dashboards, government affairs tools, Google Sheets, RAG pipelines and AI agents.

Bring your own API key: Open States keys are free (see below).

What it does

  • State bills search: bills, resolutions and constitutional amendments in one or many states, filtered by session, chamber of origin, bill type, subject, sponsor (primary or cosponsor), bill numbers, updated since, introduced since and latest action since, with full text search across bill text and titles in one state or all states.
  • Bill details on demand: sponsors, abstracts, the full action history, roll call votes, bill text versions, documents such as fiscal notes, related bills, other titles and identifiers.
  • Lookup by bill number or ID: single bills as CA 20252026 AB 1, as an open.pluralpolicy.com bill page URL, or as an ocd-bill ID; legislators, committees, events and states by their Open States IDs.
  • State legislators: current members of every state legislature (and governors) by state, chamber, district or name, with party, district, email, capitol phone, office address and photo.
  • Find my state legislator: the state legislators who represent a latitude and longitude.
  • Committees: standing committees and subcommittees per state and chamber, with their members and roles.
  • Hearings and events: committee hearings and floor sessions with dates, location, participants and the bills on the agenda (Open States still marks this data as experimental and it is not yet complete for every state).
  • States and sessions: every state with its legislative session identifiers and dates, which the session filter takes.
  • Pay only for results: refused and empty lookups become a free row that says why.

Nothing is written to any Open States account: only GET endpoints are called.

How to use it

  1. Get a free Open States API key: sign up at open.pluralpolicy.com/accounts/signup/, confirm your email address, then copy the key from open.pluralpolicy.com/accounts/profile/.
  2. Paste it into the API key field (or set a DATA_API_KEY environment variable on the actor). It is sent only to v3.openstates.org in the X-API-KEY header and never logged.
  3. Choose What to get, pick one or more states under Jurisdictions, set the filters you need and press Start.
  4. Download the dataset, or schedule the actor with Updated since or Action since for a recurring state legislation tracker.

Free keys allow 10 requests a minute and 250 a day, so the actor paces itself at 9 a minute by default. A bills search reads 20 bills per request, so 100 bills take 5 requests and about 35 seconds. When the daily allowance is used up the run ends cleanly and says so; it resets at midnight UTC. Higher tiers can be requested from Plural Policy; raise Requests per minute to match.

Input

FieldUsed byExample
What to getallBills search
Jurisdictions (states)bills, legislators, committees, events, statesCalifornia, Texas
Full text searchBills search"data privacy"
SessionBills search20252026
Chamberbills, legislators, committeesUpper (Senate)
Bill type, SubjectsBills searchBill, Education
Sponsor, Sponsor typeBills searcha sponsor name or ocd-person ID, Primary sponsor
Bill numbersBills searchAB 1, SB 23
Updated since, Introduced since, Action sinceBills search2025-01-01
SortBills searchNewest latest action first
Bill details to includeBills search, lookupSponsors, Actions, Roll call votes
Bills and IDs to look upLookupCA 20252026 AB 1
Legislator name, DistrictLegislators searchSmith, 12
Locations (latitude, longitude)Legislators by location38.5767,-121.4934
Legislator, committee, event, state details to includethe matching modesOffices, Members, Agenda
Committee type, Parent committee IDCommitteesSubcommittees
Events after, Events before, Only events with billsHearings and events2025-03-01
Max resultsall100
Requests per minuteall9
API keyallyour Open States key

Example input for California bills on privacy with a floor or committee action this year, newest action first:

{
"mode": "bills",
"jurisdictions": ["ca"],
"searchQuery": "privacy",
"actionSince": "2025-01-01",
"sort": "latest_action_desc",
"billIncludes": ["sponsorships", "abstracts"],
"maxResults": 100
}

Example output

The shape of one bill row (values illustrative):

{
"mode": "bills",
"recordType": "bill",
"query": "California \"privacy\"",
"found": true,
"id": "ocd-bill/00000000-0000-0000-0000-000000000000",
"name": "Consumer privacy: personal information",
"jurisdiction": "California",
"jurisdictionId": "ocd-jurisdiction/country:us/state:ca/government",
"identifier": "AB 1234",
"session": "20252026",
"chamber": "lower",
"classification": "bill",
"subjects": null,
"firstActionDate": "2025-02-20",
"latestActionDate": "2025-06-30",
"latestActionDescription": "Read second time. Ordered to third reading.",
"latestPassageDate": null,
"primarySponsor": "Jane Doe",
"sponsors": "Jane Doe; John Roe",
"sponsorCount": 2,
"abstract": "An act to amend the Civil Code, relating to privacy.",
"fullHistory": false,
"openstatesUrl": "https://openstates.org/ca/bills/20252026/AB1234/",
"updatedAt": "2025-07-01T08:12:44.000Z",
"note": null,
"record": { "id": "ocd-bill/...", "...": "the full Open States bill" }
}

Legislator rows carry party, role, chamber, district, email, phone, address and image; committee rows classification, parentId, members and memberCount; event rows startDate, endDate, status, location and agendaBills; state rows sessions and latestSession. Every row keeps the full Open States record under record.

Pricing

EventPrice
State bill returned0.005 USD
State bill with full history returned (actions, votes, versions or documents included)0.008 USD
State legislator returned0.005 USD
Committee, hearing or state session record returned0.005 USD

Refused and empty lookups are free rows. Platform usage is included. The Open States key itself is free.

FAQ

What is Open States?

Open States is a project of Plural Policy (part of SAI360) that scrapes and normalises the official websites of all 50 state legislatures, the DC Council and the Puerto Rico legislature into one database of bills, votes, legislators, committees and events. Its API v3 at v3.openstates.org is free with a key, and the data is in the public domain.

Do I need an API key?

Yes. Open States answers nothing without a key, and the actor ends the run with instructions if none is set. The key is free: sign up at open.pluralpolicy.com/accounts/signup/, confirm your email, and copy the key from open.pluralpolicy.com/accounts/profile/.

How do I track new bills in a state every day?

Choose Bills search, pick the state, set Updated since (or Action since) to yesterday's date and Sort to newest first, and schedule the actor daily. Add a full text search, subject or sponsor to narrow it to the policy area you follow.

Can I search bills across all 50 states at once?

Yes. Leave Jurisdictions empty and type a full text search, such as "artificial intelligence": Open States searches every state. Or pick several states to run one filtered search per state.

How do I get a bill's full history, votes and text?

Add Actions, Roll call votes and Bill text versions under Bill details to include, in Bills search or in Lookup. Each bill then carries its counts and latest bill text link as columns, with every action, vote (with each legislator's vote) and version under record. These bills are priced as detailed bills.

How do I look up a specific bill?

Choose Lookup and give the bill as state, session and number, such as CA 20252026 AB 1, or paste its open.pluralpolicy.com page URL or its ocd-bill ID. The States and sessions mode lists each state's session identifiers.

Can I get state legislator contact details?

Yes. Legislators search returns current state senators and representatives with party, district, email, capitol phone and office address (include Offices). Legislators by location returns the legislators for a latitude and longitude, for "find my representative" tools.

Does it cover the US Congress?

This actor is built for the state legislatures. Open States covers federal data only in part (Legislators by location also returns members of Congress for a point); for Congress bills use a Congress.gov source.

How current is the data?

Open States scrapes each legislature's website on a regular schedule, most often while the legislature is in session. The States and sessions mode shows the latest bill and people update time for each state.

Keyword map

State legislation API, state bills API, state bill tracking, legislative tracking for state legislatures, Open States API, OpenStates scraper, Plural Policy API, state legislature data, state legislators API, state senators and representatives, find my state legislator, legislator contact list, state committees, legislative hearings calendar, roll call votes, bill text, bill status, policy monitoring, government affairs, advocacy tools, LegiScan alternative.

Data licence and terms

Open States data is in the public domain: Plural Policy claims no copyright over it and requires no attribution, so you may store, combine, publish and resell the rows this actor returns. Its terms of service (open.pluralpolicy.com/tos/) ask that no affiliation or endorsement be implied, and that usage limits on your key are not circumvented; the actor stays within your key's rate limits. This actor is not affiliated with or endorsed by Plural Policy, Open States or SAI360.