现货交易(做市商)
做市商用户现货交易使用的API
API 介绍
接入准备
交易对
交易对由基础币种和报价币种组成。以交易对 BTC/USDT 为例,BTC 为商品币种,USDT 为计价币种。
申请API Key
创建成功后请务必记住以下信息:
Access Key
API 访问密钥Secret Key
签名认证加密所使用的密钥(仅申请时可见)
接口鉴权
公共接口可用于获取基础信息和行情数据。公共接口无需认证即可调用。
私有接口可用于交易管理和账户管理。每个私有请求必须使用您的API Key进行签名验证。
接入URL
REST API
https://api.hibt0.co/open-api
签名认证
API 请求在通过 internet 传输的过程中极有可能被篡改,为了确保请求未被更改,除公共接口(基础信息,行情数据)外的私有接口均必须使用您的 API Key 做加密处理,以校验参数或参数值在传输途中是否发生了更改。 每一个API Key需要有适当的权限才能访问相应的接口,每个新创建的API Key都需要分配权限。在使用接口前,请查看每个接口的权限类型,并确认你的API Key有相应的权限。
一个合法的请求所需要的内容:
方法请求地址:即访问服务器地址 https://api.hibt0.com/open-api。
API 访问密钥(X-ACCESS-KEY):您申请的 API Key 中的 Access Key。
必选和可选参数:每个方法都有一组用于定义 API 调用的必需参数和可选参数。可以在每个方法的说明中查看这些参数及其含义。
签名:加密计算得出的值,用于确保签名有效和未被篡改,为了您 API Key 的安全,一次参数签名 5 分钟后会过期。
签名必要参数**:需要签名认证的接口,必须添加 reqTime 参数(传值为服务器最新时间,可通过
/v1/common/systemTime
接口获取)。
加密方式
规范要计算签名的请求 因为使用 HMAC 进行签名计算时,使用不同内容计算得到的结果会完全不同。所以在进行签名计算前,请先对请求进行规范化处理。下面以查询某订单详情请求为例进行说明:
下单请求URL
对参数按照ASCII码顺序进行排序
将排完序的请求参数使用secretKey 进行HMAC SHA256进行加密,得到的结果
构建 http 请求使用
使用 X-ACCESS-KEY 存储access key信息,并在 header 中进行参数传递
使用 X-SIGNATURE 存储生成的签名信息,并在 header 中进行参数传递
请求方式
目前只有两种方法:GET和POST
GET请求:所有的参数都在路径参数里
POST请求,所有参数以form-data格式发送在请求主体(body)里
返回格式
所有的接口都是JSON格式。在JSON最上层有三个字段:message
, code
和 data
。前两个字段表示请求状态和信息,实际的业务数据在data
字段里。
常见错误码
1xxx(访问失败类)
2xxx(业务失败类)
0
成功
1001
接口请求限流
1101
API Key鉴权失败
1102
密钥解密失败
1103
访问 IP 不在白名单内
2001
参数为空
2002
时间范围错误
2003
请求时间参数为空
2004
请求时间已过期
2101
账户不存在
2102
API Key不存在
2103
交易对不存在
2201
用户 API Key 被禁用
2202
IP 被禁用
9999
其他异常,具体参照 message 内容
现货接口
基础信息接口
服务器时间
HTTP 请求
GET /v1/common/systemTime
鉴权:否
限流:50次/1秒
请求参数
此接口不接受任何参数。
返回字段
所有交易对信息
HTTP 请求
GET /v1/common/symbols
鉴权:否
限流:5次/1秒
请求参数
此接口不接受任何参数。
返回字段
symbol
string
交易对
baseCoinScale
integer
计价币数量精度
coinScale
integer
商品币数量精度
priceScale
integer
价格精度
baseSymbol
string
基础币
coinSymbol
string
计价币
minTurnover
decimal
最小挂单成交额
minVolume
decimal
最小下单量
maxVolume
decimal
最大下单量
enable
integer
是否支持交易(0-否;1-是)
行情接口
最新成交价
此接口提供交易对当前最新成交价
HTTP 请求
GET /v1/market/ticker/price
鉴权:否
限流:10次/1秒
请求参数
symbol
string
true
交易对
返回字段
tickerPrice
decimal
最新成交价
深度数据
此接口返回指定交易对的当前深度数据。
HTTP 请求
GET /v1/market/depth
鉴权:否
限流:10次/1秒
请求参数
symbol
string
true
交易对
depth
integer
true
返回深度的数量
最大 50 档
返回字段
symbol
string
交易对
bids
array
买盘深度列表
asks
array
买盘深度列表
timestamp
datetime
时间
账户接口
账户余额
此接口返回指定交易对的当前深度数据。
HTTP 请求
POST /v1/account/balance
鉴权:是
限流:5次/1秒
请求参数
coin
string
false
币种
返回字段
coin
string
币种
balance
decimal
余额
frozenBalance
decimal
冻结余额
isLock
string
是否锁定
交易接口
未完成挂单
HTTP 请求
POST /v1/trade/openOrder
鉴权:是
限流:10次/1秒
请求参数
symbol
string
true
交易对
direction
integer
true
订单方向(0-买;1-卖)
返回字段
orderId
string
挂单 ID
clOrdId
string
客户自定义订单ID
price
decimal
订单价格
avgPrice
decimal
成交均价
amount
decimal
买盘深度列表
tradedAmount
decimal
已成交数量
turnover
decimal
交易额(已成交数量*成交价格)
symbol
string
交易对
baseSymbol
string
计价币种
coinSymbol
string
商品币种
direction
integer
方向(0-买;1-卖)
status
integer
状态(0-交易中;1-完成;2-取消;3-超时;4-部分成交;)
type
integer
类型(0-市价;1-限价;)
completedTime
long
订单完成时间
canceledTime
long
订单取消时间
time
long
订单创建时间
历史挂单(范围 3 个月)
HTTP 请求
POST /v1/trade/history
鉴权:是
限流:10次/1秒
请求参数
symbol
string
true
交易对
startTime
long
true
开始时间(ms)
endTime
long
true
结束时间(ms)
返回字段
orderId
string
挂单 ID
clOrdId
string
客户自定义订单ID
price
decimal
订单价格
avgPrice
decimal
成交均价
amount
decimal
买盘深度列表
tradedAmount
decimal
已成交数量
turnover
decimal
交易额(已成交数量*成交价格)
symbol
string
交易对
baseSymbol
string
计价币种
coinSymbol
string
商品币种
direction
integer
方向(0-买;1-卖)
status
integer
状态(0-交易中;1-完成;2-取消;3-超时;4-部分成交;)
type
integer
类型(0-市价;1-限价;)
completedTime
long
订单完成时间
canceledTime
long
订单取消时间
time
long
订单创建时间
下单
HTTP 请求
POST /v1/trade/order
鉴权:是
限流:20次/1秒
请求参数
symbol
string
true
交易对
price
decimal
true
价格(市价单传 0 即可)
amount
decimal
true
数量(市价买单:表示 需要买入的交易额,以USDT 为单位;市价卖单:表示需要卖出的商品币数量;)
direction
integer
true
方向(0-买;1-卖)
type
integer
true
类型(0-市价;1-限价)
返回字段
data
string
挂单 ID
撤销
HTTP 请求
POST /v1/trade/cancel
鉴权:是
限流:20次/1秒
请求参数
symbol
string
true
交易对
orderId
string
true
订单 ID
返回字段
Last updated