Thank you very much.
Yes, the code I tried and did something when there were mistakes. Now it seems to have received a response from the server, but not the kind who waited
import urllib
from urllib.request import urlopen
import json
import time
import hmac,hashlib
import random
import base64
class cryptopia:
def __init__(self, key='', secret='', url='https://www.cryptopia.co.nz/api/'):
self.apikey = key
self.apisecret = secret
self.apisite = url
self.api_params = {}
return
def public_api(self, meth):
return json.loads(urlopen(urlopen(self.apisite + meth)).read())
def private_api(self, method, values={}, req={}):
time.sleep(1)
if method in self.private:
url = "https://www.cryptopia.co.nz/Api/" + method
nonce = str(int(time.time()))
requestContentBase64String = base64.b64encode(hashlib.md5(json.dumps(values)).digest())
signature = self.key + "POST" + urllib.quote_plus(url).lower() + nonce + requestContentBase64String
hmacsignature = base64.b64encode(hmac.new(base64.b64decode(self.secret), signature, hashlib.sha256).digest())
header_value = "amx " + self.key + ":" + hmacsignature + ":" + nonce
headers = { 'Authorization': header_value }
r = requests.post(url, json = values, headers=headers)
elif method in self.public:
url = 'https://www.cryptopia.co.nz/api/' + method
r = requests.get(url, params=values)
else:
return 'Call Not Identified - Something Went Wrong.'
response = r.content
print ("( Response ): " + response)
return response.replace("false","False").replace("true","True").replace('":null','":None' )
def getCurrencies(self):
return self.public_api('GetCurrencies')
def getTradePairs(self):
return self.public_api('GetTradePairs')
def getBalances(self):
return self.private_api('GetBalance')
API_KEY = 'ac85417173...abdf98138e...02'
API_SECRET = 'KY9R6bgPfQeDr2kV...rwm4aoGk0EvQwU...eduafbsk'
my_api = cryptopia(API_KEY, API_SECRET)
# test public api call
#print (my_api.getMarketOrders)
# test private api call
print (my_api.getBalances)
response
<bound method cryptopia.getBalances of <__main__.cryptopia object at 0x0205E0B0>>
>>>