Mỗi yêu cầu (request) được xác thực bằng các trường thông tin gửi cùng HTTP headers:
api-expires: Mốc thời gian hết hạn theo định dạng UNIX tính bằng giây. Điều này nhằm ngăn chặn các cuộc tấn công phát lại (prevent replay).
api-key: Khóa API công khai của bạn.
api-signature: Chữ ký của yêu cầu mà bạn đang thực hiện. Nó được tính toán dưới dạng HEX(HMAC_SHA256(API_SECRET, VERB + PATH + EXPIRES + DATA)). Vui lòng tham khảo ví dụ dưới đây
Ví dụ tạo chữ ký
apiKey = 'zukHJtjyIKUN22WhrkNSzf54CzsMtR4m'
apiSecret = 'bXKoe2Gr3nes99nMmpu44h7hCNQlZf6GAPJ3oAueRcRYWpdnhWKgVu64roeOO7Gh'
#Simple GET
#Get user wallet from /api/v4/user/wallet
verb = 'GET'
url = /api/v4/user/wallet
params = {
currency: 'ETH'
}
=> path = '/api/v4/user/wallet?currency=ETH'
expires = 1518064236 # Friday, December 27, 2019 4:39:51 AM
data = ''
signagure = HEX(HMAC_SHA256(apiSecret, verb + path + str(expires) + data))
signagure = HEX(HMAC_SHA256(apiSecret, 'GET/api/v4/user/wallet?currency=ETH1577421591'))
signagure = 'e24d08880b9d9b6c1f77fecc5977ed1a9ee1102ab0f34757e792057f1c78a3a5'
#Simple POST
#Create new Order from /api/v4/spot/order
verb = 'POST'
url = /api/v4/spot/order
params = {}
=> path = '/api/v4/spot/order'
expires = 1577421880 # Friday, December 27, 2019 4:44:40 AM
data = {
symbol: 'NACUSDT',
side: 'BUY',
type: 'LIMIT',
quantity: 1,
price: 1,
stop_price: 0
}
signagure = HEX(HMAC_SHA256(apiSecret, verb + path + str(expires) + data))
signagure = HEX(HMAC_SHA256(apiSecret, 'POST/api/v4/spot/order1577421880{"symbol":"NACUSDT","side":"BUY","type":"LIMIT","quantity":1,"price":1,"stop_price":0}'))
signagure = '986ac8fa1d263cd047aa7791be3f185fe892ce4dbfc9c8d09fc3a2f39715cddb'