diff --git a/DESCRIPTION b/DESCRIPTION index c2c1065..e05ff67 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: noAPI Title: R Client For Public Norwegian APIs -Version: 0.1.1 +Version: 0.1.2 Authors@R: c( person("Ove Haugland", "Jakobsen", role = c("aut", "cre"), email = "ohj@riksrevisjonen.no"), person("Aleksander", "Eilertsen", role = "aut", email = "ale@riksrevisjonen.no"), @@ -13,7 +13,7 @@ License: MIT + file LICENSE Language: en-GB LazyData: true Roxygen: list(markdown = TRUE) -RoxygenNote: 7.3.2 +RoxygenNote: 7.3.3 URL: https://github.com/Riksrevisjonen/noAPI, https://riksrevisjonen.github.io/noAPI/ BugReports: https://github.com/Riksrevisjonen/noAPI/issues Suggests: diff --git a/R/norges-bank-utils.R b/R/norges-bank-utils.R index 8478c85..a181bca 100644 --- a/R/norges-bank-utils.R +++ b/R/norges-bank-utils.R @@ -1,23 +1,29 @@ #' request_sdmx_latest #' @noRd request_sdmx_latest <- function(currency, frequency, n_obs) { - api_path <- sprintf( - 'data/EXR/%s.%s.NOK.SP?format=sdmx-json&lastNObservations=%s&locale=en', - frequency, currency, n_obs - ) - req <- request(nbank_url) |> req_url_path_append(api_path) + api_path <- sprintf("data/EXR/%s.%s.NOK.SP", frequency, currency) + req <- request(nbank_url) |> + req_url_path_append(api_path) |> + req_url_query( + "format" = "sdmx-json", + "lastNObservations" = as.integer(n_obs), + "locale" = "en" + ) send_query(req) } #' request_sdmx #' @noRd request_sdmx <- function(currency, frequency, start, end) { - api_path <- sprintf( - 'data/EXR/%s.%s.NOK.SP?format=sdmx-json&startPeriod=%s&endPeriod=%s&locale=en', - frequency, currency, start, end - ) + api_path <- sprintf("data/EXR/%s.%s.NOK.SP", frequency, currency) req <- request(nbank_url) |> - req_url_path_append(api_path) + req_url_path_append(api_path) |> + req_url_query( + "format" = "sdmx-json", + "startPeriod" = start, + "endPeriod" = end, + "locale" = "en" + ) send_query(req) } @@ -40,8 +46,8 @@ parse_sdmx_single <- function(index, series, currency, frequency, str) { decimals = as.integer(rep(attrs[[1]]$values[[attr_idx[1]]]$id, length(values))), calculated = rep(attrs[[2]]$values[[attr_idx[2]]]$id, length(values)), unit_multiplier = rep(attrs[[3]]$values[[attr_idx[3]]]$name, length(values)), - date_from = as.Date(dates_from, format = '%Y-%m-%dT%H:%M:%S'), - date_to = as.Date(dates_to, format = '%Y-%m-%dT%H:%M:%S'), + date_from = as.Date(dates_from, format = "%Y-%m-%dT%H:%M:%S"), + date_to = as.Date(dates_to, format = "%Y-%m-%dT%H:%M:%S"), date = dates ) df