Skip to main content

API Reference

Complete API Reference

Kuant.ai Exchange Futures API - Complete Endpoint Reference

Contract Basic Information

Contract Info

Basic Info

/dex/v1/future/contract POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription

Response Data

NameTypeRequiredDescription
codestringRequired
msgstringRequired
dataobjectRequired
contractListobject []RequiredContract list
idnumberRequiredContract ID
contractNamestringRequiredContract name
contractOtherNamestringRequiredContract alias (frontend display)
classificationstringRequiredContract classification: 1 USDT contract, 2 Coin-margined contract, 3 Mixed contract, 4 Demo contract
symbolstringRequiredContract trading pair
contractTypestringRequiredContract type, E: Perpetual contract, H: Mixed contract
contractShowTypestringRequiredContract type, display field after conversion
deliveryKindstringRequiredDelivery cycle
contractSidenumberRequiredContract direction (Inverse: 0, Linear: 1)
multipliernumberRequiredContract face value
multiplierCoinstringRequiredContract face value unit (currency name when base currency)
marginCoinstringRequiredMargin currency (note: alias)
originalCoinstringRequiredActual margin currency
capitalStartTimenumberRequiredFunding rate collection start time (hour 0-23)
capitalFrequencystringRequiredInterval duration (unit: hours)
capitalPremiumMinnumberRequiredPremium deviation ratio minimum (without percentage)
capitalPremiumMaxnumberRequiredPremium deviation ratio maximum (without percentage)
settlementFrequencynumberRequiredSettlement frequency (unit: minutes)
nextCapitalSettTimenumberRequiredNext funding fee settlement timestamp
brokerIdnumberRequiredExclusive client ID, 1 means none
basestringRequiredBase currency (quantity unit)
quotestringRequiredQuote currency (price unit)
marginRatenumberRequiredMargin exchange rate
maxLevernumberRequiredSystem configured max leverage
minLevernumberRequiredSystem configured min leverage
sortstringRequiredSort order
subSymbolstringRequiredActual type_trading pair
defaultLevelnumberRequiredContract default leverage
coTypestringRequiredContract classification type
coinResultVoobjectRequiredCurrency pair configuration object
symbolPricePrecisionnumberRequiredContract pair price precision
marginCoinPrecisionstringRequiredMargin currency display precision
depthstring []RequiredDepth array
minOrderVolumenumberRequiredMinimum order volume
minOrderMoneynumberRequiredMinimum order amount
maxMarketVolumenumberRequiredMaximum market order volume
maxMarketMoneynumberRequiredMaximum market order amount
maxLimitVolumenumberRequiredMaximum limit order volume
maxLimitMoneynumberRequiredMaximum limit order amount
priceRangenumberRequiredMaximum order price deviation ratio (without percentage sign)
minPriceRangenumberRequired
marketPriceRangenumberRequiredMarket price deviation ratio
liquidationRatenumberRequiredLiquidation fee rate
currentTimeMillisnumberRequiredRequest timestamp
marginCoinListstring []RequiredMargin currency list (aliases)
OptionalMargin currency (alias)
originalCoinListstring []RequiredActual margin currency set
OptionalActual margin currency
wsUrlnumberRequiredWebSocket URL
contractProInfostringRequiredContract product description URL
positionSharePicMapobjectRequired
1object []RequiredDaytime
idstringRequiredid
picTypestringRequired1 Profit background image, 2 Loss background image, 3 Base image
rateRangestringRequiredRatio: 0 (0~20), 1 (21~40), 2 (41~60), 3 (61~80), 4 (80+)
urlstringRequiredurl
positionShareLanListobject []Required
idstringRequired
rateRangenumberRequiredRatio: 0 (0~20), 1 (21~40), 2 (41~60), 3 (61~80), 4 (80+)
contentstringRequiredContent
typestringRequired1 Profit, 2 Loss
contractProListobject []RequiredContract tutorial configuration
contractProInfostringRequiredContract product description URL
showContractProInfoFlagstringRequiredContract tutorial entry: 0 Hidden, 1 Shown
contractProDayIconstringRequiredContract tutorial daytime icon
contractProNightIconstringRequiredContract tutorial nighttime icon
contractDataListobject []RequiredContract data configuration
showContractDataFlagstringRequiredContract data entry: 0 Hidden, 1 Shown
contractDataDayIconstringRequiredContract data daytime icon
contractDataNightIconstringRequiredContract data nighttime icon
showContractProInfoFlagstringRequiredContract tutorial entry: 0 Hidden, 1 Shown
companyIdstringRequiredMerchant ID

Conditional Orders & Order History

Current/Historical Conditional Orders

Basic Info

/dex/v1/future/trigger_record POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberRequiredChain ID
accountstringOptionalWallet address
contractNamestringOptionalContract name
orderStatusnumberOptionalStatus: 0 Triggered conditional orders, 1 Currently active conditional orders
pagenumberOptionalPage number
pageSizenumberOptionalPage size

Response Data

NameTypeRequiredDescription
codestringRequired
msgstringRequired
dataobjectRequired
triggerOrderListobject []Required
positionTypenumberOptionalPosition type (1 Cross margin, 2 Isolated margin)
orderIdstringOptionalOrder ID after conditional order triggered
memonumberOptionalOrder status note
sourcenumberOptionalOrder source (1 web, 2 app, 3 api, 4 other)
typenumberOptional0 Regular conditional order
mtimenumberOptionalUpdate time
uidnumberOptionalUser ID
pricenumberOptionalOrder price
ctimenumberOptionalCreation time
contractNamestringOptionalContract name
triggerOrderIdnumberOptionalConditional order primary key ID
sidestringOptionalBuy/sell direction (buy: Buy, sell: Sell)
brokerIdnumberOptionalMerchant ID
clientIdstringOptionalClient order identifier
triggerPricenumberOptionalTrigger price
leverageLevelnumberOptionalLeverage multiplier
volumenumberOptionalOrder quantity (market order for opening: amount)
masterIdnumberOptionalOTO associated main order ID
expireTimenumberOptionalConditional order expiration time
positionIdnumberOptionalPosition ID for take-profit or stop-loss order
timeinForcenumberOptionalTime in force (1 limit, 2 market, 3 IOC, 4 FOK, 5 POST_ONLY)
contractIdnumberOptionalContract ID
triggerTypenumberOptionalConditional order type (1 Stop loss, 2 Take profit, 3 Chase long, 4 Chase short)
openstringOptionalOpen/close position direction (open: Open position, close: Close position)
statusnumberOptionalActive status (0 Active, 1 Expired, 2 Completed, 3 Trigger failed)
triggerCountstringRequiredCount

Order History

Basic Info

/dex/v1/future/orderHistorical POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberRequiredChain ID
accountstringRequiredWallet address
contractNamestringRequiredContract name
pagenumberOptionalPage number
limitnumberOptionalPage size

Response Data

NameTypeRequiredDescription
codestringRequired
msgstringRequired
dataobjectRequired
listobject []Required
sidestringRequiredDirection
clientIdstringRequiredClient order identifier
ctimeMsnumberRequiredCreation time (ms)
positionTypenumberRequiredPosition type
orderIdnumberRequiredOrder ID
avgPricenumberRequiredClose position average price (this field is not provided if the source is a liquidation order)
openOrClosestringRequiredOpen/close direction (open: Open position, close: Close position), same as open value
leverageLevelnumberRequiredLeverage
typenumberRequiredOrder type
closeTakerFeeRatenumberRequiredClose position taker fee rate
openEndPricenumberRequiredOrder quantity
openMakerFeeRatenumberRequiredOpen position maker fee rate
dealVolumenumberRequiredFilled quantity
pricenumberRequiredOrder price (this field is not provided if the source is a liquidation order)
closeMakerFeeRatenumberRequiredClose position maker fee rate
contractIdnumberRequiredContract ID
ctimestringRequiredCreation time
contractNamestringRequiredContract name
openTakerFeeRatenumberRequiredOpen position taker fee rate
dealMoneynumberRequiredFilled amount
statusnumberRequiredStatus
realizedAmountnumberRequiredCumulative order profit/loss

futures-api

Futures Trading

get_ladder_info Contract Endpoint

Basic Info

/dex/v1/future/get_ladder_info POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
contractIdstringOptionalContract ID

Response Data

NameTypeRequiredDescription
codestringOptional
msgstringOptional
dataobjectOptional
leverListobjectOptionalList
leverListobject []Optional
levelnumberRequired
maxHoldAmountnumberRequired
maxLevernumberRequired
minLevernumberRequired
maxLevernumberOptionalMaximum
namestringOptionalContract name
ctimestringOptionalCreation time
minLevernumberOptionalMinimum
idnumberOptionalContract ID
mtimestringOptionalModification time
leverConfigstringOptionalBasic configuration
leverOriginCeilingobjectOptionalMultiplier corresponding values
1numberOptional
2numberOptional
3numberOptional
4numberOptional
5numberOptional
10numberOptional
25numberOptional
50numberOptional
75numberOptional
ladderListobjectOptionalTier list
ladderConfigstringOptionalBasic configuration
ladderListobject []Optional
levelnumberRequired
minMarginRatenumberRequiredMinimum margin rate
minPositionValuenumberRequiredMinimum position value
maxPositionValuenumberRequiredMaximum position value
namestringOptionalContract name
ctimestringOptionalCreation time
idnumberOptionalContract ID
mtimestringOptionalUpdate time
leverCeilingobjectOptionalMaximum position held for leverage
1numberOptional
2numberOptional
3numberOptional
4numberOptional
5numberOptional
10numberOptional
25numberOptional
50numberOptional
75numberOptional

price_list Contract Endpoint

Basic Info

/dex/v1/future/price_list POST

API Description:

Request Parameters

Response Data

NameTypeRequiredDescription
codestringOptional
msgstringOptional
dataobject []Optional
E-BTC-USDTobjectOptional
buyOnenumberOptionalBest bid
tagPricenumberOptionalMark price
sellOnenumberOptionalBest ask
lastPricenumberOptionalLast price

Positions

Basic Info

/dex/v1/future/account POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
accountstringRequiredWallet address
chainIdnumberRequiredChain ID

Response Data

NameTypeRequiredDescription
accountobject []Optional
marginCoinstringRequiredMargin currency
canUsestringRequiredAvailable
canAmountstringRequiredAvailable amount max(accountNormal - totalCost, 0)
totalAmountstringRequiredmax(partEquity + totalEquity + accountLock, 0)
totalMarginstringRequiredtotalEquity
accountNormalstringRequiredBalance account
accountLockstringRequiredMargin frozen account
partPositionNormalstringRequiredIsolated margin balance
totalPositionNormalstringRequiredCross margin initial margin used
achievedAmountstringRequiredRealized PnL
unrealizedAmountstringRequiredUnrealized PnL
totalMarginRatestringRequiredCross margin rate
totalEquitystringRequiredCross margin equity
partEquitystringRequiredIsolated margin equity
totalCoststringRequiredCross margin cost used
sumMarginRatestringRequiredTotal account margin rate
positionVosobject []RequiredPosition contract records
contractIdstringRequiredContract ID
contractNamestringRequiredContract name
contractSymbolstringRequiredContract trading pair
positionsobjectRequiredPosition details
idstringRequiredPosition ID
positionTypestringRequiredPosition type (1 Cross margin, 2 Isolated margin)
sidestringRequiredPosition direction: SELL Long position, BUY Short position
volumestringRequiredPosition quantity
openPricestringRequiredOpen price
avgPricestringRequiredPosition average price
closePricestringRequiredClose position average price
leverageLevelstringRequiredLeverage multiplier
holdAmountstringRequiredPosition margin
closeVolumestringRequiredClosed quantity
pendingCloseVolumestringRequiredPending close order quantity
realizedAmountstringRequiredRealized PnL
historyRealizedAmountstringRequiredHistorical cumulative realized PnL
tradeFeestringRequiredTrading fee
capitalFeestringRequiredFunding fee
closeProfitstringRequiredClose position PnL
shareAmountstringRequiredShared amount
freezeLockstringRequiredPosition freeze status: 0 Normal, 1 Liquidation frozen, 2 Delivery frozen
statusstringRequiredPosition validity: 0 Invalid, 1 Valid
ctimestringRequired
mtimestringRequired
brokerIdstringRequiredMerchant ID
lockTimestringRequiredLiquidation lock time
marginRatestringRequiredMargin rate
reducePricestringRequiredAuto-deleveraging price
returnRatestringRequiredReturn rate (yield)
unRealizedAmountstringRequiredUnrealized PnL
openRealizedAmountstringRequiredOpen position unrealized PnL
positionBalancestringRequiredPosition value
indexPricestringRequiredLatest mark price
keepRatestringRequiredTier minimum maintenance margin rate
maxFeeRatestringRequiredMaximum close position fee rate
typeOptional

Create Conditional Order (Open/Close Position)

Basic Info

/dex/v1/future/trigger_order POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
accountstringOptionalWallet address
contractNamestringRequiredContract name, e.g. BTC-USDT
volumenumberRequiredOrder quantity (contracts), for market orders opening positions this value unit is in notional value
pricenumberRequiredOrder price
typestringRequiredOrder type: MARKET / LIMIT
sidestringRequiredBuy/sell direction: BUY / SELL
openstringRequiredOpen/close direction: OPEN / CLOSE
positionTypestringRequiredPosition type: 1 Cross margin / 2 Isolated margin
clientOrderIdstringOptionalClient order ID, max 32 characters
timeInForcestringOptionalGTC / IOC / FOK / POST_ONLY
triggerPricenumberRequiredTrigger price
triggerTypestringRequiredConditional order: 3 Chase long / 4 Chase short

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
dataobjectOptional
triggerIdsstring []OptionalConditional order IDs
idsstring []OptionalOrder IDs
cancelIdsstring []OptionalCancelled order IDs

Cancel All Orders

Basic Info

/dex/v1/future/cancel_orders POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
accountstringRequiredUser address
contractNamestringOptionalFilter by contract
isConditionOrderbooleanRequiredWhether it is a conditional order (true/false)

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
datanullOptional

Cancel Conditional Order (Single)

Basic Info

/dex/v1/future/trigger_cancel POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
accountstringRequiredUser address
orderIdstringRequiredConditional order ID (triggerOrderId)
contractNamestringRequiredContract name

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
datanullOptional

Current/Historical Conditional Orders with Count (New)

Basic Info

/dex/v1/future/trigger_record POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
accountstringOptionalWallet address
contractNamestringOptionalContract name
orderStatusnumberOptional1 Not triggered, 0 Triggered
pagenumberOptionalPage number
pageSizenumberOptionalPage size

Response Data

NameTypeRequiredDescription
codestringRequired
msgstringRequired
dataobjectRequired
triggerOrderListobject []Required
orderIdstringRequiredOrder ID (system generated)
contractNamestringRequiredContract name
pricestringRequiredOrder price
origQtystringRequiredOrder quantity
executedQtystringRequiredFilled order quantity
avgPricestringRequiredAverage filled price of the order
typestringRequiredOrder type. Possible values: LIMIT and MARKET
sidestringRequiredOrder direction. Possible values: BUY (buy/long) and SELL (sell/short)
statusstringRequiredOrder status. Possible values: NEW (new order, no fills), PARTIALLY_FILLED (partially filled), FILLED (fully filled), CANCELED (cancelled), and REJECTED (order rejected).
actionstringRequiredOPEN/CLOSE
transactTimenumberRequiredOrder creation time
triggerCountstringRequiredCount

Current Orders with Count (New)

Basic Info

/dex/v1/future/openOrdersCount POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberRequiredChain ID
accountstringOptionalWallet address
contractNamestringOptionalContract name
pagenumberOptionalPage number
pageSizenumberOptionalPage size

Response Data

NameTypeRequiredDescription
codestringRequired
msgstringRequired
dataobjectRequired
orderListobject []Required
orderIdstringRequiredOrder ID (system generated)
contractNamestringRequiredContract name
pricestringRequiredOrder price
origQtystringRequiredOrder quantity
executedQtystringRequiredFilled order quantity
avgPricestringRequiredAverage filled price of the order
typestringRequiredOrder type. Possible values: LIMIT and MARKET
sidestringRequiredOrder direction. Possible values: BUY (buy/long) and SELL (sell/short)
statusstringRequiredOrder status. Possible values: NEW (new order, no fills), PARTIALLY_FILLED (partially filled), FILLED (fully filled), CANCELED (cancelled), and REJECTED (order rejected).
actionstringRequiredOPEN/CLOSE
transactTimenumberRequiredOrder creation time
countstringRequiredCount

Trade Records (New)

Basic Info

/dex/v1/future/tradesRecord POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberRequiredChain ID
accountstringOptionalWallet address
contractNamestringRequiredContract name
pagestringOptionalPage number
limitstringOptionalPage size

Response Data

NameTypeRequiredDescription
codestringRequired
msgstringRequired
dataobjectRequired
listobject []Required
symbolstringRequiredCurrency name (trading pair)
tradeIdstringRequiredTrade ID
bidIdstringRequiredBuyer order ID
askIdstringRequiredSeller order ID
bidUserIdstringRequiredBuyer user ID
askUserIdstringRequiredSeller user ID
pricestringRequiredTrade price
qtystringRequiredTrade quantity
amountstringRequiredTrade amount
timestringRequiredTrade timestamp
feestringRequiredTrading fee
sidestringRequiredCurrent order direction: BUY Buy, SELL Sell
contractNamestringRequiredContract name
isMakerstringRequiredWhether maker
isBuyerstringRequiredWhether buyer

Take Profit/Stop Loss - Create Conditional Order

Basic Info

/dex/v1/future/profitLossOrder POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
accountstringOptionalWallet address
contractNamestringRequiredContract name
positionTypestringRequiredPosition type: 1 Cross margin / 2 Isolated margin
sidestringRequiredDirection (opposite to position side)
orderListobject []RequiredTP/SL sub-order list
triggerTypenumberRequiredConditional order type: 1 Stop loss, 2 Take profit
typenumberRequiredOrder type: 1 Limit, 2 Market
pricenumberRequiredOrder price
volumenumberRequiredQuantity (contracts)
triggerPricenumberRequiredTrigger price

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
dataobjectOptional
idsstring []Optional

User Deposit Records

Basic Info

/dex/v1/futures/margin/increase_records POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
accountstringOptionalWallet address
pagenumberOptionalPage number (default 1)
sizenumberOptionalPage size (default 10)

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
dataobject []Optional
chainIdnumberOptionalChain ID
userAddressstringOptionalUser wallet address
marginAddressstringOptionalMargin currency address
amountnumberOptionalDeposit amount
statusnumberOptionalWithdrawal status: 0 Processing, 1 Processed successfully, 2 Processing failed
txidstringOptionalDeposit on-chain hash
blockExplorerUrlstringOptionalBlockchain explorer URL, e.g. https://polygonscan.com
depositTimenumberOptionalDeposit on-chain time, millisecond timestamp

User Signature Authentication

Basic Info

/dex/v1/user/auth POST

API Description:

New signatureType parameter added
2 EIP712 structured signature
3 ethSign legacy signature, pass 3 to continue using the legacy version

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberRequiredChain ID
userAddressstringRequiredUser wallet address
signatureTypeintegerRequiredSignature type: 2 EIP712, 3 ethSign
rstringRequiredETH signature r
sstringRequiredETH signature s
vstringRequiredETH signature v
invitedCodestringOptionalReferrer invitation code

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
dataobjectOptional
tokenstringOptional

Query Futures Trading Settings

Basic Info

/dex/v1/user/futures_ext_info POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
contractIdstringRequiredContract ID

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
dataobjectOptional
positionModelnumberOptionalPosition type: 1 One-way position
coUnitnumberOptionalPC page order confirmation popup switch: 0 Enabled, 1 Disabled
pcSecondConfirmnumberOptionalContract unit: 1 Base currency, 2 Contracts
nowLevelstringRequiredLeverage multiplier
leverOriginCeilingstringRequired
priceBasisstringRequiredPrice basis: 0 Latest price, 1 Mark price
conditionExpiredTimestringRequiredConditional order expiration time

Save Futures Trading Settings

Basic Info

/dex/v1/user/save_futures_ext POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
coUnitnumberOptionalContract unit: 1 Base currency, 2 Contracts
pcSecondConfirmnumberOptionalPC page order confirmation popup switch: 0 Enabled, 1 Disabled
priceBasisstringRequired
conditionExpiredTimestringRequiredConditional order expiration time

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
datanullOptional

Contract Market Price

Basic Info

/dex/v1/future/public_market_info POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
contractIdstringRequiredGet ID from contract endpoint

Response Data

NameTypeRequiredDescription
codestringOptional
msgstringOptional
dataobjectOptional
currentFundRatenumberOptionalCurrent funding rate
indexPricenumberOptionalIndex price
tagPricenumberOptionalMark price
nextFundRatenumberOptionalPredicted next funding rate

Modify Current Leverage

Basic Info

/dex/v1/future/level_edit POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
contractIdstringRequiredContract ID
nowLevelnumberRequiredLeverage multiplier

Response Data

NameTypeRequiredDescription
codestringOptional
msgstringOptional
datanullOptional
succbooleanOptional

Query Current Leverage

Basic Info

/dex/v1/future/level POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
contractIdstringRequiredContract ID

Response Data

NameTypeRequiredDescription
codestringOptional
msgstringOptional
dataobjectOptional
nowLevelstringOptionalLeverage multiplier

Deposit/Increase Margin

Basic Info

/dex/v1/futures/margin/increase POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
accountstringOptionalWallet address
amountstringRequiredDeposit USDT amount

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
dataobjectOptional
recordHashnumberOptional

Sync Deposit Margin On-chain Transaction

Basic Info

/dex/v1/futures/margin/sync_increase_margin POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptional
accountstringOptional
recordHashstringRequiredReturned from increase endpoint
txidstringRequiredOn-chain transaction hash

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
datanullOptional

Estimate Withdrawal Fee

Basic Info

/dex/v1/futures/margin/estimate_decrease_fee POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptional

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
dataobjectOptional
decreaseFeestringOptional

Withdraw/Decrease Margin

Basic Info

/dex/v1/futures/margin/decrease POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
accountstringOptionalWallet address
amountstringRequiredWithdrawal USDT amount

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
datanullOptional

Query Margin Withdrawal Status

Basic Info

/dex/v1/futures/margin/decrease_status POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
recordHashstringRequiredWithdrawal hash

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
dataobjectOptional
statusnumberOptionalWithdrawal status: 0 Withdrawing, 1 Withdrawal completed

User Withdrawal Records

Basic Info

/dex/v1/futures/margin/decrease_records POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
accountstringOptionalWallet address
pagenumberOptionalPage number (default 1)
sizenumberOptionalPage size (default 10)

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
dataobject []Optional
chainIdnumberOptionalChain ID
userAddressstringOptionalUser wallet address
marginAddressstringOptionalMargin currency address
amountnumberOptionalWithdrawal amount (actual received amount when withdrawal is completed = withdrawal amount - fee)
feenumberOptionalFee
statusnumberOptionalWithdrawal status: 0 Withdrawing, 1 Withdrawal completed, 2 Withdrawal failed
txidstringOptionalWithdrawal on-chain hash
blockExplorerUrlstringOptionalBlockchain explorer URL, e.g. https://polygonscan.com
withdrawTimenumberOptionalWithdrawal time, millisecond timestamp

Create Order (Open/Close Position)

Basic Info

/dex/v1/future/order POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
accountstringOptionalWallet address
contractNamestringRequiredContract name, e.g. BTC-USDT
volumenumberRequiredOrder quantity (contracts), for market orders opening positions this value unit is in notional value
pricenumberRequiredOrder price (0 for market orders)
typestringRequiredOrder type: MARKET / LIMIT
sidestringRequiredBuy/sell direction: BUY / SELL
openstringRequiredOpen/close direction: OPEN / CLOSE
positionTypestringRequiredPosition type: 1 Cross margin / 2 Isolated margin
clientOrderIdstringOptionalClient order ID, max 32 characters
timeInForcestringOptionalGTC / IOC / FOK / POST_ONLY

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
dataobjectOptional
orderIdstringOptional

Cancel Order

Basic Info

/dex/v1/future/cancel POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
accountstringRequiredUser address
orderIdstringRequiredOrder ID
contractNamestringRequiredContract name

Response Data

NameTypeRequiredDescription
codenumberOptional
msgstringOptional
datanullOptional

Contract Info

Basic Info

/dex/v1/future/contract POST

API Description:

{
"code":"0",
"msg":"success",
"data": {
"wsUrl":"ws://cows.dw2nn.com/kline-api/ws",
"marginCoinList": [
"BTC",
"EXUSD",
"USDT"
],
"contractList": [
{
"symbol":"BTC-USDT",
"contractOtherName":"BTCUSDT",
"contractShowType":"USDT Contract",
"contractType":"E",
"maxLever":125,
"deliveryKind":"0",
"multiplierCoin":"BTC",
"marginRate":1.00000000,
"quote":"USDT",
"contractName":"E-BTC-USDT",
"id":127,
"coinResultVo": {
"depth": [
"1",
"0"
],
"marginCoinPrecision":4,
"fundsOutStatus":1,
"maxMarketVolume":50000,
"symbolPricePrecision":1,
"minOrderVolume":1,
"minOrderMoney":10.5550000000000000,
"maxMarketMoney":50000.0000000000000000,
"maxLimitMoney":200000.0000000000000000,
"fundsInStatus":1,
"priceRange":0.5000000000,
"maxLimitVolume":50000
},
"settlementFrequency":1,
"contractSide":1,
"brokerId":1,
"originalCoin":"USDT",
"multiplier":0.0001000000000000,
"marginCoin":"USDT",
"sort":1,
"classification":1,
"capitalFrequency":8,
"subSymbol":"e_btcusdt",
"coType":"E",
"minLever":1,
"capitalStartTime":0,
"base":"BTC"
},
{
"symbol":"DOGE-USDT",
"contractOtherName":"DOGEUSDT",
"contractShowType":"USDT Contract",
"contractType":"E",
"maxLever":60,
"deliveryKind":"0",
"multiplierCoin":"DOGE",
"marginRate":1.00000000,
"quote":"USDT",
"contractName":"E-DOGE-USDT",
"id":146,
"coinResultVo": {
"depth": [
"6",
"4",
"2"
],
"marginCoinPrecision":4,
"fundsOutStatus":1,
"maxMarketVolume":99999999,
"symbolPricePrecision":6,
"minOrderVolume":1,
"minOrderMoney":3.0000010000000000,
"maxMarketMoney":99999999.0000000000000000,
"maxLimitMoney":999999.0000000000000000,
"fundsInStatus":1,
"priceRange":0.8000000000,
"maxLimitVolume":99999999
},
"settlementFrequency":1,
"contractSide":1,
"brokerId":1,
"originalCoin":"USDT",
"multiplier":1.0000000000000000,
"marginCoin":"USDT",
"sort":8,
"classification":1,
"capitalFrequency":8,
"subSymbol":"e_dogeusdt",
"coType":"E",
"minLever":1,
"capitalStartTime":0,
"base":"DOGE"
},
{
"symbol":"EOS-USDT",
"contractOtherName":"EOSUSDT",
"contractShowType":"USDT Contract",
"contractType":"E",
"maxLever":100,
"deliveryKind":"0",
"multiplierCoin":"EOS",
"marginRate":1.00000000,
"quote":"USDT",
"contractName":"E-EOS-USDT",
"id":135,
"coinResultVo": {
"depth": [
"3",
"1",
"0"
],
"marginCoinPrecision":4,
"fundsOutStatus":1,
"maxMarketVolume":250000,
"symbolPricePrecision":3,
"minOrderVolume":1,
"minOrderMoney":5.0000000000000000,
"maxMarketMoney":500000.0000000000000000,
"maxLimitMoney":2000000.0000000000000000,
"fundsInStatus":1,
"priceRange":0.5000000000,
"maxLimitVolume":300000
},
"settlementFrequency":1,
"contractSide":1,
"brokerId":1,
"originalCoin":"USDT",
"multiplier":1.0000000000000000,
"marginCoin":"USDT",
"sort":5,
"classification":1,
"capitalFrequency":8,
"subSymbol":"e_eosusdt",
"coType":"E",
"minLever":1,
"capitalStartTime":0,
"base":"EOS"
},
{
"symbol":"BTC-USDT",
"contractOtherName":"BTCEXUSD",
"contractShowType":"Demo Contract",
"contractType":"S",
"maxLever":125,
"deliveryKind":"0",
"multiplierCoin":"BTC",
"marginRate":1.00000000,
"quote":"USDT",
"contractName":"S-BTC-USDT",
"id":130,
"coinResultVo": {
"depth": [
"1",
"0"
],
"marginCoinPrecision":8,
"fundsOutStatus":0,
"maxMarketVolume":50000,
"symbolPricePrecision":1,
"minOrderVolume":1,
"minOrderMoney":10.5550000000000000,
"maxMarketMoney":50000.0000000000000000,
"maxLimitMoney":200000.0000000000000000,
"fundsInStatus":0,
"priceRange":0.5000000000,
"maxLimitVolume":50000
},
"settlementFrequency":1,
"contractSide":1,
"brokerId":1,
"originalCoin":"EXUSD",
"multiplier":0.0001000000000000,
"marginCoin":"EXUSD",
"sort":4,
"classification":4,
"capitalFrequency":8,
"subSymbol":"s_btcusdt",
"coType":"S",
"minLever":1,
"capitalStartTime":0,
"base":"BTC"
},
{
"symbol":"ETH-USDT",
"contractOtherName":"ETHUSDT",
"contractShowType":"USDT Contract",
"contractType":"E",
"maxLever":75,
"deliveryKind":"0",
"multiplierCoin":"ETH",
"marginRate":1.00000000,
"quote":"USDT",
"contractName":"E-ETH-USDT",
"id":128,
"coinResultVo": {
"depth": [
"1",
"0"
],
"marginCoinPrecision":4,
"fundsOutStatus":1,
"maxMarketVolume":20000,
"symbolPricePrecision":1,
"minOrderVolume":1,
"minOrderMoney":0.1000000000000000,
"maxMarketMoney":50000.0000000000000000,
"maxLimitMoney":50000.0000000000000000,
"fundsInStatus":1,
"priceRange":0.5000000000,
"maxLimitVolume":50000
},
"settlementFrequency":1,
"contractSide":1,
"brokerId":1,
"originalCoin":"USDT",
"multiplier":0.0100000000000000,
"marginCoin":"USDT",
"sort":2,
"classification":1,
"capitalFrequency":8,
"subSymbol":"e_ethusdt",
"coType":"E",
"minLever":1,
"capitalStartTime":0,
"base":"ETH"
},
{
"symbol":"BTC-USDT",
"contractOtherName":"H$1021-BTC-USDT",
"contractShowType":"Mixed Contract",
"contractType":"H1021",
"maxLever":125,
"deliveryKind":"0",
"multiplierCoin":"BTC",
"marginRate":1.00000000,
"quote":"USDT",
"contractName":"H$1021-BTC-USDT",
"id":142,
"coinResultVo": {
"depth": [
"1",
"0"
],
"marginCoinPrecision":4,
"fundsOutStatus":1,
"maxMarketVolume":50000,
"symbolPricePrecision":1,
"minOrderVolume":1,
"minOrderMoney":10.5550000000000000,
"maxMarketMoney":50000.0000000000000000,
"maxLimitMoney":200000.0000000000000000,
"fundsInStatus":1,
"priceRange":0.5000000000,
"maxLimitVolume":50000
},
"settlementFrequency":1,
"contractSide":1,
"brokerId":1021,
"originalCoin":"USDT",
"multiplier":0.0001000000000000,
"marginCoin":"USDT",
"sort":7,
"classification":1,
"capitalFrequency":2,
"subSymbol":"h1021_btcusdt",
"coType":"H",
"minLever":1,
"capitalStartTime":1,
"base":"BTC"
},
{
"symbol":"BTC-USD",
"contractOtherName":"BTCUSD",
"contractShowType":"Coin-margined Contract",
"contractType":"E",
"maxLever":125,
"deliveryKind":"0",
"multiplierCoin":"USD",
"marginRate":1.00000000,
"quote":"USD",
"contractName":"E-BTC-USD",
"id":129,
"coinResultVo": {
"depth": [
"1",
"0"
],
"marginCoinPrecision":8,
"fundsOutStatus":1,
"maxMarketVolume":500000,
"symbolPricePrecision":1,
"minOrderVolume":1,
"minOrderMoney":10.0000000000000000,
"maxMarketMoney":5000000.0000000000000000,
"maxLimitMoney":2000000.0000000000000000,
"fundsInStatus":1,
"priceRange":0.5000000000,
"maxLimitVolume":200000
},
"settlementFrequency":1,
"contractSide":0,
"brokerId":1,
"originalCoin":"BTC",
"multiplier":10.0000000000000000,
"marginCoin":"BTC",
"sort":3,
"classification":2,
"capitalFrequency":8,
"subSymbol":"e_btcusd",
"coType":"E",
"minLever":1,
"capitalStartTime":0,
"base":"BTC"
}
],
"currentTimeMillis":1675217617219,
"originalCoinList": [
"BTC",
"EXUSD",
"USDT"
],
"langList": [
{
"fileName":"",
"brokerId":1021,
"langKey":"en_US",
"backupFileAddress":"https://saas-oss.oss-cn-hongkong.aliyuncs.com/futures_lang_test/en_US_1.json",
"langName":"English",
"ctime":"2023-01-04T17:03:06",
"id":2020,
"sort":14,
"type":1,
"nowFileAddress":"http://dev-saas-oss.oss-cn-hongkong.aliyuncs.com/test-futures/20230105165643873.json",
"mtime":"2023-01-05T16:56:44",
"status":1
},
{
"fileName":"",
"brokerId":1021,
"langKey":"zh_CN",
"backupFileAddress":"https://saas-oss.oss-cn-hongkong.aliyuncs.com/futures_lang_test/zh_CN_1.json",
"langName":"Simplified Chinese",
"ctime":"2023-01-04T17:03:06",
"id":2023,
"sort":17,
"type":1,
"nowFileAddress":"https://saas-oss.oss-cn-hongkong.aliyuncs.com/futures_lang_test/zh_CN_1.json",
"mtime":"2023-01-04T17:03:06",
"status":1
}
],
"contractProInfo":"https://futuresdoc.gitbook.io/help-center/v/en/"
}
}

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription

Response Data

NameTypeRequiredDescription
codestringRequired
msgstringRequired

Current Orders (Deprecated)

Basic Info

/dex/v1/future/openOrdersCount POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
accountstringOptionalWallet address
contractNamestringOptionalContract name

Response Data

NameTypeRequiredDescription
codestringRequired
msgstringRequired
dataobjectRequired
listobject []Required
orderIdstringRequiredOrder ID (system generated)
contractNamestringRequiredContract name
pricestringRequiredOrder price
origQtystringRequiredOrder quantity
executedQtystringRequiredFilled order quantity
avgPricestringRequiredAverage filled price of the order
typestringRequiredOrder type. Possible values: LIMIT and MARKET
sidestringRequiredOrder direction. Possible values: BUY (buy/long) and SELL (sell/short)
statusstringRequiredOrder status. Possible values: NEW (new order, no fills), PARTIALLY_FILLED (partially filled), FILLED (fully filled), CANCELED (cancelled), and REJECTED (order rejected).
actionstringRequiredOPEN/CLOSE
transactTimenumberRequiredOrder creation time

Order History

Basic Info

/dex/v1/future/orderHistorical POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberRequiredChain ID
accountstringRequiredWallet address
contractNamestringRequiredContract name
pagenumberOptionalPage number
limitnumberOptionalPage size

Response Data

NameTypeRequiredDescription
codestringRequired
msgstringRequired
dataobjectRequired
listobject []Required
orderIdstringRequiredOrder ID (system generated)
contractNamestringRequiredContract name
pricestringRequiredOrder price
origQtystringRequiredOrder quantity
executedQtystringRequiredFilled order quantity
avgPricestringRequiredAverage filled price of the order
typestringRequiredOrder type. Possible values: LIMIT and MARKET
sidestringRequiredOrder direction. Possible values: BUY (buy/long) and SELL (sell/short)
statusstringRequiredOrder status. Possible values: NEW (new order, no fills), PARTIALLY_FILLED (partially filled), FILLED (fully filled), CANCELED (cancelled), and REJECTED (order rejected).
actionstringRequiredOPEN/CLOSE
transactTimenumberRequiredOrder creation time

PnL Records

Basic Info

/dex/v1/future/profitHistorical POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberRequiredChain ID
accountstringRequiredWallet address
contractNamestringOptionalContract name
fromIdstringOptionalStart retrieving from this record
limitnumberOptionalPage size

Response Data

NameTypeRequiredDescription
codestringRequired
msgstringRequired
dataobjectRequired
listobject []Required
idstringRequired
contractIdstringRequiredContract ID
positionTypestringRequired
leverageLevelstringRequired
sidestringRequired
volumestringRequired
openPricestringRequired
openEndPricestringRequired
realizedAmountstringRequired
historyRealizedAmountstringRequired
tradeFeestringRequired
capitalFeestringRequired
closeProfitstringRequired
settleProfitstringRequired
shareAmountstringRequired
ctimestringRequired

Trade Records (Deprecated)

Basic Info

/dex/v1/future/tradesRecord POST

API Description:

Request Parameters

Headers

Parameter Name Parameter Value Required Example Description
Content-Type application/json Yes

Body

NameTypeRequiredDescription
chainIdnumberOptionalChain ID
accountstringOptionalWallet address
contractNamestringRequiredContract name
pagenumberOptionalPage number
limitnumberOptionalPage size

Response Data

NameTypeRequiredDescription
codestringRequired
msgstringRequired
dataobjectRequired
listobject []Required
symbolstringRequiredCurrency name (trading pair)
tradeIdstringRequiredTrade ID
bidIdstringRequiredBuyer order ID
askIdstringRequiredSeller order ID
bidUserIdstringRequiredBuyer user ID
askUserIdstringRequiredSeller user ID
pricestringRequiredTrade price
qtystringRequiredTrade quantity
amountstringRequiredTrade amount
timestringRequiredTrade timestamp
feestringRequiredTrading fee
sidestringRequiredCurrent order direction: BUY Buy, SELL Sell
contractNamestringRequiredContract name
isMakerstringRequiredWhether maker
isBuyerstringRequiredWhether buyer

User Permission Signature Guide

User Permission Signature Guide

Note: This is an informational document, not a callable API endpoint.

When **signatureType** is 3:

Rules for generating the r, s, v signature parameters in the user signature authentication endpoint

Signature calculation rules:

The string to be signed consists of the following 3 parts:

1. Fixed prefix 0x1901

2. Domain information

Consists of 4 parameters in the following order, each 64 bits, padded with zeros on the left if insufficient; values are in hexadecimal

"c2f8787176b8ac6bf7215b4adcc1e069bf4ab82d9ab1df05a57a91d425935b6e"
Hash.sha3(Numeric.toHexString("Dex".getBytes())))
Hash.sha3(Numeric.toHexString("1.0.0".getBytes())))
chainId

The chainId uses different data depending on the chain; concatenate the above 4 parameters and perform a hash calculation

3. User authentication structure parameter information

Consists of 3 parameters in the following order, each 64 bits, padded with zeros on the left if insufficient; values are in hexadecimal

"2540efc69c85c5b2f84446a1811ad6b635ebacdd63315e05cc65bfd0e22c2be5"
Hash.sha3(Numeric.toHexString("Enable Trading".getBytes()))
signDomain

The signDomain is based on the domain parameter returned by the public_info endpoint; concatenate the above 3 parameters and perform a hash calculation

String to sign = Fixed prefix + Domain information + User authentication structure parameter information. Note that during concatenation the 0x prefix should only appear once at the leftmost position; then sign using the eth_sign method, you can use web3.eth.personal.sign

Signature demo reference (Java):

// userAddress private key
private static Credentials credentials = Credentials.create("");



public static void main(String[] args){
   Long chainId = 1;
   String signDomain = "saas-dex.com";



   List<Type> structInputParameters = Arrays.asList(
       new Bytes32(Numeric.hexStringToByteArray("0x2540efc69c85c5b2f84446a1811ad6b635ebacdd63315e05cc65bfd0e22c2be5")),
       new Bytes32(Numeric.hexStringToByteArray(Hash.sha3(Numeric.toHexString("Enable Trading".getBytes())))));
       new Bytes32(Numeric.hexStringToByteArray(Hash.sha3(Numeric.toHexString(signDomain.getBytes())))));
   String structEncodeParametersHash = Hash.sha3(new DefaultFunctionEncoder().encodeParameters(structInputParameters));



   List<Type> eip712DomainInputParameters = Arrays.asList(
       new Bytes32(Numeric.hexStringToByteArray("0xc2f8787176b8ac6bf7215b4adcc1e069bf4ab82d9ab1df05a57a91d425935b6e")),
       new Bytes32(Numeric.hexStringToByteArray(Hash.sha3(Numeric.toHexString("Dex".getBytes())))),
       new Bytes32(Numeric.hexStringToByteArray(Hash.sha3(Numeric.toHexString("1.0.0".getBytes())))),
       new Uint(new BigInteger(chainId.toString())));
   String eip712DomainEncodeParametersHash = Hash.sha3(new DefaultFunctionEncoder().encodeParameters(eip712DomainInputParameters));



   String eip712Hash = Hash.sha3("0x1901"+ Numeric.cleanHexPrefix(eip712DomainEncodeParametersHash) + Numeric.cleanHexPrefix(structEncodeParametersHash));



   Sign.SignatureData signMessage = Sign.signPrefixedMessage(Numeric.hexStringToByteArray(eip712Hash), credentials.getEcKeyPair());
   logger.info("signature v:{} r:{} s:{}", new BigInteger(Numeric.cleanHexPrefix(Numeric.toHexString(signMessage.getV())), 16), Numeric.toHexString(signMessage.getR()), Numeric.toHexString(signMessage.getS()));
}

Maven dependency:

<dependency>
   <groupId>org.web3j</groupId>
   <artifactId>core</artifactId>
   <version>4.5.11</version>
</dependency>

When **signatureType** is 2:

Rules for generating the r, s, v signature parameters in the user signature authentication endpoint

Simply use the eth_signTypedData_v4 method to sign

Signature data is as follows:

const typedData = {
    types: {
      EIP712Domain: [
        { name: 'name', type: 'string' },
        { name: 'version', type: 'string' },
        { name: 'chainId', type: 'uint256' },
      ],
      UserAuth: [
        { type: 'string', name: 'action' },
        { type: 'string', name: 'signDomain' },
      ],
    },
    domain: {
      name: 'Dex',
      version: '1.0.0',
      chainId: '80001',
    },
    primaryType: 'UserAuth',
    message: {
      action: 'Enable Trading',
      signDomain: 'saas-dex.com',
    },
  };

Note: 1. The chainId in domain should match the specific chain being used

2. The action in message is fixed, signDomain uses the parameter returned by the public_info endpoint