A wrapper client class for calling Bitkub APIs (v3).
By npm
npm install bitkub-clientBy yarn
yarn add bitkub-client- Create the API key and secret from the Bitkub exchange.
- Create an
BitkubClientobject by putting them to the constructor.
import BitkubClient, { BitkubEnvironment } from "bitkub-client";
const client = new BitkubClient(
"[YOUR_API_KEY]",
"[YOUR_API_SECRET]",
BitkubEnvironment.PRODUCTION // Optional, default is BitkubEnvironment.TEST
);- Now, you can call the Bitkub API through these functions. Please see more details at bitkub-client document.
// Get server time
const serverTime = await client.getServerTime();
// Get current balances
const balances = await client.getBalances();
// Get market symbols
const symbols = await client.getSymbols();
// Place a bid (buy)
const placeBidResponse = await client.placeBid("BTC_THB", 1, 500000);- If you want to call other POST APIs which are not in the list above, you can use
buildRequestHeaders()to build your HTTP headers. It includesX-BTK-TIMESTAMPandX-BTK-SIGNto the headers. They're required fields for all secured APIs for version 3.
const uri = `/v3/market/cancel-order`;
const payload = { hash: "..." };
const requestHeaders = await client.buildRequestHeaders("POST", uri, payload);Note
This client uses Bitkub API version 3. You must generate a new API key on the Bitkub website if you are moving from version 1.x or 2.x.
Feel free to send the PR if you're interested. Thanks!
The project uses integration tests to ensure that the requests are correctly processed.
You can run them via:
yarn testTo write a new test, we suggest creating mock APIs using the nock library to avoid changing actual account data and ensure consistent test results. You can find examples in src/BitkubClient.test.ts.