Read the labs blog
SunlightLabs API
people.getDataItem
Get a single data item (party, email, photo etc.) for a person
These are the different types of items available:
| Name | Description |
|---|---|
| CRPcandID | The candidate ID used by the Center For Responsive politics. |
| URL | The person's or entity's website |
| state_full_name | The full name of a state, e.g. "North Dakota" |
| state_abbreviation | The abbreviation of a state's name, e.g. "CA" |
| district | The integer value of a representative's district, e.g., "6" |
| WashPost_ID | Washington Post's ID for this person |
| party | The person's party, i.e. "D", "R" or "I' |
| VoteSmart_ID | The ID used by Project Vote Smart (http://votesmart.org/index.htm) |
| title | A person's title, e.g. "Representative" or "Senator" |
| member110congress | Is/Was the person a member of the 110th Congress?, i.e., "yes" or "no" |
| FEC_ID | FEC's ID for this person |
| webform | A contact webform for this person |
| Email for this person | |
| senator_class | Class for this person (Senator): I, II, or III |
| phone | Phone number |
| name_suffix | Name Suffix, e.g. "Jr." or "II" |
| congress_office | Address of their Congressional Office, e.g. "1502 Longworth HOB, Washington, DC 20515-1101" |
| gender | Gender: "M" or "F" |
| photo | The filename for their photo at http://sunlightlabs.com/widgets/popuppoliticians/resources/images/ |
| congresspedia | The URL for their Congresspedia page |
| BioGuide_ID | ID for their BioGuide entry at http://bioguide.congress.gov/biosearch/biosearch.asp |
| Eventful_ID | The performer ID for an Eventful politician |
| lastname | Last Name(s) |
| firstname | First Name(s) |
| middlename | Middle Names(s) |
| nickname | Nickname |
| GovTrack_ID | The ID used by Govtrack.us |
| entity_id | The common id being promoted by the labs |
Arguments
These are all $_GET parameters.
id (required)
An entity_id, e.g. "fakeopenID2".
code (required)
One of the codes above specifiying the desired item type
apikey (required)
your individual API key
metadata (optional)
&metadata=true provides detail about source, last update of the information etc. Click here for details
output (optional)
&output=json is set by default. You can also use &output=xml
Example Call
http://api.sunlightlabs.com/people.getDataItem.php?id=fakeopenID2&code=phone &apikey=23kj234kjb3kjbcl87ds
says take the entity_id "fakeopenID2" and get their phone number.
Example Response
For the default JSON:
{ "entity_id": "fakeopenID2", "phone":"(202) 225-5431" }
For XML:
<results> <entity_id>fakeopenID2</entity_id> <phone>(202) 225-5431</phone> </results>
Error Codes
If there is an error: a plain text string will be returned:
0: no data found
This means that the entity was found but there was no data for that id for that field. This might occur. The database is not complete
100: invalid API key
The API key was invalid
101: API key not valid for this method
Not permitted to call this particular method with this particular API key
200: invalid input code
Invalid code. Check against the table above

