We’ve got a few updates on our Congress API to tell you about.
First, today we’re announcing that the congressional statements appearing in our Represent congressional database are now available via our Congress API. You can see examples of the API requests and responses on our new documentation site.
The statements, which are pulled directly from official House and Senate websites, are available by date, by member and in reverse chronological order. You also can search the titles of statements by keyword or retrieve statements by subject. Subjects are assigned by a ProPublica journalist.
Several times a day, we check RSS feeds for members who have them and load any new items into our database. For sites that don’t have RSS we resort to screen-scraping using the Statement Ruby gem. This is an imperfect solution because members of the House and Senate change the structure of their websites more often than you might think, and we have to play catch up when they do. If you see that we’re missing member statements for more than a few days, please email us at email@example.com.
The Los Angeles Times has already used the API to build a page showing where members of the Senate stood on the firing of former FBI Director James Comey.
You can sign up for an API key here.
In addition to the new statement endpoints, we’ve added data from the Sunlight Congress API into the main ProPublica Congress API, as we continue to merge the two. For the bill endpoints, we’ve added recently enacted and recently vetoed bills. We’ve also updated endpoints for members, votes and amendments.
Next on the roadmap are House and Senate floor updates, more committee responses and the ability to search the full text of bills. Those will be coming early this summer, so stay tuned. If you run into any issues with the Congress API, you can create an issue on GitHub or email us at firstname.lastname@example.org.
Finally, a bonus announcement: Demokratia, a civic technology firm that is using the Congress API for a project, has built a .NET client for testing its endpoints and released it to the public. You can find it here.
We’d love to hear from you if you’re building something with the API, too. Email email@example.com.