Ruby
Ruby
Finnhub API - Get Stock Quote
See more AI Examples
Demonstrates how to get a stock quote from the Finnhub API.Chilkat Ruby Downloads
require 'chilkat'
success = false
# Replace with your actual Finnhub API key.
apiKey = "YOUR_FINNHUB_API_KEY"
symbol = "AAPL"
http = Chilkat::CkHttp.new()
# This is the URL without params.
urlWithoutParams = "https://finnhub.io/api/v1/quote"
req = Chilkat::CkHttpRequest.new()
# Add params that will be sent in the URL.
req.AddParam("symbol",symbol)
req.AddParam("token",apiKey)
req.put_HttpVerb("GET")
# Send the request to get the JSON response.
resp = Chilkat::CkHttpResponse.new()
success = http.HttpReq(urlWithoutParams,req,resp)
if (success == false)
print http.lastErrorText() + "\n";
exit
end
json = Chilkat::CkJsonObject.new()
resp.GetBodyJson(json)
statusCode = resp.get_StatusCode()
print "response status code: " + statusCode.to_s() + "\n";
json.put_EmitCompact(false)
print json.emit() + "\n";
# Sample result:
# {
# "c": 248.8,
# "d": -4.09,
# "dp": -1.6173,
# "h": 255.493,
# "l": 248.07,
# "o": 253.9,
# "pc": 252.89,
# "t": 1774641600
# }
if (statusCode == 200)
# Add the symbol to the top of the result.
json.AddStringAt(0,"symbol",symbol)
# Rename members for clarification.
json.Rename("c","currentPrice")
json.Rename("d","change")
json.Rename("dp","percentChange")
json.Rename("h","high")
json.Rename("l","low")
json.Rename("o","open")
json.Rename("pc","prevClose")
json.Rename("t","unixTime")
print json.emit() + "\n";
else
print "Failed" + "\n";
end