NOTE: Capitol Words API is defunct
rsunlight
is a collection of functions to search and acquire data from the various APIs that used to be housed under Sunlight Labs, but which are now housed under ProPublica.
rsunlight
wraps functions in APIs for:
cg
) - Run by ProPublicaos
) - Run by OpenStates foundationFunctions that wrap these sets of APIs will be prefixed by cg
or os
for the different methods listed above:
cg
+ fxn
os
+ fxn
where fxn
would be a function to a interface with a specific API.
You need API keys for Propublica APIs. Get them at https://www.propublica.org/datastore/apis
You need an API key for the OpenStates API. Get it at https://openstates.org/api/register/
We set up the functions so that you can use either env vars, or R options.
For env vars, put an entry in your .Renviron
file with the names
PROPUBLICA_API_KEY
and OPEN_STATES_KEY
.
From CRAN
install.packages("rsunlight")
Or development version from Github
devtools::install_github("ropengov/rsunlight")
library("rsunlight")
Search for congress members by chamber and state
cg_members_state_district('senate', 'RI')
#> # A tibble: 2 x 16
#> id name first_name middle_name last_name suffix role gender party
#> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr>
#> 1 W0008… Sheld… Sheldon <NA> Whitehou… <NA> Sena… M D
#> 2 R0001… Jack … Jack <NA> Reed <NA> Sena… M D
#> # ... with 7 more variables: times_topics_url <chr>, twitter_id <chr>,
#> # facebook_account <chr>, youtube_id <chr>, seniority <chr>,
#> # next_election <chr>, api_uri <chr>
Search for committees by congress and chamber
cg_committees(115, "senate")[[1]]$committees[[1]]
#> $id
#> [1] "SCNC"
#>
#> $name
#> [1] "Caucus on International Narcotics Control"
#>
#> $chamber
#> [1] "Senate"
#>
#> $url
#> [1] "http://www.drugcaucus.senate.gov/"
#>
#> $api_uri
#> [1] "https://api.propublica.org/congress/v1/115/senate/committees/SCNC.json"
#>
#> $chair
#> [1] "Charles E. Grassley"
#>
#> $chair_id
#> [1] "G000386"
#>
#> $chair_party
#> [1] "R"
#>
#> $chair_state
#> [1] "IA"
#>
#> $chair_uri
#> [1] "https://api.propublica.org/congress/v1/members/G000386.json"
#>
#> $ranking_member_id
#> [1] "F000062"
#>
#> $subcommittees
#> list()
Bill Search - Search for bills with the term agriculture, in Texas, and in the upper chamber.
os_billsearch(terms = 'agriculture', state = 'tx', chamber = 'upper')
#> # A tibble: 26 x 10
#> title created_at updated_at id chamber state session type subjects
#> * <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr>
#> 1 Relat… 2017-03-1… 2017-06-0… TXB0… upper tx 85 bill <NA>
#> 2 Recog… 2017-02-2… 2017-06-0… TXB0… upper tx 85 reso… <NA>
#> 3 Recog… 2017-02-2… 2017-06-0… TXB0… upper tx 85 reso… <NA>
#> 4 Relat… 2017-01-3… 2017-06-0… TXB0… upper tx 85 bill <NA>
#> 5 Relat… 2015-03-0… 2016-04-2… TXB0… upper tx 84 bill <NA>
#> 6 Relat… 2015-03-1… 2015-07-0… TXB0… upper tx 84 bill <NA>
#> 7 Urgin… 2015-05-1… 2016-04-2… TXB0… upper tx 84 conc… <NA>
#> 8 Relat… 2015-03-1… 2015-03-2… TXB0… upper tx 84 bill <NA>
#> 9 Relat… 2015-03-1… 2015-03-2… TXB0… upper tx 84 bill <NA>
#> 10 Relat… 2015-03-0… 2015-03-1… TXB0… upper tx 84 bill <NA>
#> # ... with 16 more rows, and 1 more variable: bill_id <chr>
Legislator Search - Search for Republican legislators in Nevada
os_legislatorsearch(state = 'nv', party = 'republican')
#> # A tibble: 24 x 26
#> last_name updated_at full_name id first_name middle_name district
#> * <chr> <chr> <chr> <chr> <chr> <chr> <chr>
#> 1 Hambrick 2018-05-14 … John Hamb… NVL0… John "" 2
#> 2 Woodbury 2018-05-14 … Melissa W… NVL0… Melissa "" 23
#> 3 Ellison 2018-05-14 … John Elli… NVL0… John C. "" 33
#> 4 Hansen 2018-05-14 … Ira Hansen NVL0… Ira "" 32
#> 5 Anderson 2018-05-14 … Paul Ande… NVL0… Paul "" 13
#> 6 Oscarson 2018-05-14 … James Osc… NVL0… James "" 36
#> 7 Wheeler 2018-05-14 … Jim Wheel… NVL0… Jim "" 39
#> 8 Titus 2018-05-14 … Robin L. … NVL0… Robin L. "" 38
#> 9 Edwards 2018-05-14 … Chris Edw… NVL0… Chris "" 19
#> 10 Kramer 2018-05-14 … Al Kramer NVL0… Al "" 40
#> # ... with 14 more rows, and 19 more variables: state <chr>,
#> # votesmart_id <chr>, party <chr>, email <chr>, all_ids <chr>,
#> # leg_id <chr>, active <lgl>, transparencydata_id <chr>, nickname <chr>,
#> # photo_url <chr>, url <chr>, country <chr>, created_at <chr>,
#> # level <chr>, chamber <chr>, offices <chr>, `+address` <chr>,
#> # suffixes <chr>, csrfmiddlewaretoken <chr>
rsunlight
in R doing citation(package = 'rsunlight')
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.