Authoritative Data Sources
EIA API roots’ endpoints
Code
<- "https://api.eia.gov/v2/"
eia_url
# getting body data with httr2 request()
<- request(eia_url) %>%
EIA_Query_routes req_headers(`x-api-key` = api_key) %>%
req_perform()
<- resp_body_json(EIA_Query_routes)
routes_result
<- do.call(
eia_routes lapply(
rbind, 1:length(routes_result[[1]][[4]]), \(i) t(routes_result[[1]][[4]][[i]]))) %>%
as.data.frame()
$description <- gsub("\r\n ", "", eia_routes$description)
eia_routes
::datatable(eia_routes, caption = "EIA routes") DT
EIA API petroleum endpoints
Code
<- request(paste0(eia_url, "petroleum/")) %>%
EIA_petroleum_Query req_headers(`x-api-key` = api_key) %>%
req_perform()
<- resp_body_json(EIA_petroleum_Query)
petroleum_routes_result
<- do.call(
eia_petroleum_routes lapply(
rbind, 1:length(petroleum_routes_result[[1]][[4]]), \(i) t(petroleum_routes_result[[1]][[4]][[i]]))) %>%
as.data.frame()
::datatable(eia_petroleum_routes, caption = "EIA Petroleum routes") DT
EIA API petroleum consumptions/sales endpoints
Code
<- request(paste0(eia_url, "petroleum/cons/")) %>%
EIA_petroleum_cons_Query req_headers(`x-api-key` = api_key) %>%
req_perform()
<- resp_body_json(EIA_petroleum_cons_Query)
petroleum_routes_cons_result
<- do.call(
eia_petroleum_cons_routes
rbind,lapply(
1:length(petroleum_routes_cons_result[[1]][[4]]),
t(petroleum_routes_cons_result[[1]][[4]][[i]])
\(i)
)%>%
) as.data.frame()
::datatable(eia_petroleum_cons_routes, caption = "EIA Petroleum consumptions/sales endpoints") DT