Client {hakaiApi} | R Documentation |
The Hakai API Client Class
Description
Class to use to make authenticated API requests for Hakai data
Public fields
api_root
The api_root you are logged in to
Methods
Public methods
Method new()
Log into Google to gain credential access to the API
Usage
Client$new( api_root = "https://hecate.hakai.org/api", login_page = "https://hecate.hakai.org/api-client-login" )
Arguments
api_root
Optional API base url to fetch data. Defaults to "https://hecate.hakai.org/api"
login_page
Optional API login page url to display to user. Defaults to "https://hecate.hakai.org/api-client-login"
Returns
A client instance
Examples
client <- Client$new()
Method get()
Send a GET request to the API
Usage
Client$get(endpoint_url)
Arguments
endpoint_url
The full API url to fetch data from
Returns
A dataframe of the requested data
Examples
client$get("https://hecate.hakai.org/api/aco/views/projects")
Method remove_credentials()
Remove your cached login credentials to logout of the client
Usage
Client$remove_credentials()
Examples
client$remove_credentials()
Method clone()
The objects of this class are cloneable with this method.
Usage
Client$clone(deep = FALSE)
Arguments
deep
Whether to make a deep clone.
Examples
# Initialize a new client
client <- Client$new()
# Follow authorization prompts to log in
# Retrieve some data. See <https://hakaiinstitute.github.io/hakai-api/> for options.
url <- paste0(client$api_root, "/aco/views/projects?project_year=2020&fields=project_name")
projects_2020 <- client$get(url)
print(projects_2020)
# # A tibble: 20 x 1
# project_name
# <chr>
# 1 Fountain FN
# 2 Haig Glacier
# 3 Fraser River - Chimney Creek West William Canyon
# 4 Cruickshank WS
# ...
## ------------------------------------------------
## Method `Client$new`
## ------------------------------------------------
client <- Client$new()
## ------------------------------------------------
## Method `Client$get`
## ------------------------------------------------
client$get("https://hecate.hakai.org/api/aco/views/projects")
## ------------------------------------------------
## Method `Client$remove_credentials`
## ------------------------------------------------
client$remove_credentials()
[Package hakaiApi version 1.0.2 Index]