utf8/R/yadirCurrencyRates.R

yadirCurrencyRates <- 
function(login = NULL, token = NULL){
  if(is.null(login)|is.null(token)) {
    warning("You must enter login and API token!")
    return()
  }
  queryBody <- "{
  \"method\": \"get\",
  \"params\": {
  \"DictionaryNames\": [ \"Currencies\" ]
}
}"

answer <- POST("https://api.direct.yandex.com/json/v5/dictionaries", body = queryBody, add_headers(Authorization = paste0("Bearer ",token), 'Accept-Language' = "ru","Client-Login" = login[1]))
#Обработка ответа
stop_for_status(answer)
dataRaw <- content(answer, "parsed", "application/json")

cur <- data.frame(curName = character(),
                  fullName = character(),
                  RateWithVAT = double(),
                  Rate = double(),
                  stringsAsFactors = FALSE)

for(i in 1:length(dataRaw$result$Currencies)){
  cur[i,1] <-  dataRaw$result$Currencies[[i]]$Currency[1]
  cur[i,2] <-  dataRaw$result$Currencies[[i]]$Properties[[2]]$Value
  cur[i,3] <-  as.numeric(dataRaw$result$Currencies[[i]]$Properties[[12]]$Value)
  cur[i,4] <-  as.numeric(dataRaw$result$Currencies[[i]]$Properties[[11]]$Value)
	}
return(cur)
}
alex-www-marketing/ryandexdirect_edit documentation built on May 4, 2019, 10:57 a.m.