NAV Navbar
Request API Key

Introduction

Welcome to the NovaDAX API

NovaDAX provides a series of API documents aiming to deliver a faster, more secure and professional trading experience to customers. You can use our API to access all market data, trading, order history and account management endpoints.

NovaDAX API endpoints can be accessed by customers in an easy and practical way and we are optimizing our SDK continuously.

Before You Start

Create An Account on NovaDAX

If you haven't signed up on NovaDAX, please click here to create an account to start your exclusive trading experience on NovaDAX.

Create An API key

Before being able to sign any requests, you should first acquire an API AccessKey and the corresponding SecretKey. After login on NovaDAX, you can find the user icon at the top menu bar and click on "API Key and Sub Account" to create you API Key.

API Access

NovaDAX API endpoints are divided into public endpoints and private endpoints.

Public endpoints

Public endpoints don't require authentication for: * Basic information * Market data

PRIVATE endpoints

Private endpoint can only be accessed with authentication for: * Orders * Account * Wallet

Access URLs

https://api.novadax.com

Endpoint Rate Limits

Signature

To protect API communication from unauthorized changes, all private endpoints calls are required to be signed with your API AccessKey.

A valid request should follow the rules below:

Steps to sign a GET request

1. Query string is

queryStr = "name=joao&cpf=123456&birthday=2017-08-01"

2. Encode the query string and sort parameter name following ASCII order.

sort(urlencode(queryStr)) // birthday=2017-08-01&cpf=123456&name=joao

3. Generate the "Query String" as format {Request Method}\n{Request URL}\n{Sorted Query Parameters}\n{TimeStamp}

signStr = GET\n/v1/orders/get\nbirthday=2017-08-01&cpf=123456&name=joao\n1564988445199

4. Use the string generated in step 3 and your "SecretKey" to create a signature

sign = hmac_sha256(signStr,SecretKey)

5. Add Accesskey, Signature and TimeStamp to the header of quest

request.header.add("X-Nova-Access-Key",AccessKey)

request.header.add("X-Nova-Signature",Sign)

request.header.add("X-Nova-Timestamp",TimeStamp)

6. Example of authentication GET in Java

Tux, the Linux mascot

Steps to sign a POST request

1. The request body is

body = {"name":"joao","cpf":"123456","birthday":"2017-08-01"} // MD5 value is 7d8f374d786079cfade9d1c2a358137c

2. Generate the MD5 hashed "Request body" as format "{Request Method}\n{Request URL}\n{MD5 Request Body}\n{TimeStamp}"

signStr = POST\n/v1/order/create\n7d8f374d786079cfade9d1c2a358137c\n1564988445199

3. Use "Request String" generated in step 2 and your "SecretKey" to create a signature

sign = hmac_sha256(signStr,SecretKey)

4. Add Accesskey, Signature and TimeStamp to the header of quest

request.header.add("X-Nova-Access-Key",AccessKey)

request.header.add("X-Nova-Signature",Sign)

request.header.add("X-Nova-Timestamp",TimeStamp)

5. Example of authentication POST in Java

Tux, the Linux mascot

Sub Account

If you need to perform order-related operations using a sub-account, please add the 'X-Nova-Account-Id' request header to your request and set its value to the corresponding sub-account ID.

request.header.add("X-Nova-Account-Id", "CA1234567890")

Response Format

All response will be returned in JSON format. The top level JSON is a wrapper object which provides three meta data in "code", "data" and "message". The actual per API response is in "data" field.

Response to successful request

{
    "code": "A10000",
    "data": {...},
    "message": "Success"
}

Response to failed request

{
    "code": "A99999",
    "data": {...},
    "message": "fail."
}

Response Format:

Field Data Type Description
code string The status returned by API endpoint
message string The simplified response
data object The data content if available

Response Code Details

Code HTTP Status Code Message Description
A99999 500 Failed Internal error
A10000 200 Success Successful request
A10001 400 Params error Parameter is invalid
A10002 404 Api not found API used is irrelevant
A10003 403 Authentication failed Authentication is failed
A10004 429 Too many requests Too many requests are made
A10005 403 Kyc required Need to complete KYC firstly
A10006 403 Customer canceled Account is canceled
A10007 400 Account not exist Sub account does not exist
A10011 400 Symbol not exist Trading symbol does not exist
A10012 400 Symbol not trading Trading symbol is temporarily not available
A10013 503 Symbol maintain Trading symbol is in maintain
A30001 400 Order not found Queried order is not found
A30002 400 Order amount is too small Order amount is too small
A30003 400 Order amount is invalid Order amount is invalid
A30004 400 Order value is too small Order value is too small
A30005 400 Order value is invalid Order value is invalid
A30006 400 Order price is invalid Order price is invalid
A30007 400 Insufficient balance The balance is insufficient
A30008 400 Order was closed The order has been executed
A30009 400 Order canceled The order has been cancelled
A30010 400 Order cancelling The order is being cancelled
A30011 400 Order price too high The order price is too high
A30012 400 Order price too low The order price is too low

FAQ

Failure in authentication

Changelog

2023-11-15

2023-09-12

2021-01-30

2020-12-17

2020-11-11

2020-10-12

2020-05-20

2020-03-05

2019-12-05

2019-09-18

Basic Information

Get One Supported Trading Symbol

This endpoint returns one NovaDAX's supported trading symbol

Response Body

{
    "code": "A10000",
    "data": {
        "symbol": "BTC_BRL",
        "baseCurrency": "BTC",
        "quoteCurrency": "BRL",
        "amountPrecision": 4,
        "pricePrecision": 2,
        "valuePrecision": 4,
        "minOrderAmount": "0.001",
        "minOrderValue": "5"
    },
    "message": "Success"
}

Request URL

GET /v1/common/symbol

Weight: 1

Request Parameter

Field Mandatory Data Type Description
symbol true string Trading symbol

Response Details

Field Data Type Description
symbol string Trading symbol
baseCurrency string Base currency in a trading symbol
quoteCurrency string Quote currency in a trading symbol
pricePrecision number Price precision
amountPrecision number Amount precision
valuePrecision number Value precision
minOrderAmount string Minimum order amount
minOrderValue string Minimum order value

Get All Supported Trading Symbol

This endpoint returns all NovaDAX's supported trading symbols

Response Body

{
    "code": "A10000",
    "data": [
        {
            "symbol": "BTC_BRL",
            "baseCurrency": "BTC",
            "quoteCurrency": "BRL",
            "amountPrecision": 4,
            "pricePrecision": 2,
            "valuePrecision": 4,
            "minOrderAmount": "0.001",
            "minOrderValue": "5",
        },
        {
            "symbol": "ETH_BRL",
            "baseCurrency": "ETH",
            "quoteCurrency": "BRL",
            "amountPrecision": 4,
            "pricePrecision": 2,
            "valuePrecision": 4,
            "minOrderAmount": "0.01",
            "minOrderValue": "5"
        }
    ],
    "message": "Success"
}

Request URL

GET /v1/common/symbols

Weight: 1

Request Parameters

No parameter is needed for this endpoint.

Response Details

Field Data Type Description
symbol string Trading symbol
baseCurrency string Base currency in a trading symbol
quoteCurrency string Quote currency in a trading symbol
pricePrecision number Price precision
amountPrecision number Amount precision
valuePrecision number Value precision
minOrderAmount string Minimum order amount
minOrderValue string Minimum order value

Get Current System Time

This endpoint returns the current system time in milliseconds adjusted to UTC time zone.

Response Body

{
    "code": "A10000",
    "data": 1565080348983,
    "message": "Success"
}

Request URL

GET /v1/common/timestamp

Weight: 1

Request Parameters

No parameter is needed for this endpoint.

Response Details

System time milliseconds adjusted to UTC time zone.

Market Data

Get Latest Tickers for All Trading Pairs

This endpoint returns the latest ticker for all supported trading pairs with important 24h aggregated market data.

Response Body

{
    "code": "A10000",
    "data": [
        {
            "ask": "34708.15",
            "baseVolume24h": "34.08241488",
            "bid": "34621.74",
            "high24h": "35079.77",
            "lastPrice": "34669.81",
            "low24h": "34330.64",
            "open24h": "34492.08",
            "quoteVolume24h": "1182480.09502814",
            "symbol": "BTC_BRL",
            "timestamp": 1571112216346
        }
    ],
    "message": "Success"
}

Request URL

GET /v1/market/tickers

Weight: 5

Request Parameters

No parameters are needed for this endpoint.

Response Details

Field Data Type Description
symbol string Trading symbol
lastPrice string The price of last trade
bid string The current best bid price
ask string The current best ask price
open24h string The opening price of last 24 hours
high24h string The highest price of last 24 hours
low24h string The lowest price of last 24 hours
baseVolume24h string The trading volume in base currency of last 24 hours
quoteVolume24h string The trading volume of quote currency of last 24 hours
timestamp number The current system time in UTC time zone

Get Latest Ticker for Specific Pair

The endpoint retrieves the latest ticker of a specific trading pair.

Response Body

{
    "code": "A10000",
    "data": {
        "ask": "34708.15",
        "baseVolume24h": "34.08241488",
        "bid": "34621.74",
        "high24h": "35079.77",
        "lastPrice": "34669.81",
        "low24h": "34330.64",
        "open24h": "34492.08",
        "quoteVolume24h": "1182480.09502814",
        "symbol": "BTC_BRL",
        "timestamp": 1571112216346
    },
    "message": "Success"
}

Request URL

GET /v1/market/ticker

Weight: 1

Request Parameter

Field Mandatory Data Type Description
symbol true string Trading symbol

Response Details

Field Data Type Description
symbol string Trading symbol
lastPrice string The price of last trade
bid string The current best bid price
ask string The current best ask price
open24h string The opening price of last 24 hours
high24h string The highest price of last 24 hours
low24h string The lowest price of last 24 hours
baseVolume24h string The trading volume in base currency of last 24 hours
quoteVolume24h string The trading volume of quote currency of last 24 hours
timestamp number The current system time in UTC time zone

Get Market Depth

This endpoint retrieves the current order book of a specific pair.

Response Body

{
    "code": "A10000",
    "data": {
        "asks": [
            ["43687.16", "0.5194"],
            ["43687.2", "1.3129"]
        ],
        "bids": [
            ["43657.57", "0.6135"],
            ["43657.46", "0.0559"]
        ],
        "timestamp": 1565057338020
    },
    "message": "Success"
}

Request URL

GET /v1/market/depth

Weight: 1

Request Parameters

Field Mandatory Data Type Description
symbol true string Trading symbol
limit false number The number of asks and bids to return , max 50

Response Details

Field Data Type Description
asks array All current asks
asks[][0] string Sell price
asks[][1] string Sell amount
bids array All current bids
bids[][0] string Buy price
bids[][1] string Buy amount
timestamp number The current system time in UTC time zone

Get Recent Trades

This endpoint returns most recent trades data.

Response Body

{
    "code": "A10000",
    "data": [
        {
            "price": "43657.57",
            "amount": "1",
            "side": "SELL",
            "timestamp": 1565007823401
        },
        {
            "price": "43687.16",
            "amount": "0.071",
            "side": "BUY",
            "timestamp": 1565007198261
        }
    ],
    "message": "Success"
}

Request URL

GET /v1/market/trades

Weight: 5

Request Parameters

Field Mandatory Data Type Description
symbol true string Trading symbol
limit false number The number of trades to return , default 100

Response Details

Field Data Type Description
price string The trading price
amount string The trading volume
side string The trading direction (SELL or BUY)
timestamp number The time when the trade occurred

Get Kline Data

Response Body

{
    "code": "A10000",
    "data": [
        {
            "amount": 8.25709100,
            "closePrice": 62553.20,
            "count": 29,
            "highPrice": 62592.87,
            "lowPrice": 62553.20,
            "openPrice": 62554.23,
            "score": 1602501480,
            "symbol": "BTC_BRL",
            "vol": 516784.2504067500
        }
    ],
    "message": "Success"
}

Request URL

GET /v1/market/kline/history

Weight: 5

Request Parameters

Field Mandatory Data Type Description
symbol true string Trading symbol
unit true string ONE_MIN,FIVE_MIN, FIFTEEN_MIN,HALF_HOU,ONE_HOU,ONE_DAY,ONE_WEE,ONE_MON;
from true number The start time All time units only save the latest 3000 data
to true number The end time All time units only save the latest 3000 data

Response Details

Field Data Type Description
unit string Time unit
amount string The trading amount
count string The trading count
openPrice string The open Price
closePrice string The close Price
highPrice string The high Price
lowPrice string The low Price
symbol string The trading symbol
score string The time
vol string The trading volume

Orders

Order Introduction

Order type(order.type)

Operator of stop order (order.operator)

Order direction(order.side)

Order status(order.status)

Order’s role(order.role)

Place A New Order

This endpoint places a new order and submits it to the exchange to be matched.

Response Body

{
    "code": "A10000",
    "data": {
        "id": "633679992971251712",
        "clientOrderId": "client_order_id_123456",
        "symbol": "BTC_BRL",
        "type": "MARKET",
        "side": "SELL",
        "price": null,
        "averagePrice": "0",
        "amount": "0.123",
        "filledAmount": "0",
        "value": null,
        "filledValue": "0",
        "filledFee": "0",
        "stopPrice": null,
        "operator": null,
        "status": "REJECTED",
        "timestamp": 1565165945588
    },
    "message": "Success"
}

Request URL

POST /v1/orders/create

Weight: 5

Request Parameters

Field Mandatory Data Type Description
clientOrderId false string Customer-customized unique order ID, not exceeding 30 characters in length.
symbol true string The trading symbol to trade, like BTC_BRL
type true string The type of order, single option: LIMIT
side true string The direction of order, single option: BUY
price true string Buy price
amount true string The amount of base currency, like BTC amount for buy of BTC_BRL
value true string The amount of quote currency, like BRL amount for buy of BTC_BRL
operator true string Operator of stop order, can be found in order introduction
stopPrice true string Stop price

Based on the order type and side, certain parameters are required to be enforced:

type + side Required Parameters
LIMIT BUY price,amount
LIMIT SELL price,amount
MARKET BUY value
MARKET SELL amount
STOP_LIMIT BUY price,amount,operator,stopPrice
STOP_LIMIT SELL price,amount,operator,stopPrice
STOP_MARKET BUY value,operator,stopPrice
STOP_MARKET SELL amount,operator,stopPrice

Response Details

Field Data Type Description
id string Order ID
clientOrderId string Customer-customized unique order ID
symbol string The trading symbol
type string The type of order
side string The direction of order
price string The price of order
averagePrice string The average price of order
amount string The amount of base currency
filledAmount string The executed amount of base currency
value string The amount of quote currency
filledValue string The executed amount of quote currency
filledFee string Transaction fee paid
status string The status of order, can be found in order introduction
timestamp number The time when the order was created

Bulk Place Orders

Batch create new orders, supporting the simultaneous submission of up to 20 orders at a time.

Response Body

{
    "code": "A10000",
    "data": [{
        "id": "633679992971251712",
        "clientOrderId": "client_order_id_123456",
        "symbol": "BTC_BRL",
        "type": "MARKET",
        "side": "SELL",
        "price": null,
        "averagePrice": "0",
        "amount": "0.123",
        "filledAmount": "0",
        "value": null,
        "filledValue": "0",
        "filledFee": "0",
        "stopPrice": null,
        "operator": null,
        "status": "REJECTED",
        "timestamp": 1565165945588
    }, {
        "clientOrderId": "client_order_id_123456",
        "code": "A10001",
        "message": "Params error"
    }],
    "message": "Success"
}

Request URL

POST /v1/orders/batch-create

Weight: 50

Request Parameters

Field Mandatory Data Type Description
clientOrderId false string Customer-customized unique order ID, not exceeding 30 characters in length.
symbol true string The trading symbol to trade, like BTC_BRL
type true string The type of order, single option: LIMIT
side true string The direction of order, single option: BUY
price true string Buy price
amount true string The amount of base currency, like BTC amount for buy of BTC_BRL
value true string The amount of quote currency, like BRL amount for buy of BTC_BRL
operator true string Operator of stop order, can be found in order introduction
stopPrice true string Stop price

Based on the order type and side, certain parameters are required to be enforced:

type + side Required Parameters
LIMIT BUY priceamount
LIMIT SELL priceamount
MARKET BUY value
MARKET SELL amount
STOP_LIMIT BUY priceamountoperatorstopPrice
STOP_LIMIT SELL priceamountoperatorstopPrice
STOP_MARKET BUY valueoperatorstopPrice
STOP_MARKET SELL amountoperatorstopPrice

Response Details

Field Data Type Description
data array Order List
>id string Order ID
>clientOrderId string Customer-customized unique order ID
>symbol string The trading symbol
>type string The type of order
>side string The direction of order
>price string The price of order
>averagePrice string The average price of order
>amount string The amount of base currency
>filledAmount string The executed amount of base currency
>value string The amount of quote currency
>filledValue string The executed amount of quote currency
>filledFee string Transaction fee paid
>status string The status of order, can be found in order introduction
>timestamp number The time when the order was created

Cancel Order ID

This endpoint submits a request to cancel an order.

Response Body

{
    "code": "A10000",
    "data": {
        "result": true
    },
    "message": "Success"
}

Request URL

POST /v1/orders/cancel

Weight: 1

Request Parameters

Field Mandatory Data Type Description
id false string Order ID
clientOrderId false string Customer-customized unique order ID

Response Details

Field Data Type Description
result string The result of the cancel request

Bulk Cancel Orders by ID

Batch submission of order cancellation requests, supporting up to 20 orders to be submitted simultaneously.

Response Body

{
    "code": "A10000",
    "data": [
        {
            "id": "608695623247466496",
            "result": true,
            "code": "A10000",
            "message": "Success"
        },
        {
            "clientOrderId": "client_order_id_123457",
            "result": true,
            "code": "A10000",
            "message": "Success"
        },
        {
            "clientOrderId": "client_order_id_123458",
            "result": false,
            "code": "A30001",
            "message": "Order not found",
        }
    ],
    "message": "Success"
}

Request URL

POST /v1/orders/batch-cancel

Weight: 10

Request Parameters

Field Mandatory Data Type Description
>id false string 订单ID
>clientOrderId false string Customer-customized unique order ID

Response Details

Field Data Type Description
data array Canceled Order List
>id string Order ID
>clientOrderId string Customer-customized unique order ID
>result boolean The result of the cancel request

Cancel order by symbol

Cancel order based on trading symbol.

Response Body

{
    "code": "A10000",
    "data": [
        {
            "id": "608695623247466496",
            "clientOrderId": "client_order_id_123456",
            "result": true,
            "code": "A10000",
            "message": "Success"
        },
        {
            "id": "608695623247466497",
            "clientOrderId": "client_order_id_123457",
            "result": true,
            "code": "A10000",
            "message": "Success"
        }
    ],
    "message": "Success"
}

Request URL

POST /v1/orders/cancel-by-symbol

Weight: 10

Request Parameters

Field Mandatory Data Type Description
symbol true string The trading symbol to trade, like BTC_BRL

Response Details

Field Data Type Description
data array Canceled Order List
>id string Order ID
>clientOrderId string Customer-customized unique order ID
>result boolean The result of the cancel request

Get Order Details

This endpoint returns the latest status and details of an order. Orders created through API cannot be found after being cancelled for two hours.

Response Body

{
    "code": "A10000",
    "data": {
        "id": "608695623247466496",
        "clientOrderId": "client_order_id_123456",
        "symbol": "BTC_BRL",
        "type": "MARKET",
        "side": "SELL",
        "price": null,
        "averagePrice": "0",
        "amount": "0.123",
        "filledAmount": "0",
        "value": null,
        "filledValue": "0",
        "filledFee": "0",
        "stopPrice": null,
        "operator": null,
        "status": "REJECTED",
        "timestamp": 1565165945588
    },
    "message": "Success"
}

Request URL

GET /v1/orders/get

Weight: 1

Request Parameters

Field Mandatory Data Type Description
id false string Order ID
clientOrderId false string Customer-customized unique order ID

Response Details

Field Data Type Description
id string Order ID
clientOrderId string Customer-customized unique order ID
symbol string The trading symbol
type string The type of order
side string The direction of order
price string The price of order
averagePrice string The average price of order
amount string The amount of base currency
filledAmount string The executed amount of base currency
value string The amount of quote currency
filledValue string The executed amount of quote currency
filledFee string Transaction fee paid
status string The status of order, can be found in order introduction
timestamp number The time when the order was created

Get Order History

This endpoint returns the order history based on a certain search filter. Orders created through API cannot be found after being cancelled for two hours.

Response Body

{
    "code": "A10000",
    "data": [
        {
            "id": "608695678650028032",
            "clientOrderId": "client_order_id_123456",
            "symbol": "BTC_BRL",
            "type": "MARKET",
            "side": "SELL",
            "price": null,
            "averagePrice": "0",
            "amount": "0.123",
            "filledAmount": "0",
            "value": null,
            "filledValue": "0",
            "filledFee": "0",
            "stopPrice": null,
            "operator": null,
            "status": "REJECTED",
            "timestamp": 1565165958796
        },
        {
            "id": "608695623247466496",
            "clientOrderId": "client_order_id_123457",
            "symbol": "BTC_BRL",
            "type": "MARKET",
            "side": "SELL",
            "price": null,
            "averagePrice": "0",
            "amount": "0.123",
            "filledAmount": "0",
            "value": null,
            "filledValue": "0",
            "filledFee": "0",
            "stopPrice": null,
            "operator": null,
            "status": "REJECTED",
            "timestamp": 1565165945588
        }
    ],
    "message": "Success"
}

Request URL

GET /v1/orders/list

Weight: 10

Request Parameters

Field Mandatory Data Type Description
symbol false string The trading symbol, like BTC_BRL
status false string The status of orders(can be found in order introduction, use comma to separate different status). You can also use 'FINISHED' to find finished orders and use 'UNFINISHED' to find unfinished orders.
fromId false string Search order id to begin with
toId false string Search order id to end up with
fromTimestamp false string Search order creation time to begin with, in milliseconds
toTimestamp false string Search order creation time to end up with, in milliseconds
limit false string The number of orders to return, default 100, max 100

Response Details

Field Data Type Description
id string Order ID
clientOrderId string Customer-customized unique order ID
symbol string The trading symbol
type string The type of order
side string The direction of order
price string The price of order
averagePrice string The average price of order
amount string The amount of base currency
filledAmount string The executed amount of base currency
value string The amount of quote currency
filledValue string The executed amount of quote currency
filledFee string Transaction fee paid
status string The status of order, can be found in order introduction
timestamp number The time when the order was created

Get Order Match Details

This endpoint returns the match result of an order.

Response Body

{
    "code": "A10000",
    "data": [
        {
            "id": "608717046691139584",
            "orderId": "608716957545402368",
            "symbol": "BTC_BRL",
            "side": "BUY",
            "amount": "0.0988",
            "price": "45514.76",
            "fee": "0.0000988 BTC",
            "feeAmount": "0.0000988",
            "feeCurrency": "BTC",
            "role": "MAKER",
            "timestamp": 1565171053345
        },
        {
            "id": "608717065729085441",
            "orderId": "608716957545402368",
            "symbol": "BTC_BRL",
            "side": "BUY",
            "amount": "0.0242",
            "price": "45514.76",
            "fee": "0.0000242 BTC",
            "feeAmount": "0.0000988",
            "feeCurrency": "BTC",
            "role": "MAKER",
            "timestamp": 1565171057882
        }
    ],
    "message": "Success"
}

Request URL

GET /v1/orders/fills

Weight: 10

Request Parameters

Field Mandatory Data Type Description
orderId true string Order ID
symbol false string The trading symbol, like BTC_BRL
fromId false string Search fill id to begin with
toId false string Search fill id to end up with
fromTimestamp false string Search order fill time to begin with, in milliseconds
toTimestamp false string Search order fill time to end up with, in milliseconds
limit false string The number of fills to return, default 100, max 100

Response Details

Field Data Type Description
id string Order match ID
orderId string Order ID
symbol string The trading symbol
side string The direction of order, options: BUY or SELL
price string The matched price
amount string The matched amount
fee string Transaction fee paid
feeCurrency string Transaction fee paid currency
feeAmount string Transaction fee paid amount
role string The role of transaction,option: TAKER or MAKER
timestamp false string

Account

Get Account Balance

This endpoint returns the account balance.

Response Body

{
    "code": "A10000",
    "data": [
        {
            "available": "1.23",
            "balance": "0.23",
            "currency": "BTC",
            "hold": "1"
        }
    ],
    "message": "Success"
}

Request URL

GET /v1/account/getBalance

Weight: 1

Request Parameters

No parameter is needed for this endpoint

Response Details

Field Data Type Description
currency string The currency of this balance
balance string The balance of this currency
hold string The balance in order
available string The available balance

Get Sub Account Balance

This endpoint returns the balance of sub account.

Response Body

{
    "code":"A10000",
    "data":[
        {
            "balance":"7.22",
            "currency":"BTC"
        }
    ],
    "message":"Success"
}

Request URL

GET /v1/account/subs/balance

Weight: 1

Request Parameters

Field Mandatory Data Type Description
subId ture string Sub account ID

Response Details

Field Data Type Description
balance string Balance of sub account
currency string Currency of this balance

Get Sub Account Transfer Record

This endpoint returns the transfer record of sub account

Response Body

{
    "code": "A10000",
    "data": [{
        "subId": "CA648855702269333504",
        "amount": "103.22",
        "currency": "BRL",
        "state": "success",
        "type": "master-transfer-out"
    }, {
        "subId": "CA648855702269333504",
        "amount": "3.5",
        "currency": "BRL",
        "state": "success",
        "type": "master-transfer-in"
    }],
    "message": "Success"
}

Request URL

GET /v1/account/subs/transfer/record

Weight: 10

Request Parameters

Field Mandatory Data Type Description
subId ture string Sub account ID

Response Details

Field Data Type Description
subId string Sub account ID
amount string Transfer amount
currency string Transfer currency
state string Transfer state: success/fail
type string Type: master-transfer-in (transfer into master account) or master-transfer-out (transfer from master account)

Get Sub Account Transfer

The endpoint submits a transfer request of sub account

Response Body

{
  "code":"A10000",
  "message":"Success",
  "data":40
}

Request URL

POST /v1/account/subs/transfer

Weight: 5

Request Parameters

Field Mandatory Data Type Description
subId true string Sub account ID
currency true string Transfer currency
transferAmount true string Transfer amount
transferType true string Type,master-transfer-in or master-transfer-out

Response Details

Data field returns the transfer record ID.

Wallet

Wallet Records of Deposits and Withdraws

The endpoint returns the records of deposits and withdraws.

Response Body

{
    "code": "A10000",
    "data": [{
        "id": "DR562339304588709888",
        "type": "COIN_IN",
        "currency": "XLM",
        "chain": "XLM",
        "address": "GCUTK7KHPJC3ZQJ3OMWWFHAK2OXIBRD4LNZQRCCOVE7A2XOPP2K5PU5Q",
        "addressTag": "1000009",
        "amount": 1.0,
        "state": "SUCCESS",
        "txHash": "39210645748822f8d4ce673c7559aa6622e6e9cdd7073bc0fcae14b1edfda5f4",
        "createdAt": 1554113737000,
        "updatedAt": 1601371273000
    }...],
    "message": "Success"
}

Request URL

GET /v1/wallet/query/deposit-withdraw

Weight: 10

Request Parameters

Field Data Type Required Description Default Value
currency string false The currency code. e.g. BTC NA
type string false default record type to search coin_in and coin_out
direct string false the order of records,e.g. asc or desc asc
size int false the number of iterms to return 100
start string false the id of record, NA

Response Details

Field Data Type Description
id string the id of record
type string the type of record
currency string the currency code of record
txHash string the txid of chain
address string the dst address of txHash
addressTag string the tag of txHash
chain string Block chain name,internal means transfer through novadax inside rather than chain
amount decimal the amount of txHash
state string the state of record
createdAt long The timestamp in milliseconds for the transfer creation
updatedAt long The timestamp in milliseconds for the transfer's latest update

List of possible record state

State Description
Pending the record is wait broadcast to chain
x/M confirming the comfirming state of tx,the M is total confirmings needed
SUCCESS the record is success full
FAIL the record failed

Send Cryptocurrencies

Response Body

{
  "code":"A10000",
  "data": "DR123",
  "message":"Success"
}

Request URL

POST /v1/wallet/withdraw/coin

Weight: 600

Request Parameters

Field Mandatory Data Type Description
code ture string Crypto symbol, like BTC
amount true string Amount to send
wallet true string Wallet address to receive
chainAlias true string Wallet address to receive with chainAlias,default nova first chain
tag false string Tag, required when sending XLM, XRP, EOS

Response Details

The data field will return the withdrawal id.

Request URL

GET /crypto/chain/{code}

Weight: 5

Request parameters

parm r name param type param note
code String crypto accout code,default value is "ALL"

Response parameters

param name param type param note
accountCode String code account
accountType String code account type:DIGITAL,LEGAL
accountPrecision Integer code account precision
accountOrder Integer code account order
accountState Integer code account state,1:in-use,0: off-use
tokens List crypro network List

List of tokens

parame name param type param note
codeAccount String Code account
chainAlias String crypto chain alias, use for send crypto
chainName String crypto chain name, just for reading
mainAddr String main address for memo crypto,default value is null
useMemo Integer use memo or not,1:using,0:not using
useDynamicSendFee String using dynamic sent fee,1:using,0:not using
minConf Integer min confirmations of chain
useFirst Integer default chain choosed in novadax when chainAlias is null in api
state Integer chain is useful,1:in-use,0:off-use
chainURL String chain url
chainAddressURL String chain address url
chainHashURL String chain hash url
officialURL String chain official url

WebSocket

Access

NovaDAX WebSocket API is based on Socket.io. You can find more information about Socket.io on their official website.

Address

wss://api.novadax.com

// Socket.IO example of establishing connection
const io = require("socket.io-client");

const socket = io("wss://api.novadax.com", {
transports: ['websocket']
});

// Socket.IO example of subscription
socket.emit("SUBSCRIBE", ["MARKET.BTC_USDT.TICKER", "MARKET.BTC_USDT.TRADE"])
socket.on("MARKET.BTC_USDT.TICKER", (ticker) => {
    console.log(ticker)
})
socket.on("MARKET.BTC_USDT.TRADE", (trade) => {
    console.log(trade)
})

// Socket.IO example of cancelling subscription
socket.emit("UNSUBSCRIBE", ["MARKET.BTC_USDT.DEPTH.LEVEL0"])

Limit

Subscribe topics

When you subscribe a topic, you can receive all the notifications about it. Subscription format:

socket.emit("SUBSCRIBE", ["XXX"])

Cancel subscription

After subscribing a topic, you can cancel the subscription if you don’t want to receive notifications about the topic anymore. Format of canceling the subscription:

socket.emit("UNSUBSCRIBE", ["XXX"])

Subscribe Ticker Data of All Trading Pairs

After subscription, the system will send ticker data of all trading pairs once a second.

Data

[
  {
      "ask": "34708.15",
      "baseVolume24h": "34.08241488",
      "bid": "34621.74",
      "high24h": "35079.77",
      "lastPrice": "34669.81",
      "low24h": "34330.64",
      "open24h": "34492.08",
      "quoteVolume24h": "1182480.09502814",
      "symbol": "BTC_BRL",
      "timestamp": 1571112216346
  }
]

Subscription Topic

MARKET.TICKERS

Request Parameters

No parameters are needed for this endpoint.

Response Details

Field Data Type Description
symbol string Trading symbol
lastPrice string The price of last trade
bid string The current best bid price
ask string The current best ask price
open24h string The opening price of last 24 hours
high24h string The highest price of last 24 hours
low24h string The lowest price of last 24 hours
baseVolume24h string The trading volume in base currency of last 24 hours
quoteVolume24h string The trading volume of quote currency of last 24 hours
timestamp number The current system time in UTC time zone

Subscribe Ticker Data of a Single Trading Pair

After subscription, the system will send ticker data of the chosen trading pair once a second.

Data

{
    "ask": "34708.15",
    "baseVolume24h": "34.08241488",
    "bid": "34621.74",
    "high24h": "35079.77",
    "lastPrice": "34669.81",
    "low24h": "34330.64",
    "open24h": "34492.08",
    "quoteVolume24h": "1182480.09502814",
    "symbol": "BTC_BRL",
    "timestamp": 1571112216346
}

Subscription Topic

MARKET.{{symbol}}.TICKER

Request Parameter

Field Mandatory Data Type Description
symbol true string Trading symbol

Response Details

Field Data Type Description
symbol string Trading symbol
lastPrice string The price of last trade
bid string The current best bid price
ask string The current best ask price
open24h string The opening price of last 24 hours
high24h string The highest price of last 24 hours
low24h string The lowest price of last 24 hours
baseVolume24h string The trading volume in base currency of last 24 hours
quoteVolume24h string The trading volume of quote currency of last 24 hours
timestamp number The current system time in UTC time zone

Subscribe Depth Data

After subscription, the system will send the depth data of the chosen trading pairs once a second.

Data

{
    "asks": [
        ["43687.16", "0.5194"],
        ["43687.2", "1.3129"]
    ],
    "bids": [
        ["43657.57", "0.6135"],
        ["43657.46", "0.0559"]
    ],
    "timestamp": 1565057338020
}

Subscription Topic

MARKET.{{symbol}}.DEPTH.LEVEL0

Request Parameters

Field Mandatory Data Type Description
symbol true string Trading symbol

Response Details

Field Data Type Description
asks array All current asks
asks[][0] string Sell price
asks[][1] string Sell amount
bids array All current bids
bids[][0] string Buy price
bids[][1] string Buy amount
timestamp number The current system time in UTC time zone

Subscribe Order Execution Data

After subscription, the system will send notification about the latest executed orders.

Data

[
    {
        "price": "43657.57",
        "amount": "1",
        "side": "SELL",
        "timestamp": 1565007823401
    },
    {
        "price": "43687.16",
        "amount": "0.071",
        "side": "BUY",
        "timestamp": 1565007198261
    }
]

Subscription Topic

MARKET.{{symbol}}.TRADE

Request Parameters

Field Mandatory Data Type Description
symbol true string Trading symbol

Response Details

Field Data Type Description
price string The trading price
amount string The trading volume
side string The trading direction (SELL or BUY)
timestamp number The time when the trade occurred