更新日志

2024-03-07

  • 更新限频频率

2024-02-01

  • 现货WebSocket新增买一卖一接口订阅

2024-01-25

  • 申请提现接口支持指定手续费币种
  • 提现历史记录接口增加手续费币种字段

2024-01-04

2023-09-20

  • 重要提示

CoinEx将对所有币种的充值地址进行升级,并将为所有用户分配新的充值地址。充值前请务必再三确认地址! 如您有保存此前生成的旧充值地址,请不要再使用旧充值地址进行充值,否则资产可能无法到账且永久丢失。 详细进展请查阅公告:https://announcement.coinex.com/hc/articles/19187420867348

2023-08-22

2023-08-03

  • 做市商现货交易费率调整,请参考链接

2023-06-15

2023-06-08

  • 现货、永续合约WebSocket新增"自己的成交信息"接口订阅

2023-05-22

2023-03-16

2023-02-22

  • 支持合约浮盈加仓功能

2023-02-15

  • 市价委托单相关接口新增委托单币种字段,支持指定币种下单

2023-02-08

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-LimitX-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

2021-12-27

2021-12-17

  • 新增修改账户设置接口
    • 接口路径:PUT /account/settings
    • 备注:新增CET抵扣手续费设置功能

2021-12-14

2021-11-22

  • 重构API文档

做市商简介

CoinEx 做市商即为专业交易者,只要符合以下标准,即可申请:

使用API交易,并且现货月交易量达到1,000,000 USD或合约月交易量达到5,000,000 USD的个人交易者或专业交易机构。

成为 CoinEx 做市商,可以享受以下权益:

  • 交易权益
    • 专属费率
    • 专属提现额度
    • 免息授信
    • 稳定的API
    • 交易返现
  • 服务权益
    • 专属大客户经理
    • 7*24H客服支持
    • 节日礼物关怀
    • 做市商专属活动

CoinEx 保留对做市商申请的最终解释权

更多详情,前往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: 对于现货下单&撤单的分组限频是60r/1s,如果 POST /order/limit 下限价单的接口请求的频率为20/1S, 那么该分组中其他接口(DELETE /order/pending, POST /order/market 等)的请求频率的余量就剩 40r/1s

1.IP维度限频规则

  • 限频:400/s

2.账户维度限频规则(现货)

  • 主账号和子账号分别限频,互不影响
接口类型 限频 包含的接口路径
现货下单&改单 30r/1s POST /order/limit 下限价单
POST /order/market 下市价订单
POST /order/stop/limit 下计划限价单
POST /order/stop/market 下计划限价单
POST /order/ioc 立即成交或不能成交时取消下单
POST /order/modify 修改普通委托单
POST /order/stop/modify 修改计划委托单
现货撤单 60r/1s DELETE /order/pending 取消所有订单
DELETE /order/stop/pending/<int:order_id> 取消未成交的计划订单
现货批量下单 10r/1s POST /order/limit/batch 批量下限价单
现货批量撤单 40r/1s DELETE /order/pending/batch批量取消订单
DELETE /order/stop/pending 取消所有未成交的计划订单
现货查询订单 50r/1s GET /order/status 查询订单状态
GET /order/status/batch 批量查询订单状态
GET /order/pending 查询未成交的订单
GET /order/stop/pending 查询未成交的计划订单
现货查询订单历史 10r/1s GET /order/deals 查询已完成订单明细
GET /order/user/deals 查询用户成交记录
GET /order/finished 查询历史订单
GET /order/stop/finished 查询历史计划订单
现货账户改动 10r/1s 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 现货-合约资产划转
现货账户查询 10r/1s 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> 查询充值地址
现货账户历史数据查询 10r/1s 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.账户维度限频规则(合约)

  • 主账号和子账号分别限频,互不影响
接口类型 限频 包含的接口路径
合约下单&改单 20r/1s 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/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 修改计划委托单
合约撤单 40r/1s POST:/perpetual/v1/order/cancel 取消委托单
POST:/perpetual/v1/order/cancel_stop 取消计划委托单
合约批量撤单 20r/1s POST:/perpetual/v1/order/cancel_all 取消全部委托单
POST:/perpetual/v1/order/cancel_batch 批量取消委托单
POST:/perpetual/v1/order/cancel_stop_all 取消全部计划委托单
合约查询订单 50r/1s GET:/perpetual/v1/order/pending 查询pending状态的委托单
GET:/perpetual/v1/order/stop_pending 查询pending状态的计划委托单
GET:/perpetual/v1/order/status 订单状态
GET:/perpetual/v1/order/stop_status 计划单状态
合约查询订单历史 10r/1s GET:/perpetual/v1/order/finished 查询finished状态的委托单
GET:/perpetual/v1/order/stop_finished 查询finished状态的计划委托单
合约账户查询 10r/1s 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_idsecret_key 是大小写敏感的。

签名步骤

  1. 按字母顺序将参数排序
  2. 在排序的字符串后面加上"&secret_key=your_secret_key"
  3. 用 32 位MD5加密并大写后放到请求头authorization
  4. 查看签名生成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": {
        "started_at":1703833292,
        "ended_at":1703834254,
        "url": "",
        "protect_duration_start": 1703834254,
        "protect_duration_end": 1703834854
    },
    "message": "Success"
}
  • GET /common/maintain/info

  • 获取全站维护信息,适用于全站所有功能停服的场景

  • 返回参数说明

    名称 类型 描述
    start_time Integer 维护开始时间
    end_time Integer 维护结束时间
    url String 维护公告的URL
    protect_duration_start Integer 保护期开始时间
    protect_duration_end Integer 保护期结束时间

返回示例

{
    "code": 0,
    "data": [
        {
            "started_at": 1640707200,
            "ended_at": 1640793600,
            "scope": [
                "SPOT",
                "PERPETUAL"
            ],
            "protect_duration_start": 1640793600,
            "protect_duration_end": 1640794200
        }
    ],
    "message": "Success"
}
  • GET /common/temp-maintain/info

  • 获取部分维护信息,适用于部分功能停服的场景

  • 返回参数说明

    名称 类型 描述
    started_at Integer 维护开始时间
    ended_at Integer 维护结束时间
    scope List 维护范围:
    PERPETUAL:合约
    SPOT:现货
    ALL_SITE:全局维护
    protect_duration_start Integer 保护期开始时间
    protect_duration_end Integer 保护期结束时间

做市商专属对接人
Telegram @CoinExvipmanager
Email vip@coinex.com