question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Revised Issue Xena requires `apiKey`even with correct API keys ?

See original GitHub issue

**Hi @kroitor, I am using the latest version of CCXT to get private data from my Xena testnet account like BTC Balance etc. But getting below ccxt error

OS: Windows Programming Language version: Python 3.8 CCXT version: 1.42.52 (latest) Method: fetch_balance()

`import ccxt print(ccxt.exchanges) print(dir(ccxt.xena))

Xena_exchange = ccxt.xena({

'apiKey': 'XXXXXX',
'secret': 'XXXXXXXXXXX',
'enableRateLimit': True,
'options': {'defaultType': 'future'},
'timeout': 30000,

}) Xena_exchange.load_markets() Xena_exchange.set_sandbox_mode(True) Xena_exchange = ccxt.xena({‘verbose’: True}) balances = Xena_exchange.fetch_balance(params={“currency”: “BTC”}) print(balances) `

Error Message

Request: GET https://trading.xena.exchange/api/common/currencies {‘User-Agent’: ‘python-requests/2.23.0’, ‘Accept-Encoding’: ‘gzip, deflate’} None

Response: GET https://trading.xena.exchange/api/common/currencies 200 {‘Date’: ‘Thu, 04 Mar 2021 05:06:19 GMT’, ‘Content-Type’: ‘application/json; charset=utf-8’, ‘Transfer-Encoding’: ‘chunked’, ‘Connection’: ‘keep-alive’, ‘Set-Cookie’: ‘__cfduid=dc94d85a372ca7596121099b1903339de1614834379; expires=Sat, 03-Apr-21 05:06:19 GMT; path=/; domain=.xena.exchange; HttpOnly; SameSite=Lax; Secure’, ‘Cache-Control’: ‘public, max-age=300’, ‘Vary’: ‘Accept-Encoding’, ‘Strict-Transport-Security’: ‘max-age=15724800; includeSubDomains’, ‘CF-Cache-Status’: ‘HIT’, ‘Age’: ‘270’, ‘cf-request-id’: ‘089d3a423d000021e99d294000000001’, ‘Expect-CT’: ‘max-age=604800, report-uri=“https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct”’, ‘Server’: ‘cloudflare’, ‘CF-RAY’: ‘62a89316ba5e21e9-HKG’, ‘Content-Encoding’: ‘gzip’} {“BAB”:{“name”:“BAB”,“title”:“Bitcoin ABC”,“blockchain”:{“name”:“BAB”,“title”:“Bitcoin ABC”,“deposit”:{“confirmations”:6},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:false,“view”:{“uriTemplate”:“bitcoinabc:%s?message=Xena Exchange”,“recommendedFee”:“0.00001”,“transactionUrl”:“https://blockchair.com/bitcoin-cash/transaction/${txId}“,“walletUrl”:“https://blockchair.com/bitcoin-cash/address/${walletId}”}},“precision”:5,“withdraw”:{“minAmount”:“0.01”,“commission”:“0.001”},“view”:{“color”:”#DC7C08",“site”:“https://www.bitcoinabc.org”},“enabled”:false},“BCH”:{“name”:“BCH”,“title”:"Bitcoin Cash”,“blockchain”:{“name”:“BCH”,“title”:“Bitcoin Cash”,“deposit”:{“confirmations”:6},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:false,“view”:{“uriTemplate”:“bitcoincash:%s?message=Xena Exchange”,“recommendedFee”:“0.0002”,“transactionUrl”:“https://bitcoincash.blockexplorer.com/tx/${txId}“,“walletUrl”:“https://bitcoincash.blockexplorer.com/address/${walletId}”}},“precision”:5,“withdraw”:{“minAmount”:“0.01”,“commission”:“0.001”},“view”:{“color”:”#DC7C08",“site”:“https://www.bitcoincash.org”},“enabled”:false},“BSV”:{“name”:“BSV”,“title”:"Bitcoin SV”,“blockchain”:{“name”:“BSV”,“title”:“Bitcoin SV”,“deposit”:{“confirmations”:6},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:false,“view”:{“uriTemplate”:“bitcoinsv:%s?message=Xena Exchange”,“recommendedFee”:“0.00001”,“transactionUrl”:“https://blockchair.com/bitcoin-sv/transaction/${txId}“,“walletUrl”:“https://blockchair.com/bitcoin-sv/address/${walletId}”}},“precision”:5,“withdraw”:{“minAmount”:“0.01”,“commission”:“0.001”},“view”:{“color”:”#e2b100",“site”:“https://bitcoinsv.io/”},“enabled”:false},“BTC”:{“name”:“BTC”,“title”:“Bitcoin”,“blockchain”:{“name”:“BTC”,“title”:“Bitcoin”,“deposit”:{“confirmations”:6},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:true,“view”:{“uriTemplate”:“bitcoin:%s”,“recommendedFee”:“0.0004”,“transactionUrl”:“https://www.blockchain.com/btc/tx/${txId}”,“walletUrl”:“https://www.blockchain.com/btc/address/${walletId}”}},“precision”:8,“withdraw”:{“minAmount”:“0.001”,“commission”:“0.0005”},“view”:{“color”:“#F7931A”,“site”:“https://bitcoin.org”},“enabled”:true,“to”:{“ETH”:{“index”:“.ETHBTC_Spread”,“direct”:true,“markup”:“0”,“haircut”:“0.2”},“USD”:{“index”:“.BTC3_TWAP”,“direct”:true,“markup”:“0”,“haircut”:“0.1”},“USDT”:{“index”:“.BTC3_TWAP”,“direct”:true,“markup”:“0”,“haircut”:“0.15”}}},“ETC”:{“name”:“ETC”,“title”:"Ethereum Classic”,“blockchain”:{“name”:“ETC”,“title”:“Ethereum Classic”,“deposit”:{“confirmations”:300},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:true,“view”:{“uriTemplate”:“%s”,“recommendedFee”:“0.000000004”,“transactionUrl”:“http://gastracker.io/tx/${txId}“,“walletUrl”:“http://gastracker.io/addr/${walletId}”}},“precision”:4,“withdraw”:{“minAmount”:“0.1”,“commission”:“0.01”},“view”:{“color”:”#34FA99",“site”:“https://ethereumclassic.org”},“enabled”:false},“ETH”:{“name”:“ETH”,“title”:“Ethereum”,“blockchain”:{“name”:“ETH”,“title”:“Ethereum”,“deposit”:{“confirmations”:30},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:true,“view”:{“uriTemplate”:“ethereum:%s”,“recommendedFee”:“0.000000004”,“transactionUrl”:“https://etherscan.io/tx/${txId}”,“walletUrl”:“https://etherscan.io/address/${walletId}”}},“precision”:5,“withdraw”:{“minAmount”:“0.01”,“commission”:“0.005”},“view”:{“color”:“#343434”,“site”:“https://www.ethereum.org”},“enabled”:false,“to”:{“BTC”:{“index”:“.ETHBTC_Spread”,“direct”:true,“markup”:“0”,“haircut”:“0.2”}}},“GRAM”:{“name”:“GRAM”,“title”:“GRAM”,“blockchain”:{“name”:“GRAM”,“title”:“GRAM”,“deposit”:{“confirmations”:10},“withdraw”:{“confirmations”:3},“addressReuseAllowed”:true,“view”:{“uriTemplate”:“gram:%s”,“recommendedFee”:“10”,“transactionUrl”:“”,“walletUrl”:“”}},“precision”:0,“withdraw”:{“minAmount”:“1”,“commission”:“1”},“view”:{“color”:“”,“site”:“https://www.ethereum.org”},“enabled”:false},“LTC”:{“name”:“LTC”,“title”:“Litecoin”,“blockchain”:{“name”:“LTC”,“title”:“Litecoin”,“deposit”:{“confirmations”:6},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:false,“view”:{“uriTemplate”:"litecoin:%s?message=Xena Exchange”,“recommendedFee”:“0.002”,“transactionUrl”:“http://explorer.litecoin.net/tx/${txId}“,“walletUrl”:“http://explorer.litecoin.net/address/${walletId}”}},“precision”:4,“withdraw”:{“minAmount”:“0.1”,“commission”:“0.01”},“view”:{“color”:”#BEBEBE",“site”:“https://litecoin.org”},“enabled”:false},“USD”:{“name”:“USD”,“title”:“USD”,“blockchain”:{“name”:“USD”,“title”:“USD”,“deposit”:{“confirmations”:10},“withdraw”:{“confirmations”:3},“addressReuseAllowed”:true,“view”:{“uriTemplate”:“usd:%s”,“recommendedFee”:“10”,“transactionUrl”:“”,“walletUrl”:“”}},“precision”:2,“withdraw”:{“minAmount”:“1”,“commission”:“1”},“view”:{“color”:“”,“site”:“https://www.ethereum.org”},“enabled”:false,“to”:{“BTC”:{“index”:“.BTC3_TWAP”,“direct”:false,“markup”:“0”,“haircut”:“0.1”},“USDT”:{“index”:“.USDTUSD”,“direct”:false,“markup”:“0”,“haircut”:“0.1”}}},“USDT”:{“name”:“USDT”,“title”:“Tether”,“blockchain”:{“name”:“ETH”,“title”:“Ethereum”,“deposit”:{“confirmations”:30},“withdraw”:{“confirmations”:1},“addressReuseAllowed”:true,“view”:{“uriTemplate”:“ethereum:%s”,“recommendedFee”:“0.000000004”,“transactionUrl”:“https://etherscan.io/tx/${txId}”,“walletUrl”:“https://etherscan.io/address/${walletId}”}},“precision”:2,“withdraw”:{“minAmount”:“10”,“commission”:“5”},“view”:{“color”:“#92CFBC”,“site”:“https://tether.to”},“enabled”:false,“to”:{“BTC”:{“index”:“.BTC3_TWAP”,“direct”:false,“markup”:“0”,“haircut”:“0.15”},“USD”:{“index”:“.USDTUSD”,“direct”:true,“markup”:“0”,“haircut”:“0.1”}}},“XRP”:{“name”:“XRP”,“title”:“XRP”,“blockchain”:{“name”:“RIPPLE”,“title”:“Ripple”,“deposit”:{“confirmations”:10},“withdraw”:{“confirmations”:3},“addressReuseAllowed”:true,“view”:{“uriTemplate”:“ripple:%s”,“recommendedFee”:“12”,“transactionUrl”:“https://xrpcharts.ripple.com/#/transactions/${txId}”,“walletUrl”:“https://xrpcharts.ripple.com/#/graph/${walletId}”}},“precision”:6,“withdraw”:{“minAmount”:“1”,“commission”:“0.25”},“view”:{“color”:“#343434”,“site”:“https://ripple.com”},"enabled”:false}}

Request: GET https://trading.xena.exchange/api/common/instruments {‘User-Agent’: ‘python-requests/2.23.0’, ‘Accept-Encoding’: ‘gzip, deflate’} None

Response: GET https://trading.xena.exchange/api/common/instruments 200 {‘Date’: ‘Thu, 04 Mar 2021 05:06:19 GMT’, ‘Content-Type’: ‘application/json; charset=utf-8’, ‘Transfer-Encoding’: ‘chunked’, ‘Connection’: ‘keep-alive’, ‘Set-Cookie’: ‘__cfduid=dc94d85a372ca7596121099b1903339de1614834379; expires=Sat, 03-Apr-21 05:06:19 GMT; path=/; domain=.xena.exchange; HttpOnly; SameSite=Lax; Secure’, ‘Cache-Control’: ‘public, max-age=300’, ‘Vary’: ‘Accept-Encoding’, ‘Strict-Transport-Security’: ‘max-age=15724800; includeSubDomains’, ‘CF-Cache-Status’: ‘HIT’, ‘Age’: ‘269’, ‘cf-request-id’: ‘089d3a42e8000021e92e36e000000001’, ‘Expect-CT’: ‘max-age=604800, report-uri=“https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct”’, ‘Server’: ‘cloudflare’, ‘CF-RAY’: ‘62a89317ddd621e9-HKG’, ‘Content-Encoding’: ‘gzip’} [{“id”:“XBTUSD_3M_250621”,“type”:“Margin”,“marginType”:“XenaFuture”,“symbol”:“XBTUSD_3M_250621”,“baseCurrency”:“BTC”,“quoteCurrency”:“USD”,“settlCurrency”:“BTC”,“tickSize”:1,“minOrderQuantity”:“1”,“orderQtyStep”:“1”,“limitOrderMaxDistance”:“10”,“priceInputMask”:“00000.0”,“enabled”:true,“liquidationMaxDistance”:“0.01”,“contractValue”:“1”,“contractCurrency”:“USD”,“lotSize”:“1”,“maxOrderQty”:“500000”,“maxPosVolume”:“12000000”,“mark”:“.XBTUSD_3M_250621”,“underlying”:“.BTC3_TWAP”,“openInterest”:“.XBTUSD_3M_250621_OpenInterest”,“addUvmToFreeMargin”:“ProfitAndLoss”,“margin”:{“netting”:“PositionsAndOrders”,“rates”:[{“maxVolume”:“500000”,“initialRate”:“0.1”,“maintenanceRate”:“0.05”},{“maxVolume”:“1000000”,“initialRate”:“0.2”,“maintenanceRate”:“0.1”},{“maxVolume”:“1500000”,“initialRate”:“0.3”,“maintenanceRate”:“0.15”},{“maxVolume”:“2000000”,“initialRate”:“0.5”,“maintenanceRate”:“0.25”},{“maxVolume”:“2500000”,“initialRate”:“1”,“maintenanceRate”:“0.5”}],“rateMultipliers”:{“LimitBuy”:“1”,“LimitSell”:“1”,“Long”:“1”,“MarketBuy”:“1”,“MarketSell”:“1”,“Short”:“1”,“StopBuy”:“0”,“StopSell”:“0”}},“clearing”:{“enabled”:true,“index”:“.XBTUSD_3M_250621”},“riskAdjustment”:{“enabled”:true,“index”:“.RiskAdjustment_IR”},“expiration”:{“enabled”:true,“index”:“.BTC3_TWAP”},“pricePrecision”:2,“priceRange”:{“enabled”:true,“distance”:“0.2”,“movingBoundary”:“0”,“lowIndex”:“.XBTUSD_3M_250621_LOWRANGE”,“highIndex”:“.XBTUSD_3M_250621_HIGHRANGE”},“priceLimits”:{“enabled”:true,“distance”:“0.5”,“movingBoundary”:“0”,“lowIndex”:“.XBTUSD_3M_250621_LOWLIMIT”,“highIndex”:“.XBTUSD_3M_250621_HIGHLIMIT”},“inverse”:true,“serie”:“XBTUSD”,“tradingStartDate”:“2020-12-25 07:00:00”,“expiryDate”:“2021-06-25 08:00:00”},{“id”:“XBTUSD_3M_260321”,“type”:“Margin”,“marginType”:“XenaFuture”,“symbol”:“XBTUSD_3M_260321”,“baseCurrency”:“BTC”,“quoteCurrency”:“USD”,“settlCurrency”:“BTC”,“tickSize”:1,“minOrderQuantity”:“1”,“orderQtyStep”:“1”,“limitOrderMaxDistance”:“10”,“priceInputMask”:“00000.0”,“enabled”:true,“liquidationMaxDistance”:“0.01”,“contractValue”:“1”,“contractCurrency”:“USD”,“lotSize”:“1”,“maxOrderQty”:“500000”,“maxPosVolume”:“12000000”,“mark”:“.XBTUSD_3M_260321”,“underlying”:“.BTC3_TWAP”,“openInterest”:“.XBTUSD_3M_260321_OpenInterest”,“addUvmToFreeMargin”:“ProfitAndLoss”,“margin”:{“netting”:“PositionsAndOrders”,“rates”:[{“maxVolume”:“500000”,“initialRate”:“0.1”,“maintenanceRate”:“0.05”},{“maxVolume”:“1000000”,“initialRate”:“0.2”,“maintenanceRate”:“0.1”},{“maxVolume”:“1500000”,“initialRate”:“0.3”,“maintenanceRate”:“0.15”},{“maxVolume”:“2000000”,“initialRate”:“0.5”,“maintenanceRate”:“0.25”},{“maxVolume”:“2500000”,“initialRate”:“1”,“maintenanceRate”:“0.5”}],“rateMultipliers”:{“LimitBuy”:“1”,“LimitSell”:“1”,“Long”:“1”,“MarketBuy”:“1”,“MarketSell”:“1”,“Short”:“1”,“StopBuy”:“0”,“StopSell”:“0”}},“clearing”:{“enabled”:true,“index”:“.XBTUSD_3M_260321”},“riskAdjustment”:{“enabled”:true,“index”:“.RiskAdjustment_IR”},“expiration”:{“enabled”:true,“index”:“.BTC3_TWAP”},“pricePrecision”:2,“priceRange”:{“enabled”:true,“distance”:“0.2”,“movingBoundary”:“0”,“lowIndex”:“.XBTUSD_3M_260321_LOWRANGE”,“highIndex”:“.XBTUSD_3M_260321_HIGHRANGE”},“priceLimits”:{“enabled”:true,“distance”:“0.5”,“movingBoundary”:“0”,“lowIndex”:“.XBTUSD_3M_260321_LOWLIMIT”,“highIndex”:“.XBTUSD_3M_260321_HIGHLIMIT”},“inverse”:true,“serie”:“XBTUSD”,“tradingStartDate”:“2020-09-25 07:00:00”,“expiryDate”:“2021-03-26 08:00:00”},{“id”:“XBTVAR_1M_260321”,“type”:“Margin”,“marginType”:“XenaFuture”,“symbol”:“XBTVAR_1M_260321”,“settlCurrency”:“BTC”,“tickSize”:1,“minOrderQuantity”:“1”,“orderQtyStep”:“1”,“limitOrderMaxDistance”:“10”,“priceInputMask”:“000.0”,“enabled”:true,“liquidationMaxDistance”:“0.01”,“contractValue”:“1”,“contractCurrency”:“BTC”,“lotSize”:“1”,“tickValue”:“0.00000001”,“maxOrderQty”:“1000”,“maxPosVolume”:“10000”,“mark”:“.XBTVAR_1M_260321”,“underlying”:“.XBTVAR_1M_260321_RV”,“openInterest”:“.XBTVAR_1M_260321_OpenInterest”,“addUvmToFreeMargin”:“ProfitAndLoss”,“margin”:{“netting”:“PositionsAndOrders”,“rates”:[{“maxVolume”:“10000”,“initialRate”:“0.3”,“maintenanceRate”:“0.25”}],“rateMultipliers”:{“LimitBuy”:“0.4”,“LimitSell”:“1”,“Long”:“0.4”,“MarketBuy”:“0.4”,“MarketSell”:“1”,“Short”:“1”,“StopBuy”:“0”,“StopSell”:“0”}},“clearing”:{“enabled”:true,“index”:“.XBTVAR_1M_260321”},“riskAdjustment”:{“enabled”:true,“index”:“.RiskAdjustment_IR”},“expiration”:{“enabled”:true,“index”:“.XBTVAR_1M_260321”},“pricePrecision”:1,“priceRange”:{“enabled”:true,“distance”:“0.4”,“movingBoundary”:“0”,“lowIndex”:“.XBTVAR_1M_260321_LOWRANGE”,“highIndex”:“.XBTVAR_1M_260321_HIGHRANGE”},“priceLimits”:{“enabled”:true,“distance”:“0.4”,“movingBoundary”:“0”,“lowIndex”:“.XBTVAR_1M_260321_LOWLIMIT”,“highIndex”:“.XBTVAR_1M_260321_HIGHLIMIT”},“serie”:“XBTVAR”,“tradingStartDate”:“2021-02-26 07:00:00”,“expiryDate”:“2021-03-26 08:00:00”,“meta”:{“underlyingFixing”:“.XBTVAR_1M_260321_RV_Fixing”}},{“id”:“1000”,“type”:“Margin”,“marginType”:“XenaListedPerpetual”,“symbol”:“XBTUSD”,“baseCurrency”:“BTC”,“quoteCurrency”:“USD”,“settlCurrency”:“BTC”,“tickSize”:1,“minOrderQuantity”:“1”,“orderQtyStep”:“1”,“limitOrderMaxDistance”:“10”,“priceInputMask”:“00000.0”,“enabled”:true,“liquidationMaxDistance”:“0.01”,“contractValue”:“1”,“contractCurrency”:“USD”,“lotSize”:“1”,“maxOrderQty”:“500000”,“maxPosVolume”:“10000000”,“mark”:“.BTC3_TWAP”,“underlying”:“.BTC3_TWAP”,“openInterest”:“.XBTUSD_OpenInterest”,“floatingPL”:“BidAsk”,“addUvmToFreeMargin”:“ProfitAndLoss”,“margin”:{“netting”:“PositionsAndOrders”,“rates”:[{“maxVolume”:“500000”,“initialRate”:“0.05”,“maintenanceRate”:“0.025”},{“maxVolume”:“1000000”,“initialRate”:“0.1”,“maintenanceRate”:“0.05”},{“maxVolume”:“1500000”,“initialRate”:“0.2”,“maintenanceRate”:“0.1”},{“maxVolume”:“2000000”,“initialRate”:“0.3”,“maintenanceRate”:“0.15”},{“maxVolume”:“3000000”,“initialRate”:“0.4”,“maintenanceRate”:“0.2”},{“maxVolume”:“4000000”,“initialRate”:“0.5”,“maintenanceRate”:“0.25”},{“maxVolume”:“5000000”,“initialRate”:“1”,“maintenanceRate”:“0.5”}],“rateMultipliers”:{“LimitBuy”:“1”,“LimitSell”:“1”,“Long”:“1”,“MarketBuy”:“1”,“MarketSell”:“1”,“Short”:“1”,“StopBuy”:“0”,“StopSell”:“0”}},“clearing”:{“enabled”:true,“index”:“.BTC3_TWAP”},“premium”:{“enabled”:true,“index”:“.XBTUSD_Premium_IR_Corrected”},“riskAdjustment”:{“enabled”:true,“index”:“.RiskAdjustment_IR”},“pricePrecision”:2,“priceRange”:{“enabled”:true,“distance”:“0.1”,“movingBoundary”:“0”,“lowIndex”:“.XBTUSD_LOWRANGE”,“highIndex”:“.XBTUSD_HIGHRANGE”},“priceLimits”:{“enabled”:true,“distance”:“0.1”,“movingBoundary”:“0”,“lowIndex”:“.XBTUSD_LOWLIMIT”,“highIndex”:“.XBTUSD_HIGHLIMIT”},“inverse”:true,“tradingStartDate”:“0001-01-01 00:00:00”},{“id”:“3000”,“type”:“Margin”,“marginType”:“XenaListedPerpetual”,“symbol”:“ETHUSD”,“baseCurrency”:“ETH”,“quoteCurrency”:“USD”,“settlCurrency”:“BTC”,“tickSize”:2,“minOrderQuantity”:“1”,“orderQtyStep”:“1”,“limitOrderMaxDistance”:“10”,“priceInputMask”:“0000.00”,“enabled”:true,“liquidationMaxDistance”:“0.01”,“contractValue”:“1”,“contractCurrency”:“BTC”,“lotSize”:“1”,“tickValue”:“0.00000001”,“maxOrderQty”:“175000”,“maxPosVolume”:“1750000”,“mark”:“.ETHUSD_TWAP”,“underlying”:“.ETHUSD_TWAP”,“openInterest”:“.ETHUSD_OpenInterest”,“floatingPL”:“BidAsk”,“addUvmToFreeMargin”:“ProfitAndLoss”,“margin”:{“netting”:“PositionsAndOrders”,“rates”:[{“maxVolume”:“350000”,“initialRate”:“0.05”,“maintenanceRate”:“0.025”},{“maxVolume”:“700000”,“initialRate”:“0.1”,“maintenanceRate”:“0.05”},{“maxVolume”:“1050000”,“initialRate”:“0.2”,“maintenanceRate”:“0.1”},{“maxVolume”:“1400000”,“initialRate”:“0.3”,“maintenanceRate”:“0.15”},{“maxVolume”:“1750000”,“initialRate”:“0.4”,“maintenanceRate”:“0.2”},{“maxVolume”:“2100000”,“initialRate”:“0.5”,“maintenanceRate”:“0.25”},{“maxVolume”:“2450000”,“initialRate”:“1”,“maintenanceRate”:“0.5”}],“rateMultipliers”:{“LimitBuy”:“1”,“LimitSell”:“1”,“Long”:“1”,“MarketBuy”:“1”,“MarketSell”:“1”,“Short”:“1”,“StopBuy”:“0”,“StopSell”:“0”}},“clearing”:{“enabled”:true,“index”:“.ETHUSD_TWAP”},“premium”:{“enabled”:true,“index”:“.ETHUSD_Premium_IR_Corrected”},“riskAdjustment”:{“enabled”:true,“index”:“.RiskAdjustment_IR”},“pricePrecision”:3,“priceRange”:{“enabled”:true,“distance”:“0.03”,“movingBoundary”:“0”,“lowIndex”:“.ETHUSD_LOWRANGE”,“highIndex”:“.ETHUSD_HIGHRANGE”},“priceLimits”:{“enabled”:true,“distance”:“0.03”,“movingBoundary”:“0”,“lowIndex”:“.ETHUSD_LOWLIMIT”,“highIndex”:“.ETHUSD_HIGHLIMIT”},“tradingStartDate”:“0001-01-01 00:00:00”},{“type”:“Index”,“symbol”:“.BTC3”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC3_CUMULATIVE_VARIATION”,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC3_Fixing”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC3_REALIZED_VOL_30D”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC3_REALIZED_VOL_30D_Fixing”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC3_RI_SQUARED”,“tickSize”:10,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC3_TWAP”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTCEUR_KRAKEN_1”,“enabled”:true},{“type”:“Index”,“symbol”:“.BTCEUR_KRAKEN_10”,“enabled”:true},{“type”:“Index”,“symbol”:“.BTCUSDT”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTCUSDT_Fixing”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTCUSDT_HUOBI”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTCUSDT_KRAKEN”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC_BITSTAMP”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC_COINBASE”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.BTC_KRAKEN”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHBTC_Spread”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_Asks”,“tickSize”:3,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.ETHUSD_BITSTAMP”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_Bids”,“tickSize”:3,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.ETHUSD_COINBASE”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_HIGHLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_HIGHRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_KRAKEN”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_LOWLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_LOWRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_MidPrice”,“tickSize”:3,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.ETHUSD_OpenInterest”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.ETHUSD_Premium_IR”,“tickSize”:6,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.ETHUSD_Premium_IR_Corrected”,“tickSize”:6,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.ETHUSD_TWAP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.OpenInterest”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.RiskAdjustment_IR”,“tickSize”:6,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.USDTUSD”,“tickSize”:4,“enabled”:true},{“type”:“Index”,“symbol”:“.USDTUSD_Fixing”,“tickSize”:4,“enabled”:true},{“type”:“Index”,“symbol”:“.USDTUSD_KRAKEN”,“tickSize”:4,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_FP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_HIGHLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_HIGHRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_IFR”,“tickSize”:6,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_LOWLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_LOWRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_MID”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_MID_TWAP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_OpenInterest”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_250621_VWAP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_FP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_HIGHLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_HIGHRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_IFR”,“tickSize”:6,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_LOWLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_LOWRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_MID”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_MID_TWAP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_OpenInterest”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_3M_260321_VWAP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_Asks”,“tickSize”:4,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.XBTUSD_Bids”,“tickSize”:4,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.XBTUSD_HIGHLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_HIGHRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_LOWLIMIT”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_LOWRANGE”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_MidPrice”,“tickSize”:4,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.XBTUSD_OpenInterest”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTUSD_Premium_IR”,“tickSize”:6,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.XBTUSD_Premium_IR_Corrected”,“tickSize”:6,“enabled”:true,“basis”:365},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_FP”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_HIGHLIMIT”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_HIGHRANGE”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_IFR”,“tickSize”:6,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_IV”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_LOWLIMIT”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_LOWRANGE”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_MID”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_MID_TWAP”,“tickSize”:2,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_OpenInterest”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_PR_Base”,“tickSize”:3,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_RV”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_RV_Fixing”,“tickSize”:1,“enabled”:true},{“type”:“Index”,“symbol”:“.XBTVAR_1M_260321_VWAP”,“tickSize”:1,“enabled”:true}] Traceback (most recent call last): File “C:/Users/Asad/Downloads/ArbitrageBotAsad-20200810T074852Z-001 - Copyee/ArbitrageBotAsad/ArbitrageBotAsad/Xena_Test_API.py”, line 19, in <module> balances = Xena_exchange.fetch_balance(params={“currency”: “BTC”}) File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\xena.py”, line 574, in fetch_balance self.load_accounts() File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\base\exchange.py”, line 1368, in load_accounts self.accounts = self.fetch_accounts(params) File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\xena.py”, line 520, in fetch_accounts response = self.privateGetTradingAccounts(params) File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\base\exchange.py”, line 466, in inner return entry(_self, **inner_kwargs) File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\base\exchange.py”, line 491, in request return self.fetch2(path, api, method, params, headers, body) File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\base\exchange.py”, line 486, in fetch2 request = self.sign(path, api, method, params, headers, body) File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\xena.py”, line 1581, in sign self.check_required_credentials() File “C:\Users\Asad\AppData\Local\Programs\Python\Python36-32\lib\site-packages\ccxt\base\exchange.py”, line 1251, in check_required_credentials raise AuthenticationError(‘requires ' + key + '’) ccxt.base.errors.AuthenticationError: requires apiKey

Process finished with exit code 1

I have put API and secret keys correctly. But getting below ccxt error ccxt.base.errors.AuthenticationError: requires apiKey image

Please guide me … thanks!

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Comments:23 (11 by maintainers)

github_iconTop GitHub Comments

2reactions
AsadullahSoomrocommented, Mar 4, 2021

Alright Sir, Thanks a lot

1reaction
kroitorcommented, Mar 4, 2021

@AsadullahSoomro let me know if the above does not help.

Read more comments on GitHub >

github_iconTop Results From Across the Web

API Key Generation and Permissions - Kenna FAQ
To manage API keys, log in to Kenna and click on the gear icon in the upper right corner of the Kenna screen....
Read more >
The Xena API - EG Xena Developer
Xena's REST based API is documented with Swagger and can be browsed under our API ... Apikeys or OAuth? ... Complex implementation compared...
Read more >
Secure an API by requiring API keys | Apigee X - Google Cloud
Go to the Apigee UI and sign in. · Select your organization using the drop-down menu in the upper left corner of the...
Read more >
Secure an API by requiring API keys | Apigee Edge
Create an API proxy that requires an API key. Add an API product. Add a developer and register an app. Call your API...
Read more >
On API Keys Best Practices - The Mergify Blog
Authenticating an API user boils down to two basic needs: finding out who the user is;; making sure the user is who they...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found