#!/bin/bash #set -x . helpers.sh mkdir -p temp ErrorLogLevel=err #Handle additional commandline parameters if [[ $1 == -* ]]; then if [[ $1 == "-ErrorAsWarning" ]]; then ErrorLogLevel=warning shift fi fi symbol=$1 shift queryString="?symbol=${symbol}" while [[ $# -gt 0 ]]; do queryString="${queryString}&$1=$2" shift; shift done log "Querying for Symbol: _${symbol}_ query string: _${queryString}_" debug curl -s -X GET "https://api.schwabapi.com/marketdata/v1/chains${queryString}" \ -H "Authorization: Bearer $( temp/optionChain.${symbol}.tmp.$$.json jqQuery=".symbol" symbolCheck=$(jq -r ${jqQuery} < temp/optionChain.${symbol}.tmp.$$.json) if [[ "${symbol}" != "${symbolCheck}" ]]; then errMsg="ERROR: THE RESPONSE IS INCORRECT! Symbol: _${symbol}_ Check: _${symbolCheck}_ check file _temp/optionChain.${symbol}.tmp.$$.json_" if [[ "${ErrorLogLevel}" == "err" ]]; then throw "${errMsg}" ${ErrorLogLevel} 2 else log "${errMsg}" ${ErrorLogLevel} exit 2 fi else jq < temp/optionChain.${symbol}.tmp.$$.json rm temp/optionChain.${symbol}.tmp.$$.json fi