Machine Readable Data

All documents on are published in both html and json which makes it much easier for a 3rd party developers to read legislative data.

All that is needed to access the json is to append .json to any page on the "docs" site.

For example for AB1 of the 2021 session:




URL structure

We endeavor to keep our URL structure regular and consistent.  It's not possible to list them all, but here are some common ones:

Proposals:{session}/proposals/{session abbreviation}/{proposal name}

Amendments:{session}/amendments/{proposal name}/{amendment name}

Fiscal Estimates:{session}/related/fe/{proposal name}

Legislators:{session}/legislators/{house}/{legislator id*}

Committees:{session}/committees/{house}/{committee id*}

*see note about IDs in "Data Structure" section below

Data Structure 

IDs of various items; legislators, committees, proposal history entries, are primarily for internal data integrity.  But since they are used in the URL structure it is important to note that they can be found in the json of the each item's home page.

For example, the "legislator id" for each Senator can be found here


Many pages have "children" items which are a byproduct of our internal structure.  It is not possible to list them all, but for each child listed, a developer could visit each child to determine its type and relation.

Lack of Warranty

We endeavor to maintain consistency in the structure of the data published.  But from time to time we may need to change the structure, therefore it may change without notice.