About the API
MAPLight.org performs original research on supporting and opposing interests for legislative bills. Combined with other databases (e.g., OpenSecrets.org from the Center for Responsive Politics (CRP), FollowTheMoney.org from the National Institute on Money in State Politics (NIMSP), Thomas via GovTrack.us, OpenCongress API) MAPLight.org’s Bill Positions API provides a powerful tool that illuminates the connection between campaign donations and legislative votes. It can also be mashed up with other databases that contain information about bills (e.g., GOP.gov Anywhere API) or politically-active organizations (e.g., Project Vote Smart) in unforeseen ways.
This RESTful API returns results in JSON or XML.
It provides access to data that is currently in the production database. As of May 2009, this includes:
- U.S. Congress, 109th (limited), 110th and 111th sessions
- California State Legislature (2003-2004)
The API is available to anyone who registers and abides by our Terms of Service. Using the API requires enough programming knowledge to be able to parse JSON or XML.
Non-programmers may also be interested in our Money and Votes Widget, which displays the amount of contributions received from organizations that supported and opposed a given bill. To create a widget for a bill, find a bill, select the Votes tab, then select Widget; this provides an interface where you can customize the widget and includes both the URL and HTML code for embedding the widget.
Research Methodology
We do not attempt to research every piece of legislation; resolutions for commemorative postage stamps or National Life Insurance Awareness Month, for example, will not have support or opposition in our database.
For a given organization, the API returns which bills the organization took a position upon, the position they took (i.e., support or oppose), and citations of publications MAPLight.org used to determine their position. For a given bill, the service returns organizations that took a position and the position they took, with citation, and a category code for the organization.
CRP codes Congressional campaign contributions as belonging to a certain industry/interest category, using their catcode taxonomy. NIMSP does the same at the state level. MAPLight.org researchers assign catcodes to the organization that has taken a position on the bill, using the CRP's catcode taxonomy. Combining the catcode in the MAPLight.org API with catcodes in Open Secrets' API or Bulk Data (or with NIMSP's data) provides an approximate sense of the connection between campaign contributions from special interests and the positions those special interests took on bills. However, when combining contributions data with this data set, note that:
- The catcode exposed in the API for an organization is a single catcode. For example, Pfizer Inc is coded by MAPLight.org as H4300 (Pharmaceutical manufacturing) but contributions from Pfizer are coded by CRP as both H4300 and A3100 (Animal feed & health products).
- MAPLight.org records bill positions for organizations but not all organizations that have a recorded position include a catcode. This is an artifact of how our methodology has evolved over time. The majority of missing values and conflicting values are around cases where we believe it is particularly problematic to draw meaningful conclusions about aggregated contributions data, represented by the following catcodes:
- Non-Profits (X4000)
- Lawyers & Lobbyists (K****)
- Democratic/Liberal (J1200)
- Republican/Conservative (J1100)
Getting Started
- You can test the API without a key. Register for an account to get an API key.
- View the documentation to learn how to use the API.
Support
Message the MAPLight.org API Discussion Google Group if you have any questions. To report an error in our research, please fill out this form, choosing the "Report Incorrect Data" category.
Release History
- July 2, 2009 (v1.1): Adds category codes for each organization (using the CRP catcode taxonomy), adds a new method that returns all bill positions in an entire session, and adds timestamps for positions taken.
- May 21, 2009 (v1.0): Introduced methods for finding all positions on a single bill or all positions taken by a single organization.
Client Libraries
MAPLight.org does not currently offer client libraries that call the Bill Positions API in conjunction with other datasets and APIs (e.g., GovTrack.us, OpenSecrets, Follow The Money).
Matching on a bill requires the jurisdiction (e.g., US), session (e.g., 111th) and bill number (e.g., H.R. 1). Matching on an organization requires string matching on the organization name; we are actively working on improving the way we manage organizational entities and plan to release other organizational identifiers such as Federal Election Commission (FEC) committee identifiers upon completion of that project.
We encourage the community to develop and share client libraries and best practices in matching organizations with other data sets in the MAPLight.org API Discussion Google Group.
Use of the MAPLight.org API is subject to the following terms:
- MAPLight.org cannot be held liable for the accuracy or availability of the service provided and does not make any claims to accuracy, completeness, availability, or any other warranty or guarantee.
- Each web page, data set, or publication that utilizes data from the MAPLight.org API must give attribution to MAPLight.org. Implication or claim of endorsement is strictly prohibited.
- Usage of the API depends upon an API key which should only be used by the individual/organization which requested it. Sharing or distribution of API keys is not permitted.
- Usage is currently not limited, but excessive usage is monitored and may be grounds for the termination of service. If you plan to make heavy use of the MAPLight.org API please contact us beforehand so we can be sure it will not damage general availability.
- User will, upon MAPLight.org's request, provide MAPLight.org with monthly traffic statistics (visitors and pageviews) for web pages that use data from the MAPLight.org API. MAPLight.org does not distribute user-specific statistics of API usage except in cases where we have obtained the user's permission. We do, however, reserve the right to publish usage statistics aggregated across multiple users.
- These terms may be modified at any time. We will send notification of changes to the user email address on file.
- Service may be terminated at any time at the discretion of MAPLight.org.
- The MAPLight.org API is provided free of charge for use on free public websites, including those owned by for-profit entities. To use MAPLight.org's API as part of a non-public, fee-based, or subscription-based site or service, specific permission is required--please contact us for details.