更新日志
2023-05-22
- “用户历史持仓”
- “查询仓位调整历史记录”
- “查询仓位结算历史记录”
2023-03-16
- “获取用户合约市场配置”
- “修改用户合约市场配置”
2023-02-22
- 支持合约浮盈加仓功能
2023-02-15
- 市价委托单相关接口新增委托单币种字段,支持指定币种下单
2023-02-08
- 新增”获取子账号列表“接口
- 新增”子账号通用资产划转“接口
- 新增”授权子账号“接口
- 新增”获取授权子账号列表“接口
- 新增”删除子账号授权“接口
- 更新”现货主账号-子账号资产划转“接口
POST /sub_account/transfer
:不再允许子账号调用
- 更新”获取主账号-子账号划转记录“接口
GET /sub_account/transfer/history
:增加请求参数start_time、end_time
2022-11-30
- 新增通过client_id查询、撤销委托单功能
2022-11-08
- 永续合约WebSocket新增”市场价格订阅、取消订阅”接口
2022-09-22
- GET /balance/coin/deposit 接口新增
tx_id
参数,支持使用交易ID过滤查询
2022-09-21
- 现货、永续合约WebSocket的”最新成交订阅”接口支持订阅用户所有市场的成交数据
2022-09-06
- 永续合约新增”查询仓位自动减仓历史记录“接口
2022-07-26
- 永续合约websocket新增”买一卖一“订阅
2022-07-01
- 新增”临时维护通知订阅“接口
2022-06-16
- 修改API限频规则
2022-06-15
- 新增修改普通委托单接口
- 新增修改计划委托单接口
2022-05-30
2022-04-20
- 新增API接口错误码
- 新增
X-Ratelimit-Limit
和X-Ratelimit-Remaining
请求头
2022-03-24
- GET /order/finished 接口新增
start_time
end_time
支持时间范围查询
2022-02-23
- /common/asset/config 接口增加返回字段withdrawal_precision
2022-02-11
- 新增API接口错误码
2022-01-14
- 新增创建子账号APIKEY接口
- 接口路径:
POST /sub_account/auth/api
- 接口路径:
- 新增获取子账号APIKEY列表接口
- 接口路径:
GET /sub_account/auth/api
- 接口路径:
- 新增获取子账号APIKEY详情接口
- 接口路径:
GET /sub_account/auth/api/<int:user_auth_id>
- 接口路径:
- 新增编辑子账号APIKEY接口
- 接口路径:
PUT /sub_account/auth/api/<int:user_auth_id>
- 接口路径:
- 新增删除子账号APIKEY接口
- 接口路径:
DELETE /sub_account/auth/api/<int:user_auth_id>
- 接口路径:
2021-12-27
- 新增临时维护信息查询接口
- 接口路径:
GET /common/temp-maintain/info
- 接口路径:
2021-12-17
- 新增修改账户设置接口
- 接口路径:
PUT /account/settings
- 备注:新增CET抵扣手续费设置功能
- 接口路径:
2021-12-14
- 新增创建子账号接口
- 接口路径:
POST /sub_account/register
- 接口路径:
- 新增冻结子账号接口
- 接口路径:
PUT /sub_account/frozen
- 接口路径:
- 新增解冻子账号接口
- 接口路径:
PUT /sub_account/unfrozen
- 接口路径:
2021-11-22
- 重构API文档
做市商简介
CoinEx 做市商即为专业交易者,只要符合以下标准,即可申请:
使用API交易,并且现货/合约月交易量达到5,000,000 USD的个人交易者或专业交易机构。
成为 CoinEx 做市商,可以享受以下权益:
- 交易权益
- 专属费率
- 专属提现额度
- 免息授信
- 稳定的API
- 交易返现
- 服务权益
- 专属大客户经理
- 7*24H客服支持
- 节日礼物关怀
- 做市商专属活动
CoinEx 保留对做市商申请的最终解释权
介绍
欢迎使用 CoinEx 开发者文档。
本文档概述了交易功能、市场行情和其他应用开发接口。CoinEx 提供的服务和功能都会在此文档中更新,请注意留意更新日志。
通过 API 文档,您可以查询对接口的解释说明,帮助您更容易理解,开发对应功能。
基本信息
- 基本 URL:
https://api.coinex.com/v1
- 所有 API 请求头都需要添加
Content-Type: "application/json"
和User-Agent
- 需要签名的 API 需要在请求头添加
authorization
- 请先检查Response的http状态码,确保状态码是200时,再解析Response
- 所有的 Request 和 Response 均以
json
的格式传输 - 账户和交易相关的 API 接口均需要签名,行情相关的 API 接口不需要签名
在签名之前,需要到CoinEx-个人中心-API 密钥创建新的 API 密钥
- Access_id: API 密钥 ID
- Secret_key: 用于对请求数据签名的密钥
Access_id 和 Secret_key 与您的账号密码的重要性是等同的,为了您的账号和资产安全,请妥善保管并定期更换密钥。一旦丢失密钥,请务必及时到 CoinEx 移除密钥。
- 每个 API 接口都有其对应的分组,每个分组都有对应的请求限制频率
我们根据每个分组的特性来设置的分组的限频。限频其实是分组的请求余量, 分组内每个接口的请求频率都会扣除每个分组的余量, 直到全部扣完,那么该分组内所有的接口请求将受到到限制。
eg: 对于现货下单&撤单的分组限频是120r/2s,如果 POST /order/limit 下限价单的接口请求的频率为40/2S, 那么该分组中其他接口(DELETE /order/pending, POST /order/market 等)的请求频率的余量就剩 80r/2s
1.IP维度限频规则
- 限频:400/s
2.账户维度限频规则(现货)
- 主账号和子账号分别限频,互不影响
接口类型 | 限频 | 包含的接口路径 |
---|---|---|
现货下单&撤单 | 60r/2s | POST /order/limit 下限价单 POST /order/market 下市价订单 POST /order/stop/limit 下计划限价单 POST /order/stop/market 下计划限价单 POST /order/ioc 立即成交或不能成交时取消下单 DELETE /order/pending 取消所有订单 DELETE /order/stop/pending/<int:order_id> 取消未成交的计划订单 POST /order/modify 修改普通委托单 POST /order/stop/modify 修改计划委托单 |
现货批量下单&撤单 | 20r/2s | POST /order/limit/batch 批量下限价单 DELETE /order/pending/batch 批量取消订单 DELETE /order/stop/pending 取消所有未成交的计划订单 |
现货查询订单 | 100r/2s | GET /order/status 查询订单状态 GET /order/status/batch 批量查询订单状态 GET /order/pending 查询未成交的订单 GET /order/stop/pending 查询未成交的计划订单 |
现货查询订单历史 | 20r/2s | GET /order/deals 查询已完成订单明细 GET /order/user/deals 查询用户成交记录 GET /order/finished 查询历史订单 GET /order/stop/finished 查询历史计划订单 |
现货账户改动 | 20r/2s | PUT /account/settings 修改账户设置 POST /margin/loan 在杠杆账户下贷款 POST /margin/flat 在杠杆账户下偿还代币 POST /margin/transfer 现货-杠杆账户资产划转 PUT /sub_account/frozen 冻结子账号 PUT /sub_account/unfrozen 解冻子账号 PUT /sub_account/auth/api/<int:user_auth_id> 编辑子账号APIKEY POST /sub_account/transfer 现货主账号-子账号资产划转 POST /sub_account/register 创建子账号 POST /sub_account/auth/api 创建子账号APIKEY DELETE /sub_account/auth/api/<int:user_auth_id> 删除子账号APIKEY PUT /balance/deposit/address/<string:coin_type> 更新充值地址 POST /balance/coin/withdraw 申请提现 DELETE /balance/coin/withdraw 取消提现 POST /contract/balance/transfer 现货-合约资产划转 |
现货账户查询 | 20r/2s | GET /balance/info 获取账户信息,适用于现货交易市场 GET /account/market/fee 获取交易费率 GET /account/amm/balance 获取AMM账户信息 GET /account/investment/balance 获取理财账户信息 GET /credit/info 获取账户授信信息 GET /credit/balance 获取账户授信余额 GET /sub_account/auth/api 获取子账号APIKEY列表 GET /sub_account/auth/api/<int:user_auth_id> 获取子账号APIKEY详情 GET /balance/deposit/address/<string:coin_type> 查询充值地址 |
现货账户历史数据查询 | 20r/2s | GET /balance/coin/withdraw 获取提现历史记录 GET /balance/coin/deposit 获取充值记录 GET /account/balance/history 查询用户流水 GET /investment/transfer/history 现货-理财账户转账记录 GET /margin/transfer/history 杠杆-现货账户划转记录 GET /margin/loan/history 获取杠杆账户借币记录 GET /contract/transfer/history 现货-合约账户划转记录 GET /sub_account/transfer/history 获取主账号-子账号划转记录 |
3.账户维度限频规则(合约)
- 主账号和子账号分别限频,互不影响
接口类型 | 限频 | 包含的接口路径 |
---|---|---|
合约下单&撤单 | 40r/2s | POST:/perpetual/v1/order/put_limit 下限价单 POST:/perpetual/v1/order/put_market 下市价单 POST:/perpetual/v1/order/put_stop_limit 下计划限价委托单 POST:/perpetual/v1/order/put_stop_market 下计划市价委托单 POST:/perpetual/v1/order/cancel 取消委托单 POST:/perpetual/v1/order/cancel_stop 取消计划委托单 POST:/perpetual/v1/order/close_limit 限价平仓 POST:/perpetual/v1/order/close_market 市价平仓 POST:/perpetual/v1/position/adjust_margin 调整仓位保证金 POST:/perpetual/v1/position/stop_loss 设置持仓止损 POST:/perpetual/v1/position/take_profit 设置持仓止盈 POST:/perpetual/v1/position/market_close 市价全平 POST:/perpetual/v1/order/modify 修改普通委托单 POST:/perpetual/v1/order/modify_stop 修改计划委托单 |
合约批量撤单 | 20r/2s | POST:/perpetual/v1/order/cancel_all 取消全部委托单 POST:/perpetual/v1/order/cancel_batch 批量取消委托单 POST:/perpetual/v1/order/cancel_stop_all 取消全部计划委托单 |
合约查询订单 | 100r/2s | GET:/perpetual/v1/order/pending 查询pending状态的委托单 GET:/perpetual/v1/order/stop_pending 查询pending状态的计划委托单 GET:/perpetual/v1/order/status 订单状态 GET:/perpetual/v1/order/stop_status 计划单状态 |
合约查询订单历史 | 20r/2s | GET:/perpetual/v1/order/finished 查询finished状态的委托单 GET:/perpetual/v1/order/stop_finished 查询finished状态的计划委托单 |
合约账户查询 | 20r/2s | GET:/perpetual/v1/asset/query 资产查询 GET:/perpetual/v1/position/funding 查询用户历史资金费率 GET:/perpetual/v1/position/pending 用户持仓 |
4.常见错误码及处理方式
常见错误码 | 建议处理方式 |
---|---|
35 | 服务暂时不可用,请稍后重试 |
213 | 触发限频,建议调整策略,降低请求频率 |
3008 | 服务间歇繁忙,请稍后重试 |
【返回示例】:
# POST请求
{
"access_id": "4DA36FFC61334695A66F8D29020EB589",
"market": "BTCBCH",
"type" : "buy",
"price": "10",
"amount": "1.0",
"tonce": 1513746038205
}
# GET请求
access_id=4DA36FFC61334695A66F8D29020EB589
&market=BTCBCH
&type=buy
&price=680
&amount=1.0
&tonce=1513746038205
# 排序后的GET/POST请求字符串加上secret_key
access_id=4DA36FFC61334695A66F8D29020EB589
&amount=1.0
&market=BTCBCH
&price=680
&tonce=1513746038205
&type=buy
&secret_key=B51068CF10B34E7789C374AB932696A05E0A629BE7BFC62F
- 每个接口都有自己的鉴权类型,鉴权类型决定了访问时应当进行何种鉴权。
- 需要签名的接口会在说明中指出,如果没有特殊声明默认为不需要签名。
- 如果需要鉴权,应当在 HTTP 头中以
authorization
字段传递。 access_id
与secret_key
是大小写敏感的。
签名步骤
- 按字母顺序将参数排序
- 在排序的字符串后面加上
"&secret_key=your_secret_key"
- 用 32 位
MD5
加密并大写后放到请求头authorization
- 查看签名生成Demo
-
公共参数
参数名 描述 authorization 请求头签名 tonce 毫秒时间戳,与服务器时间可接受误差范围为 ±60s access_id api key id secret_key api key account_id 用于区分不同类型的交易市场
-
接口错误码
错误码 描述 0 成功 1 错误 2 参数错误 3 内部错误 23 IP禁用 24 Access id不存在 25 签名错误 34 Access id过期 35 服务不可用 36 服务超时 40 主账号和子账号不匹配 49 转账到子账号被拒绝 107 余额不足 158 没有使用此API的权限 213 请求过于频繁 227 时间戳错误,时间戳必须为服务器时间 ±60s 以内 600 订单号不存在 601 其他用户的订单 602 低于买或卖的最低限额 606 订单价格和最新成交价偏差太大 651 合并深度错误 3008 服务间歇繁忙,请稍后重试 -
HTTP 错误码
错误码 描述 200 成功 404 api 不存在
返回示例
{
"code": 0,
"data": {},
"message": "Success"
}
-
GET /common/maintain/info
-
获取全站维护信息,适用于全站所有功能停服的场景
-
返回参数说明
名称 类型 描述 start_time Integer 维护开始时间 end_time Integer 维护结束时间 url String 维护公告的URL
返回示例
{
"code": 0,
"data": [
{
"started_at": 1640707200,
"ended_at": 1640793600,
"scope": [
"SPOT",
"PERPETUAL"
]
}
],
"message": "Success"
}
-
GET /common/temp-maintain/info
-
获取部分维护信息,适用于部分功能停服的场景
-
返回参数说明
名称 类型 描述 started_at Integer 维护开始时间 ended_at Integer 维护结束时间 scope List 维护范围:
PERPETUAL:合约
SPOT:现货