Tcl
Tcl
Simple REST Example
See more REST Examples
Demonstrates a very simple RESTful API call to get a stock time series daily (quotes) from Alpha Vantage.Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
set rest [new_CkRest]
# Connect to the REST server.
set bTls 1
set port 443
set bAutoReconnect 1
set success [CkRest_Connect $rest "www.alphavantage.co" $port $bTls $bAutoReconnect]
if {$success != 1} then {
puts [CkRest_lastErrorText $rest]
delete_CkRest $rest
exit
}
# Get a stock quote:
# Sending GET request to https://www.alphavantage.co/query?function=TIME_SERIES_DAILY&symbol=MSFT&apikey=my_api_key
set success [CkRest_AddQueryParam $rest "function" "TIME_SERIES_DAILY"]
set success [CkRest_AddQueryParam $rest "symbol" "AAPL"]
set success [CkRest_AddQueryParam $rest "apikey" "my_api_key"]
set responseJson [CkRest_fullRequestNoBody $rest "GET" "/query"]
if {[CkRest_get_LastMethodSuccess $rest] != 1} then {
puts [CkRest_lastErrorText $rest]
delete_CkRest $rest
exit
}
puts "$responseJson"
# Sample response:
# {
# "Meta Data": {
# "1. Information": "Daily Prices (open, high, low, close) and Volumes",
# "2. Symbol": "AAPL",
# "3. Last Refreshed": "2019-12-06",
# "4. Output Size": "Compact",
# "5. Time Zone": "US/Eastern"
# },
# "Time Series (Daily)": {
# "2019-12-06": {
# "1. open": "267.4800",
# "2. high": "271.0000",
# "3. low": "267.3000",
# "4. close": "270.7100",
# "5. volume": "25447644"
# },
# "2019-12-05": {
# "1. open": "263.7900",
# "2. high": "265.8900",
# "3. low": "262.7300",
# "4. close": "265.5800",
# "5. volume": "18661343"
# },
# "2019-12-04": {
# "1. open": "261.0700",
# "2. high": "263.3100",
# "3. low": "260.6800",
# "4. close": "261.7400",
# "5. volume": "16810388"
# },
# ...
# "2019-07-18": {
# "1. open": "204.0000",
# "2. high": "205.8800",
# "3. low": "203.7000",
# "4. close": "205.6600",
# "5. volume": "18582161"
# }
# }
# }
delete_CkRest $rest