Authentication
const crypto = require('crypto')
const request = require('request-promise')
const makeRequest = (
apiKey,
apiSecret,
passphrase,
host,
route,
method,
body
) => {
// CREATE SIGNATURE
const timestamp = Math.round(Date.now() / 1000)
const payload = timestamp + method + route + JSON.stringify(body)
const decodedSecret = Buffer.from(apiSecret, 'base64')
const hmac = crypto.createHmac('sha256', decodedSecret)
// Don't forget to base 64 encode your digest
const signedPayload = hmac.update(payload).digest('base64')
// SET HEADERS
const headers = {
'X-NDAX-API-KEY': apiKey,
'X-NDAX-SIGNED': signedPayload,
'X-NDAX-TIMESTAMP': timestamp,
'X-NDAX-PASSPHRASE': passphrase
}
const derivedMethod = {
POST: 'post',
PUT: 'put',
GET: 'get'
}[method]
const options = {
headers,
body,
json: true
}
return request[derivedMethod](`https://${host}${route}`, options)
}Header
Description
Last updated