合约接口
Path parameters
symbolstringRequired
Body
crossbooleanOptional
仓位类型:true=全仓,false=逐仓
leverageinteger · int32Optional
仓位杠杆率:1~上限
Responses
200
OK
application/json
Responsestring
post
POST /v1/contracts/positions/{symbol}/settings HTTP/1.1
Host: dex-api.benpay.com
Content-Type: application/json
Accept: */*
Content-Length: 27
{
"cross": true,
"leverage": 1
}
200
OK
text
Path parameters
symbolstringRequired
Body
addMarginnumberOptional
增加或移除的保证金,负数表示移除
Responses
200
OK
application/json
Responsestring
post
POST /v1/contracts/positions/{symbol}/margin HTTP/1.1
Host: dex-api.benpay.com
Content-Type: application/json
Accept: */*
Content-Length: 15
{
"addMargin": 1
}
200
OK
text
Body
clientOrderIdstringOptional
客户端自定义OrderID,可不填
typestring · enumOptionalPossible values:
订单类型: LIMIT=限价单, MARKET=市价单
directionstring · enumOptionalPossible values:
订单方向:LONG, SHORT
symbolstringOptional
订单交易对,例如:XBTC
pricenumberOptional
订单价格
quantitynumberOptional
订单数量
fillOrKillbooleanOptional
FOK(Fill or Kill)标志:完全成交或全部取消
immediateOrCancelbooleanOptional
IOC(Immediate or Cancel)标志:立即执行或取消
postOnlybooleanOptional
PostOnly标志:仅做市
hiddenbooleanOptional
Hidden标志:是否隐藏
reduceOnlybooleanOptional
ReduceOnly标志:仅减仓,不会反向开仓
Responses
200
OK
application/json
Responsestring
post
POST /v1/contracts/orders HTTP/1.1
Host: dex-api.benpay.com
Content-Type: application/json
Accept: */*
Content-Length: 188
{
"clientOrderId": "text",
"type": "LIMIT",
"direction": "LONG",
"symbol": "text",
"price": 1,
"quantity": 1,
"fillOrKill": true,
"immediateOrCancel": true,
"postOnly": true,
"hidden": true,
"reduceOnly": true
}
200
OK
text
Responses
200
OK
*/*
get
GET /v1/contracts/positions HTTP/1.1
Host: dex-api.benpay.com
Accept: */*
200
OK
{
"success": true,
"data": [
{
"id": "text",
"symbolId": 1,
"userId": 1,
"cross": true,
"leverage": 1,
"riskLevel": 1,
"maxQuantity": 1,
"margin": 1,
"realizedPNL": 1,
"symbol": "text",
"liquidationPrice": 1,
"createdAt": 1,
"updatedAt": 1,
"direction": "LONG",
"quantity": 1,
"entryPrice": 1,
"minimumMaintenanceMarginRate": 1,
"empty": true
}
],
"error": "text",
"errorField": "text",
"errorMessage": "text"
}
Path parameters
symbolstringRequired
Responses
200
OK
*/*
get
GET /v1/contracts/positions/{symbol} HTTP/1.1
Host: dex-api.benpay.com
Accept: */*
200
OK
{
"success": true,
"data": {
"id": "text",
"symbolId": 1,
"userId": 1,
"cross": true,
"leverage": 1,
"riskLevel": 1,
"maxQuantity": 1,
"margin": 1,
"realizedPNL": 1,
"symbol": "text",
"liquidationPrice": 1,
"createdAt": 1,
"updatedAt": 1,
"direction": "LONG",
"quantity": 1,
"entryPrice": 1,
"minimumMaintenanceMarginRate": 1,
"empty": true
},
"error": "text",
"errorField": "text",
"errorMessage": "text"
}
Path parameters
orderIdinteger · int64Required
Responses
200
OK
*/*
get
GET /v1/contracts/orders/{orderId} HTTP/1.1
Host: dex-api.benpay.com
Accept: */*
200
OK
{
"success": true,
"data": {
"id": 1,
"clientOrderId": "text",
"sequenceId": 1,
"baseCurrencyId": 1,
"quoteCurrencyId": 1,
"userId": 1,
"symbolId": 1,
"quantity": 1,
"unfilledQuantity": 1,
"type": "LIMIT",
"status": "PENDING",
"direction": "LONG",
"features": 1,
"fillPrice": 1,
"price": 1,
"makerFeeRate": 1,
"takerFeeRate": 1,
"fee": 1,
"createdAt": 1,
"updatedAt": 1,
"frozenMargin": 1,
"frozenQuantity": 1,
"finalStatus": true
},
"error": "text",
"errorField": "text",
"errorMessage": "text"
}
Path parameters
orderIdinteger · int64Required
Responses
200
OK
*/*
get
GET /v1/contracts/orders/{orderId}/matches HTTP/1.1
Host: dex-api.benpay.com
Accept: */*
200
OK
{
"success": true,
"data": [
{
"taker": true,
"price": 1,
"quantity": 1,
"fee": 1,
"createdAt": 1
}
],
"error": "text",
"errorField": "text",
"errorMessage": "text"
}
Responses
200
OK
*/*
get
GET /v1/contracts/orders/open HTTP/1.1
Host: dex-api.benpay.com
Accept: */*
200
OK
{
"success": true,
"data": [
{
"id": 1,
"clientOrderId": "text",
"sequenceId": 1,
"baseCurrencyId": 1,
"quoteCurrencyId": 1,
"userId": 1,
"symbolId": 1,
"quantity": 1,
"unfilledQuantity": 1,
"type": "LIMIT",
"status": "PENDING",
"direction": "LONG",
"features": 1,
"fillPrice": 1,
"price": 1,
"makerFeeRate": 1,
"takerFeeRate": 1,
"fee": 1,
"createdAt": 1,
"updatedAt": 1,
"frozenMargin": 1,
"frozenQuantity": 1,
"finalStatus": true
}
],
"error": "text",
"errorField": "text",
"errorMessage": "text"
}
Path parameters
orderIdinteger · int64Required
Responses
200
OK
*/*
get
GET /v1/contracts/orders/open/{orderId} HTTP/1.1
Host: dex-api.benpay.com
Accept: */*
200
OK
{
"success": true,
"data": {
"id": 1,
"clientOrderId": "text",
"sequenceId": 1,
"baseCurrencyId": 1,
"quoteCurrencyId": 1,
"userId": 1,
"symbolId": 1,
"quantity": 1,
"unfilledQuantity": 1,
"type": "LIMIT",
"status": "PENDING",
"direction": "LONG",
"features": 1,
"fillPrice": 1,
"price": 1,
"makerFeeRate": 1,
"takerFeeRate": 1,
"fee": 1,
"createdAt": 1,
"updatedAt": 1,
"frozenMargin": 1,
"frozenQuantity": 1,
"finalStatus": true
},
"error": "text",
"errorField": "text",
"errorMessage": "text"
}
Query parameters
rangestringOptionalDefault:
""
symbolstringOptionalDefault:
""
offsetIdinteger · int64OptionalDefault:
0
limitinteger · int32OptionalDefault:
100
Responses
200
OK
*/*
get
GET /v1/contracts/orders/closed HTTP/1.1
Host: dex-api.benpay.com
Accept: */*
200
OK
{
"success": true,
"data": {
"hasMore": true,
"nextOffsetId": 1,
"results": [
{
"id": 1,
"clientOrderId": "text",
"sequenceId": 1,
"baseCurrencyId": 1,
"quoteCurrencyId": 1,
"userId": 1,
"symbolId": 1,
"quantity": 1,
"unfilledQuantity": 1,
"type": "LIMIT",
"status": "PENDING",
"direction": "LONG",
"features": 1,
"fillPrice": 1,
"price": 1,
"makerFeeRate": 1,
"takerFeeRate": 1,
"fee": 1,
"createdAt": 1,
"updatedAt": 1,
"frozenMargin": 1,
"frozenQuantity": 1,
"finalStatus": true
}
],
"range": "text"
},
"error": "text",
"errorField": "text",
"errorMessage": "text"
}
Query parameters
rangestringOptionalExample:
查询范围(数据分片)
202502
symbolstringOptionalExample:
交易对名称
XBTC
directionstringOptionalExample:
方向.LONG/SHORT/空字符串
LONG
fromMillisnumberOptionalDefault:
起始时间毫秒数
0L
Example: 1738339200000
toMillisnumberOptionalDefault:
结束时间毫秒数
0L
Example: 1739894400000
offsetIdnumberOptionalDefault:
订单id偏移量(上次查询返回的nextOffsetId)
0
Example: 0
limitnumberOptionalDefault:
分页大小
0
Example: 100
Responses
200
OK
*/*
get
GET /v1/contracts/match/clearings HTTP/1.1
Host: dex-api.benpay.com
Accept: */*
200
OK
{
"success": true,
"data": {
"hasMore": true,
"nextOffsetId": 1,
"results": [
{
"orderId": 1,
"counterOrderId": 1,
"type": "TAKER",
"sequenceId": 1,
"userId": 1,
"counterUserId": 1,
"symbolId": 1,
"price": 1,
"quantity": 1,
"direction": "LONG",
"feeCurrencyId": 1,
"fee": 1,
"orderCreatedAt": 1,
"createdAt": 1
}
],
"range": "text"
},
"error": "text",
"errorField": "text",
"errorMessage": "text"
}
Query parameters
rangestringOptionalExample:
查询范围(数据分片)
202502
fromMillisnumberOptionalDefault:
起始时间毫秒数
0L
Example: 1738339200000
toMillisnumberOptionalDefault:
结束时间毫秒数
0L
Example: 1739894400000
offsetIdstringOptionalDefault:
订单id偏移量(上次查询返回的nextOffsetId)
0
Example: 0
limitnumberOptionalDefault:
分页大小
0
Example: 100
Responses
200
OK
*/*
get
GET /v1/contracts/fund/flows HTTP/1.1
Host: dex-api.benpay.com
Accept: */*
200
OK
{
"success": true,
"data": {
"hasMore": true,
"nextOffsetId": "text",
"results": [
{
"createdAt": 1,
"type": "text",
"changed": 1,
"currencyId": 1,
"symbolId": 1
}
],
"range": "text"
},
"error": "text",
"errorField": "text",
"errorMessage": "text"
}
Query parameters
symbolstringOptionalDefault:
""
timestampinteger · int64OptionalDefault:
0
Responses
200
OK
*/*
get
GET /v1/contracts/fee/rate HTTP/1.1
Host: dex-api.benpay.com
Accept: */*
200
OK
{
"success": true,
"data": {
"taker": 1,
"maker": 1,
"timestamp": 1
},
"error": "text",
"errorField": "text",
"errorMessage": "text"
}
Query parameters
rangestringOptionalDefault:
""
symbolstringOptionalDefault:
""
typestringOptionalDefault:
""
directionstringOptional
offsetIdinteger · int64OptionalDefault:
0
limitinteger · int32OptionalDefault:
100
Responses
200
OK
*/*
get
GET /v1/contracts/clearings/positions HTTP/1.1
Host: dex-api.benpay.com
Accept: */*
200
OK
{
"success": true,
"data": {
"hasMore": true,
"nextOffsetId": 1,
"results": [
{
"id": 1,
"orderId": 1,
"counterOrderId": 1,
"userId": 1,
"counterUserId": 1,
"symbolId": 1,
"sequenceId": 1,
"direction": "LONG",
"type": "OPEN",
"clearingPrice": 1,
"fee": 1,
"rate": 1,
"quantityChanged": 1,
"quantityAfterClearing": 1,
"realizedPNLChanged": 1,
"createdAt": 1
}
],
"range": "text"
},
"error": "text",
"errorField": "text",
"errorMessage": "text"
}
Last updated