R/search.R

Defines functions fred_series_search

fred_series_search <-
  function(search_text, search_type = 'full_text',
           observation_start = NULL, observation_end = NULL,
           realtime_start = NULL, realtime_end = NULL) {

  if (is.character(search_text) == FALSE) {
    stop("search_text is always in characters")
  }

  if (is.null(realtime_start)  == TRUE) {
    realtime_start <- "1776-07-04"
  }

  if (is.null(realtime_end) == TRUE) {
    realtime_end <- "9999-12-31"
  }

  if (is.null(observation_start) == TRUE) {
    observation_start <- "1776-07-04"
  }

  if (is.null(observation_end) == TRUE) {
    observation_end <- "9999-12-31"
  }

  df_series <-
    try({
      df_series <-
        fromJSON(
          paste0("https://api.stlouisfed.org/fred/series/search?search_text=",
                 search_text,
                 "&realtime_start=",
                 realtime_start,
                 "&realtime_end=",
                 realtime_end,
                 "&output_type=2&observation_start=",
                 observation_start,
                 "&observation_end=",
                 observation_end,
                 "&api_key=ebee35f5fcd8a74392ca0a267d39b53d&file_type=json")
        )$seriess)

  if (class(df_series) == "try-error") {
    stop("Fail to fetch search results, please check if parameters are right?")
  }

  df_series
harrysun26/apifredr documentation built on Feb. 1, 2020, 2:20 p.m.