Skip to main content

更新日志

2021-09-18

  • 新增币安挖矿接口:
    • 新增接口 GET /sapi/v1/bswap/poolConfigure 以支持查询币对池的配置信息
    • 新增接口 GET /sapi/v1/bswap/addLiquidityPreview 以支持查询添加流动性的试算
    • 新增接口 GET /sapi/v1/bswap/removeLiquidityPreview 以查询移除流动性的试算

2021-09-17

  • 访问限制介绍中新增/api/*/sapi/*相关接口限频说明

2021-09-08

  • 新增以下杠杆账户接口支持杠杆逐仓账户启用限制:

    • 新增接口 DELETE /sapi/v1/margin/isolated/account 以支持杠杆逐仓账户停用
    • 新增接口 POST /sapi/v1/margin/isolated/account 以支持杠杆逐仓账户启用
    • 新增接口 GET /sapi/v1/margin/isolated/accountLimit 以查询杠杆逐仓账户上限
  • 查询杠杆逐仓账户信息接口 GET /sapi/v1/margin/isolated/account 响应加入字段 "enabled" 判断账户是否启用


2021-09-03

  • 更新钱包接口:
    * 新增响应内容 `sameAddress`,`depositDust` 和 `specialWithdrawTips`于`GET /sapi/v1/capital/config/getall` 
    sameAddress 表示需要输入memo的币种 depositDust 表示最小可上帐金额 specialWithdrawTips 表示提现时的特殊说明
    * 新增响应内容 `confirmNo`于`GET /sapi/v1/capital/withdraw/history` 以支持查询提现确认数

2021-08-27

  • 更新钱包接口:
    • 新增参数 withdrawOrderIdGET /sapi/v1/capital/withdraw/history 以支持查询指定withdrawOrderId的提币历史记录
    • 新增响应内容 unlockConfirmGET /sapi/v1/capital/deposit/hisrec 以支持查询解锁需要的网络确认次数

2021-08-23

  • 新增杠杆账户 OCO 接口:
    • POST /sapi/v1/margin/order/oco
    • DELETE /sapi/v1/margin/orderList
    • GET /sapi/v1/margin/orderList
    • GET /sapi/v1/margin/allOrderList
    • GET /sapi/v1/margin/openOrderList

用法与现货账户 OCO 相同


2021-08-20

  • 更新钱包接口:
    • 新增参数fromSymbol toSymbol 和新增划转类型 ISOLATEDMARGIN_MARGINMARGIN_ISOLATEDMARGINISOLATEDMARGIN_ISOLATEDMARGIN 于接口 POST /sapi/v1/asset/transferGET /sapi/v1/asset/transfer 以支持杠杆逐仓钱包与杠杆全仓钱包之前相互划转

2021-08-12

  • GET api/v3/myTrades 添加新的参数 orderId

2021-08-05

  • 新增C2C接口:
    • GET /sapi/v1/c2c/orderMatch/listUserOrderHistory 以查询用户C2C交易历史记录

2021-08-05

  • 币安宝接口更新:
    • GET /sapi/v1/lending/union/purchaseRecord
    • GET /sapi/v1/lending/union/redemptionRecord
    • GET /sapi/v1/lending/union/interestHistory

以上接口查询范围更改为:仅支持startTimeendTime查询最大间隔为30天,若startTimeendTime均未发送,则默认返回最近30天记录


2021-07-29

  • 子母账户接口更新:
    • GET /sapi/v1/sub-account/transfer/subUserHistory 如果startTimeendTime均未发送,默认只返回最近30天数据

2021-07-27

  • 新增法币接口:
    • GET /sapi/v1/fiat/orders 以查询用户法币充值和提币历史记录
    • GET /sapi/v1/fiat/payments 以查询用户法币支付(买卖)历史记录

2021-07-16

  • 新增钱包接口:
    • GET /sapi/v1/account/apiRestrictions 以查询用户API Key权限

2021-07-09

  • 新增钱包接口:
    • POST /sapi/v1/asset/get-funding-asset 以查询资金账户资产,目前支持查询的业务为:Binance Pay, Binance Card, Binance Gift Card, Stock Token

2021-06-24

  • 钱包接口更新:
    • GET /sapi/v1/capital/withdraw/history 现有的 limit 参数增加默认值1000,最大值1000的限制
    • GET /sapi/v1/capital/deposit/hisrec 现有的 limit 参数增加默认值1000,最大值1000的限制

2021-06-17

  • 币安宝接口更新:
    • GET /sapi/v1/lending/daily/product/list 增加新参数 currentsize

2021-06-15

  • 新增子母账户接口:
    • POST /sapi/v1/managed-subaccount/deposit 以支持投资人账户为托管子账户充值资产(仅投资人账户方使用)
    • GET /sapi/v1/managed-subaccount/asset 以支持投资人账户查询托管子账户资产(仅投资人账户方使用)
    • POST /sapi/v1/managed-subaccount/withdraw以支持投资人账户为托管子账户提币资产(仅投资人账户方使用)

2021-06-04

八月 01, 2021 02:00 AM UTC 开始,以下WAPI接口将停止使用:

  • GET /wapi/v3/systemStatus.html
  • POST /wapi/v3/withdraw.html
  • GET /wapi/v3/depositHistory.html
  • GET /wapi/v3/withdrawHistory.html
  • GET /wapi/v3/depositAddress.html
  • GET /wapi/v3/accountStatus.html
  • GET /wapi/v3/apiTradingStatus.html
  • GET /wapi/v3/userAssetDribbletLog.html
  • GET /wapi/v3/assetDetail.html
  • GET /wapi/v3/tradeFee.html
  • GET /wapi/v3/sub-account/list.html
  • GET /wapi/v3/sub-account/transfer/history.html
  • POST /wapi/v3/sub-account/transfer.html
  • GET /wapi/v3/sub-account/assets.html

目前WAPI已从API文档中移除,为了保证您的所有交易策略顺利执行,强烈建议所有API用户尽快更新交易程序,替换成现有的SAPI接口


2021-05-26

  • 更新钱包接口:
    • 用户万向划转接口 POST /sapi/v1/asset/transferGET /sapi/v1/asset/transfer 新增划转类型MAIN_PAY , PAY_MAIN 以支持现货和支付账户之间相互划转

2021-05-12

  • 在文档中添加接口的数据来源说明
  • 在每个接口中添加相应的数据源
  • GET api/v3/exchangeInfo 现在支持单或多交易对查询

2021-04-28

May 15, 2021 08:00 UTC 开始, 以下创建逐仓杠杆账户接口将关闭:

  • POST /sapi/v1/margin/isolated/create

后续,用户可通过逐仓杠杆账户划转 POST /sapi/v1/margin/isolated/transfer 直接完成逐仓杠杆账户的创建与交易准备,无需调用接口创建账户


2021-04-26

April 28, 2021 00:00 UTC 开始,下面接口的权重有如下变动:

  • GET /api/v3/order 权重改为 2
  • GET /api/v3/openOrders 权重改为 3
  • GET /api/v3/allOrders 权重改为 10
  • GET /api/v3/orderList 权重改为 2
  • GET /api/v3/openOrderList 权重改为 3
  • GET /api/v3/account 权重改为 10
  • GET /api/v3/myTrades 权重改为 10
  • GET /api/v3/exchangeInfo 权重改为 10

2021-04-08

  • 子母账户接口更新:
    • GET /sapi/v1/sub-account/futures/accountSummaryGET /sapi/v2/sub-account/futures/accountSummary 接口返回字段asset 更新为以USD计价的资产汇总,即子账户USDT,BUSD等保证金总和

2021-04-02

  • 新增钱包接口:
    • GET /sapi/v1/system/status 以获取系统状态
    • GET /sapi/v1/account/status 以获取账户状态
    • GET /sapi/v1/account/apiTradingStatus 以获取账户API交易状态
    • GET /sapi/v1/asset/dribblet 以获取小额资产转换BNB历史
    • GET /sapi/v1/asset/assetDetail 以获取上架资产详情
    • GET /sapi/v1/asset/tradeFee 以获取交易手续费率查询
  • 新增子母账户接口:
    • GET /sapi/v3/sub-account/assets 以查询子账户资产

2021-04-01

  • 子母账户接口更新:
    • GET /sapi/v1/sub-account/transfer/subUserHistory 新增返回字段 fromAccountTypetoAccountType为用户转出账户类型和转入账户类型

2021-03-31

  • 子母账户接口更新:
    • GET /wapi/v3/sub-account/transfer/history.html 新增参数 fromEmailtoEmail,原有参数email 将默认查询fromEmail的记录

2021-03-08

  • 新增子母账户接口:
    • POST /sapi/v1/sub-account/virtualSubAccount 以支持母账户创建虚拟子账户
    • GET /sapi/v1/sub-account/list 以支持查询子账户列表
    • POST /sapi/v1/sub-account/blvt/enable 以支持为子账户开通杠杆代币

2021-03-05

  • 新增杠杆接口:
    • GET /sapi/v1/margin/interestRateHistory 以支持杠杆利率历史查询

2021-02-08

  • 新增合约接口:
    • GET /sapi/v2/futures/loan/wallet 混合保证金钱包 V2 接口,以支持 BUSD 借款查询
    • GET /sapi/v2/futures/loan/configs 混合保证金信息 V2 接口,以支持 BUSD 借款查询
    • GET /sapi/v2/futures/loan/calcAdjustLevel 计算调整后的混合保证金质押率 V2 接口,以支持 BUSD 借款查询
    • GET /sapi/v2/futures/loan/calcMaxAdjustAmount 可供调整混合保证金质押率的最大额 V2 接口,以支持 BUSD 借款质押率的调整
    • POST /sapi/v2/futures/loan/adjustCollateral 调整混合保证金质押率 V2 接口,以支持 BUSD 借款质押率的调整
  • 更新合约接口:
    • GET /sapi/v1/futures/loan/adjustCollateral/history 混合保证金调整质押率历史接口,加入参数与响应字段 loanCoin 以支持 BUSD 借款查询
    • GET /sapi/v1/futures/loan/liquidationHistory 混合保证金强平历史历史接口,加入参数与响应字段 loanCoin 以支持 BUSD 借款查询

2021-02-04

  • 更新钱包接口:
    • 用户万向划转接口 POST /sapi/v1/asset/transferGET /sapi/v1/asset/transfer 新增划转类型 MARGIN_MINING ,MINING_MARGIN, MARGIN_C2C ,C2C_MARGIN, MARGIN_CMFUTURE, CMFUTURE_MARGIN 以支持全仓杠杆,矿池,C2C,币本位合约账户间划转。

2021-01-15

  • 杠杆交易添加新接口 DELETE /sapi/v1/margin/openOrders
    • 此接口便于用户撤销单一交易对的所有挂单, 包括OCO的挂单。

2021-01-10

  • 矿池接口 GET /sapi/v1/mining/payment/list 新增可选参数 pageSize

  • 矿池接口 GET /sapi/v1/mining/payment/list 新增返回字段:

    • "type" 表示收益类型
    • "hashTransfer" 表示已转让算力
    • "transferAmount" 表示已转让收益
  • 新增矿池接口:

    • GET /sapi/v1/mining/payment/other
    • GET /sapi/v1/mining/hash-transfer/config/details
    • GET /sapi/v1/mining/hash-transfer/config/details/list
    • GET /sapi/v1/mining/hash-transfer/profit/details
    • POST /sapi/v1/mining/hash-transfer/config
    • POST /sapi/v1/mining/hash-transfer/config/cancel

2021-01-01

USER DATA STREAM

  • 移除outboundAccountInfo事件.

2020-12-30

  • 新增钱包接口:
    • POST /sapi/v1/asset/transfer 用户万向划转接口,以支持现货,全仓杠杆,合约,C2C,矿池账户间划转。
    • GET /sapi/v1/asset/transfer 以支持查询用户万向划转历史记录。

2020-12-22

  • 新增子母账户接口:
    • GET /sapi/v1/sub-account/sub/transfer/history 以支持查询子母账户现货资金划转历史。

2020-12-11

  • 更新合约混合保证金接口:
    • 接口GET /sapi/v1/futures/loan/wallet 新增返回参数 interestFreeLimit表示混合保证金总免息额度,interestFreeLimitUsed 表示占用混合保证金免息额度。
    • 接口GET /sapi/v1/futures/loan/interestHistory 新增返回参数 interestFreeLimitUsed 表示占用混合保证金免息额度。

2020-12-04

  • 更新杠杆代币接口:
    • 接口GET /sapi/v1/blvt/tokenInfo 新增返回参数 currentBaskets(包括 symbolamountnotionalValue ),purchaseFeePct申购费率,dailyPurchaseLimit每日申购数量上限,redeemFeePct赎回费率,dailyRedeemLimit每日赎回数量上限。
  • 新增杠杆代币接口:
    • GET /sapi/v1/blvt/userLimit 以查询用户每日申购赎回限额。

2020-12-02

  • 新增子母账户接口:
    • GET /sapi/v2/sub-account/futures/account 以支持查询子账户USDT合约和币本位合约账户详情。
    • GET /sapi/v2/sub-account/futures/accountSummary 以支持查询子账户USDT合约和币本位合约账户汇总。
    • GET /sapi/v2/sub-account/futures/positionRisk 以支持查询子账户USDT合约和币本位合约持仓信息。

2020-12-01

  • 更新杠杆交易接口:
    • POST /sapi/v1/margin/order 加入参数 quoteOrderQty 支持"报价总额市价单"。

2020-11-27

为了优化性能,除了当前的api.binance.com,新加了一些API的集群。如果访问api.binance.com有性能问题,也可以尝试访问:


2020-11-16

  • 更新杠杆接口加入 archived 参数以支持查询6个月以前数据:
    • GET /sapi/v1/margin/loan
    • GET /sapi/v1/margin/repay
    • GET /sapi/v1/margin/interestHistory

2020-11-13

  • 新增子母账户接口:
    • POST /sapi/v1/sub-account/universalTransfer 以支持子母账户,现货和合约账户之间相互划转。
    • GET /sapi/v1/sub-account/universalTransfer 以查询划转记录。

2020-11-10

  • 新增BNB抵扣开关接口:
    • POST /sapi/v1/bnbBurn BNB现货交易和杠杆利息抵扣开关。
    • GET /sapi/v1/bnbBurn 获取BNB抵扣开关状态。

2020-11-09

  • 新增返回字段 tranId 于子母账户接口:
    • GET /sapi/v1/sub-account/futures/internalTransfer
    • GET /sapi/v1/sub-account/transfer/subUserHistory

2020-11-03

  • 更新合约接口:

    • 接口 GET /sapi/v1/futures/loan/repay/history 新增返回参数repayTypeNORMAL为混合保证金普通还款,COLLATERAL为抵押物还款),price(抵押物还款兑换比率),repayCollateral(还款所用抵押物数量)。
    • 接口 GET /sapi/v1/futures/loan/wallet 新增返回参数totalInterest(混合保证金总利息),principalForInterest(混合保证金计息本金),interest(混合保证金利息)。
    • 接口 GET /sapi/v1/futures/loan/configs 新增返回参数interestRate(混合保证金利率),interestGracePeriod(混合保证金免息天数)。
  • 新增合约接口:

    • 接口 GET /sapi/v1/futures/loan/collateralRepayLimit 以查询混合保证金抵押物还款上下限。
    • 接口 GET /sapi/v1/futures/loan/collateralRepay 以获取混合保证金抵押物还款兑换比率。
    • 接口 POST /sapi/v1/futures/loan/collateralRepay 混合保证金以抵押物还款。
    • 接口 GET /sapi/v1/futures/loan/collateralRepayResult 以查询混合保证金以抵押物还款结果。
    • 接口 GET /sapi/v1/futures/loan/interestHistory 以查询混合保证金利息收取历史。

2020-10-14

  • 合约接口更新:
    • POST /sapi/v1/futures/loan/borrowGET /sapi/v1/futures/loan/borrow/history 返回新字段 borrowId 为用户混合保证金借款唯一 ID。
    • POST /sapi/v1/futures/loan/repayGET /sapi/v1/futures/loan/repay/history 返回新字段 repayId 为用户混合保证金还款唯一 ID。

2020-10-10

  • 子母账户接口POST /sapi/v1/sub-account/futures/transfer新增划转类型type 以支持子账户现货账户和币本位合约账户间相互划转。

2020-09-30

  • 杠杆账户接口更新:
    • GET /sapi/v1/margin/maxBorrowable 返回新字段 borrowLimit 为用户账户借贷限额。

2020-09-28

  • 新增币安宝接口:
    • POST /sapi/v1/lending/positionChanged 以支持定期/活动持仓转成活期持仓。
  • 以下币安宝接口,lendingType里参数 ACTIVITY 替换 REGULAR以代表币安宝活动产品:
    • GET /sapi/v1/lending/project/list
    • POST /sapi/v1/lending/customizedFixed/purchase
    • GET /sapi/v1/lending/project/position/list
    • GET /sapi/v1/lending/union/purchaseRecord
    • GET /sapi/v1/lending/union/interestHistory

2020-09-23

  • 新增币安挖矿接口:
    • 接口 GET /sapi/v1/bswap/pools 以从某个资金池移除流动性。
    • 接口 GET /sapi/v1/bswap/liquidity 以获取流动资金池具体信息。
    • 接口 POST /sapi/v1/bswap/liquidityAdd 以添加流动性。
    • 接口 POST /sapi/v1/bswap/liquidityRemove 以移除流动性。
    • 接口 GET /sapi/v1/bswap/liquidityOps 以获取流动性操作记录。
    • 接口 GET /sapi/v1/bswap/quote 以获取报价。
    • 接口 POST /sapi/v1/bswap/swap 以交易。
    • 接口 GET /sapi/v1/bswap/swap 以获取交易记录。

2020-09-16

  • 新增杠杆代币接口:

    • 接口GET /sapi/v1/blvt/tokenInfo 以查询杠杆代币信息。
    • 接口POST /sapi/v1/blvt/subscribe 以申购代币。
    • 接口GET /sapi/v1/blvt/subscribe/record 以查询申购代币记录。
    • 接口POST /sapi/v1/blvt/redeem 以赎回代币。
    • 接口GET /sapi/v1/blvt/redeem/record 以查询赎回代币记录。
  • 以下杠杆代币功能请使用合约接口:

    • 杠杆代币历史净值K线接口。
    • WebSocket 杠杆代币信息更新和净值K线更新

2020-09-09

用户数据 STREAM

  • outboundAccountInfo事件不再推荐使用。
  • outboundAccountInfo事件以后会被删除(具体时间未定) 请使用 outboundAccountPosition 事件.
  • outboundAccountInfo只推送余额不为0,以及余额刚变成0的资产。

2020-09-03

  • 新增子母账户接口POST /sapi/v1/sub-account/futures/internalTransfer 以执行子账户合约资金直接划转。
  • 新增子母账户接口GET /sapi/v1/sub-account/futures/internalTransfer 以查询子账户合约资金直接划转历史。

2020-09-01

  • 子母账户接口GET /sapi/v1/sub-account/spotSummary 返回内容中新增字段 masterAccountTotalAsset以获取BTC计价的母账户资产。

2020-08-27

  • 新增接口 GET /sapi/v1/sub-account/spotSummary 以获取BTC计价的子账户现货资产汇总。

2020-08-26

  • 逐仓杠杆接口 GET /sapi/v1/margin/isolated/account 新增可选参数 symbols, 以支持查询至多5个指定symbol的杠杆逐仓资产。

2020-07-28

逐仓杠杆相关接口

  • 以下接口新增可选参数"isIsolated", 并在返回内容中新增字段 "symbol":

    • POST /sapi/v1/margin/loan
    • POST /sapi/v1/margin/repay
  • 以下接口新增可选参数"isIsolated", 并在返回内容中新增字段 "isIsolated":

    • POST /sapi/v1/margin/order
    • DELETE /sapi/v1/margin/order
    • GET /sapi/v1/margin/order
    • GET /sapi/v1/margin/openOrders
    • GET /sapi/v1/margin/allOrders
    • GET /sapi/v1/margin/myTrades
  • 以下接口新增可选参数"isolatedSymbol", 并在返回内容中新增字段 "isolatedSymbol":

    • GET /sapi/v1/margin/loan
    • GET /sapi/v1/margin/repay
    • GET /sapi/v1/margin/interestHistory
  • 接口 GET /sapi/v1/margin/forceLiquidationRec 新增可选参数"isolatedSymbol", 并在返回内容中新增字段 "isIsolated"

  • 以下接口新增可选参数"isolatedSymbol":

    • GET /sapi/v1/margin/maxBorrowable
    • GET /sapi/v1/margin/maxTransferable
  • 新增以下逐仓杠杆功能接口:

    • POST /sapi/v1/margin/isolated/create
    • POST /sapi/v1/margin/isolated/transfer
    • GET /sapi/v1/margin/isolated/transfer
    • GET /sapi/v1/margin/isolated/account
    • GET /sapi/v1/margin/isolated/pair
    • GET /sapi/v1/margin/isolated/allPairs
  • 新增以下接口,管理逐仓杠杆账户listenKey:

    • POST /sapi/v1/userDataStream/isolated
    • PUT /sapi/v1/userDataStream/isolated
    • DELETE /sapi/v1/userDataStream/isolated

2020-07-20

  • 接口GET /sapi/v1/margin/allOrders 参数"limit"的可传最大值更新为500.

2020-07-17

  • 接口 GET /sapi/v1/margin/allOrders 增加访问限制为每个IP最多每分钟60次

2020-07-13

  • 新增合约混合保证金相关的SAPI接口:
    • POST /sapi/v1/futures/loan/borrow
    • GET /sapi/v1/futures/loan/borrow/history
    • POST /sapi/v1/futures/loan/repay
    • GET /sapi/v1/futures/loan/repay/history
    • GET /sapi/v1/futures/loan/wallet
    • GET /sapi/v1/futures/loan/configs
    • GET /sapi/v1/futures/loan/calcAdjustLevel
    • GET /sapi/v1/futures/loan/calcMaxAdjustAmount
    • POST /sapi/v1/futures/loan/adjustCollateral
    • GET /sapi/v1/futures/loan/adjustCollateral/history
    • GET /sapi/v1/futures/loan/liquidationHistory

2020-06-28

  • 服务于合约的相关SAPI接口内容转移至本文档:
    • POST /sapi/v1/futures/transfer
    • GET /sapi/v1/futures/transfer

2020-05-06

  • 新增矿池接口:
    • GET /sapi/v1/mining/pub/algoList
    • GET /sapi/v1/mining/pub/coinList
    • GET /sapi/v1/mining/worker/detail
    • GET /sapi/v1/mining/worker/list
    • GET /sapi/v1/mining/payment/list
    • GET /sapi/v1/mining/statistics/user/status
    • GET /sapi/v1/mining/statistics/user/list

2020-05-03

  • 杠杆交易部分接口的新的请求限制
    • 涉及的接口:
      • POST /sapi/v1/margin/transfer
      • POST /sapi/v1/margin/loan
      • POST /sapi/v1/margin/repay
    • 限制为每2秒一次。
    • 超过限制的请求会收到HTTP Status Code 429

2020-05-01

  • 从2020-05-01 UTC 00:00开始, 所有交易对都会有最多200个挂单的限制, 体现在过滤器MAX_NUM_ORDERS上.
    • 已经存在的挂单不会被移除或者撤销。
    • 单交易对(symbol)的挂单数量达到或超过200的账号, 无法在此交易对上下新的订单, 除非挂单数量低于200。
    • OCO订单在被触发成LIMIT订单, 或者被触发成STOP_LOSS(或者STOP_LOSS_LIMIT)前, 被认为是2个挂单量. 一旦OCO订单被触发, 就只被算作一个挂单。

2020-04-25

现货 API

  • 添加新字段 permissions

    • 这个字段定义了对于账户、交易对(symbol)的交易权限。
    • permissions 是个enum数组, 可能的值:
      • SPOT
      • MARGIN
    • 在未来的版本(v4)中, permissions 将会在 GET api/v3/exchangeInfo 中替换 isSpotTradingAllowedisMarginTradingAllowed
    • 如果账户想在一个交易对下做交易, 账户和交易对必须同时拥有对应的权限。
  • 接口 GET api/v3/exchangeInfo 的更新

    • 添加新字段 permissions
    • 添加新字段 quoteAssetPrecision。此字段和 quotePrecision 重复。在未来的版本(v4)中 quotePrecision 会被移除。
  • 接口 GET api/v3/account 的更新

    • 添加新字段 permissions
  • 添加新接口 DELETE api/v3/openOrders

    • 此接口便于用户撤销单一交易对的所有挂单, 包括OCO的挂单。
  • 如果交易对处于 BREAK 或者 HALT 状态, 挂单也可以被撤销。

    用户数据 STREAM

  • OutboundAccountInfo 消息会显示一个新字段 P, 用来显示账户的交易权限。


2020-04-23

WEB SOCKET 连接限制

  • Websocket服务器每秒最多接受5个消息。消息包括:
    • PING帧
    • PONG帧
    • JSON格式的消息, 比如订阅, 断开订阅.
  • 如果用户发送的消息超过限制,连接会被断开连接。反复被断开连接的IP有可能被服务器屏蔽。
  • 单个连接最多可以订阅 1024 个Streams。

2020-04-16

  • 币安宝接口GET /sapi/v1/lending/daily/token/position返回内容新增字段:

    • todayPurchasedAmount 表示用户今日申购的活期产品数量
  • 新增以下币安宝接口用以支持灵活定期产品:

    • GET /sapi/v1/lending/project/list
    • POST /sapi/v1/lending/customizedFixed/purchase
    • GET /sapi/v1/lending/project/position/list

2020-04-02

  • 接口 GET /sapi/v1/capital/config/getall 返回内容新增字段:
    • minConfirm 表示资产上账所需的最小确认数
    • unLockConfirm 表示资产解锁需所需确认数

2020-03-24

  • 添加过滤器 MAX_POSITION.

    • 这个过滤器定义账户允许的基于base asset的最大仓位。一个用户的仓位可以定义为如下资产的总和:

      • base asset的可用余额
      • base asset的锁定余额
      • 所有处于open的买单的数量总和
    • 如果用户的仓位大于最大的允许仓位,买单会被拒绝。


2020-03-13

  • 新增可选参数 transactionFeeFlag 于以下提币接口:
    • POST /sapi/v1/capital/withdraw/apply
    • POST /wapi/v3/withdraw.html

2020-02-05

  • 新增子账户相关接口:
    • POST /sapi/v1/sub-account/futures/transfer: 对子账户实施futures账户划转
    • POST /sapi/v1/sub-account/margin/transfer: 对子账户实施margin账户划转
    • POST /sapi/v1/sub-account/transfer/subToSub: 向兄弟子账户划转
    • POST /sapi/v1/sub-account/transfer/subToMaster: 向母账户划转
    • GET /sapi/v1/sub-account/transfer/subUserHistory: 子账户获取自身划转历史

2020-01-15

  • 接口POST /wapi/v3/withdraw.html 新增参数 withdrawOrderId: 用户自定义提币id

  • 接口GET /wapi/v3/withdrawHistory.html 返回内容新增字段 withdrawOrderId: 该笔提币的用户自定义id


2019-12-25

  • 新增币安宝接口:

    • GET /sapi/v1/lending/daily/product/list
    • GET /sapi/v1/lending/daily/userLeftQuota
    • POST /sapi/v1/lending/daily/purchase
    • GET /sapi/v1/lending/daily/userRedemptionQuota
    • POST /sapi/v1/lending/daily/redeem
    • GET /sapi/v1/lending/daily/token/position
    • GET /sapi/v1/lending/union/account
    • GET /sapi/v1/lending/union/purchaseRecord
    • GET /sapi/v1/lending/union/redemptionRecord
    • GET /sapi/v1/lending/union/interestHistory
  • 新增请求时间间隔于以下接口
    GET /sapi/v1/capital/withdraw/history,
    GET /wapi/v3/withdrawHistory.html,
    GET /sapi/v1/capital/deposit/hisrec and
    GET /wapi/v3/depositHistory.html:

    * 默认`startTime`为当前时间起90天前, 默认`endTime`为当前时间;* 请注意`startTime` 与 `endTime` 的默认时间戳,保证请求时间间隔不超过90天;* 同时提交`startTime` 与 `endTime`间隔不得超过90天.

2019-12-18

  • 新增接口用以获取账户每日资产快照:
    GET /sapi/v1/accountSnapshot

2019-11-30

  • 接口POST /sapi/v1/margin/order (HMAC SHA256)新增参数sideEffectType,可选内容如下:

    • NO_SIDE_EFFECT: 普通交易订单;
    • MARGIN_BUY: 自动借款交易订单;
    • AUTO_REPAY: 自动还款交易订单.
  • New field marginBuyBorrowAmount and marginBuyBorrowAsset in FULL response to POST /sapi/v1/margin/order (HMAC SHA256)


2019-11-28

  • 新增SAPI接口用以关闭账户站内划转功能:
    POST /sapi/v1/account/disableFastWithdrawSwitch (HMAC SHA256)
  • 新增SAPI接口用以开启账户站内划转功能:
    POST /sapi/v1/account/enableFastWithdrawSwitch (HMAC SHA256)

2019-11-22

  • "报价总额市价单"作为新的市价单方式已在各交易对投入使用。
    • "报价总额市价单" 允许用户在市价单MARKET中设置总的购买投入金额或卖出预计回收金额 quoteOrderQty
    • "报价总额市价单"不会突破LOT_SIZE的限制规则; 报单会按给定的quoteOrderQty尽可能接近地被执行。
    • BNBBTC交易对为例:
      • On the BUY side, the order will buy as many BNB as quoteOrderQty BTC can.
      • 买单: 给定quoteOrderQty的BTC会被用来市价买入尽可能多的BNB。
      • On the SELL side, the order will sell as much BNB as needed to receive quoteOrderQty BTC.
      • 卖单: 持有BNB会被尽可能多地以市价卖出以获取给定quoteOrderQty的BTC。

2019-11-19

  • GET /sapi/v1/sub-account/margin/account 返回内容新增: marginTradeCoeffVo 其中包括
    • forceLiquidationBar: 强平风险率;
    • marginCallBar: 补仓风险率;
    • normalBar: 初始风险率

2019-11-13

Rest API

  • "api/v3/exchangeInfo" 新增内容:
    • quoteOrderQtyMarketAllowed
    • baseCommissionPrecision
    • quoteCommissionPrecision
  • MARKET orders (市价单)新增可选参数: quoteOrderQty指定买入或卖出的报价数量,不可与 quantity(数量)同时使用.
    • 能够有效配合该参数使用MARKET orders(市价单)的确切时间和进一步详细信息将由后续声明予以通告。
  • 所有订单查询接口增加新的返回内容:origQuoteOrderQty (e.g. GET api/v3/allOrders)
    {      "code": -1128,      "msg": "Combination of optional parameters invalid. Recommendation: 'stopLimitTimeInForce' should also be sent."    }
  • 错误代码更新: -1128

    • 发送OCO订单中有stopLimitPrice但是没有stopLimitTimeInForce,将会受到错误信息:
  • 错误代码更新: -1003, 明确了使用请求权重作为限制而不是请求数量。

v1 接口将被弃用:

2020年一季度末,以下接口将被移除。目前文档已经将这些接口更新为v3版本。

  • GET api/v1/depth
  • GET api/v1/historicalTrades
  • GET api/v1/aggTrades
  • GET api/v1/klines
  • GET api/v1/ticker/24hr
  • GET api/v1/ticker/price
  • GET api/v1/exchangeInfo
  • POST api/v1/userDataStream
  • PUT api/v1/userDataStream
  • GET api/v1/ping
  • GET api/v1/time
  • GET api/v1/ticker/bookTicker

以下接口将不会移植到v3版本,请使用新接口予以替换

旧的 V1 接口新的 V3 接口
GET api/v1/ticker/allPricesGET api/v3/ticker/price
GET api/v1/ticker/allBookTickersGET api/v3/ticker/bookTicker

USER DATA STREAM

  • 事件executionReport(订单更新)更新内容:

    • 如果 C 值为空, 将返回 null, 而不是"null".
    • 新增返回值 Q, 表示 quoteOrderQty.
  • 新增事件类型balanceUpdate(余额更新)

    • 当资金存入或从帐户中提取时,发生余额更新。

    WEB SOCKET STREAM

  • WSS 现在支持实时订阅和取消数据流。


2019-11-08

  • 新增以下sapi接口用以管理子账户的杠杆与期货:
    • GET /sapi/v1/sub-account/status (HMAC SHA256)
    • POST /sapi/v1/sub-account/margin/enable (HMAC SHA256)
    • GET /sapi/v1/sub-account/margin/account (HMAC SHA256)
    • GET /sapi/v1/sub-account/margin/accountSummary (HMAC SHA256)
    • POST /sapi/v1/sub-account/futures/enable (HMAC SHA256)
    • GET /sapi/v1/sub-account/futures/account (HMAC SHA256)
    • GET /sapi/v1/sub-account/futures/accountSummary (HMAC SHA256)
    • GET /sapi/v1/sub-account/futures/positionRisk (HMAC SHA256)

2019-11-04

  • 新增管理子账户充值功能相关的sapi接口
    • GET /sapi/v1/capital/deposit/subAddress (HMAC SHA256)): 获取子账户充值地址。
    • GET /sapi/v1/capital/deposit/subHisrec (HMAC SHA256)): 获取子账户充值记录。

2019-10-29

  • 新增钱包提币功能相关的sapi接口
    • POST /sapi/v1/capital/withdraw/apply (HMAC SHA256): 提币。
    • Get /sapi/v1/capital/withdraw/history (HMAC SHA256): 获取提币历史(支持多网络)。

2019-10-14

  • 新增钱包功能相关的sapi接口
    • GET /sapi/v1/capital/config/getall (HMAC SHA256): 获取针对用户的所有币种信息。
    • GET /sapi/v1/capital/deposit/hisrec (HMAC SHA256): 获取充值历史(支持多网络)。
    • GET /sapi/v1/capital/deposit/address (HMAC SHA256): 获取充值地址(支持多网络).

2019-10-11

  • POST /wapi/v3/withdraw.html,增加参数 network,支持多网络提币。

2019-09-09

  • 新增bookTicker行情流: <symbol>@bookTicker!bookTicker.

2019-09-03

  • 更新频率达到100ms的更快的 order book 信息流选项: <symbol>@depth@100ms<symbol>@depth#@100ms
  • Websocket Market Streams 增加 Update Speed 更新速度

2019-08-16

  • 10000 限额 的接口已被临时删除: GET api/v1/depth

  • 在2017年第四季度,以下接口已被弃用并将其从API文档中删除。 从此版本开始,以下接口已从API中永久删除。 对于原始变更日志如有遗漏,我们深表歉意:

    • GET api/v1/order
    • GET api/v1/openOrders
    • POST api/v1/order
    • DELETE api/v1/order
    • GET api/v1/allOrders
    • GET api/v1/account
    • GET api/v1/myTrades
  • 在此存储库的文档中描述的流、接口、参数、有效负载等均被 官方认证得到支持。 任何其他流、接口、参数或有效负载等的使用不受支持, 自行使用的风险将由您自己承担,没有任何保证


2019-09-15

Rest API

  • 新订单类型: OCO ("One Cancels the Other")

    • 一个 OCO 有 2 个订单: (在财务术语中也称为 legs)

      • STOP_LOSSSTOP_LOSS_LIMIT leg
      • LIMIT_MAKER leg
    • 价格限制:

      • SELL Orders : 限价 > 成交价>止损价
      • BUY Orders : 限价<成交价<止损价
      • 如前所述,价格必须"横跨"交易品种的最后交易价格。 例如:如果最后价格是10:
        • 卖出OCO的限制价格必须大于10,止损价格小于10。
        • 买入OCO的限制价格必须小于10,止损价格大于10。
    • 数量限制:

      • 两个 legs 的数量必须相同。
      • 但是,ICEBERG的数量不必相同。
    • 执行顺序:

      • 如果触发了LIMIT_MAKER,则在取消止损leg之前将首先执行限价支路。
      • 如果市场价格移动到将触发"STOP_LOSS"或"STOP_LOSS_LIMIT",则在执行"STOP_LOSS"支路之前,限价单支路将被取消。
    • 取消一个 OCO 订单

      • 取消任一订单的 leg 将取消整个 OCO 订单.
      • 可通过orderListIdlistClientOrderId取消整个 OCO 订单。
    • OCO的新枚举:

      1. ListStatusType
        • RESPONSE - 当ListStatus响应失败的操作时使用。 (下单或取消订单)
        • EXEC_STARTED - 在下订单列表或列表状态更新时使用。
        • ALL_DONE - 当订单清单完成执行且不再有效时使用。
      2. ListOrderStatus
        • EXECUTING - 在下订单列表或列表状态更新时使用。
        • ALL_DONE - 当订单清单完成执行且不再有效时使用。
        • REJECT - 当ListStatus响应失败的操作时使用。 (下单或取消订单)
      3. ContingencyType
        • OCO - 指定订单列表的类型。
    • 新的接口:

      • POST api/v3/order/oco
      • DELETE api/v3/orderList
      • GET api/v3/orderList
  • recvWindow cannot exceed 60000.

  • New intervalLetter values for headers:

    • SECOND => S
    • MINUTE => M
    • HOUR => H
    • DAY => D
  • 新标头"X-MBX-USED-WEIGHT-(intervalNum)(intervalLetter)"将为(intervalNum)(intervalLetter)速率限制器提供您当前使用的请求权重。 例如,如果设置了一分钟的请求速率权重限制器,则响应中将获得一个"X-MBX-USED-WEIGHT-1M"标头。 旧标头X-MBX-USED-WEIGHT仍将返回,并代表一分钟请求速率权重限制的当前使用权重。

  • 新标头"X-MBX-ORDER-COUNT-(intervalNum)(intervalLetter)"会在任何有效的订单位置上更新,并跟踪该间隔的当前订单数; 拒绝/不成功的订单不保证在响应中具有X-MBX-ORDER-COUNT-**标头。

    • 例如: "X-MBX-ORDER-COUNT-1S"用于"每1秒钟的订单",X-MBX-ORDER-COUNT-1D用于"每1天的订单"
  • GET api / v1 / depth现在支持limit 5000和10000; 权重分别是50和100。

  • GET api / v1 / exchangeInfo具有一个新参数" ocoAllowed"。

用户数据流

  • executionReport事件现在包含具有`orderListId``的"g"; 对于非OCO订单,它将设置为-1。
  • 新事件类型listStatus; listStatus是在更新任何OCO订单时发送的。
  • 新事件类型outboundAccountPosition; 每当帐户余额发生变化时,就会发送outboundAccountPosition,并包含可能导致余额发生变化的事件(存款,提款,交易,下单或取消)更改的资产。

新的错误码

  • -1131 BAD_RECV_WINDOW
    • recvWindow 必须小于 60000
  • -1099未被找到,被认证或被授权      *替换错误代码-1999

新的-2011错误内容

  • OCO_BAD_ORDER_PARAMS
    • 其中一个订单的参数不正确。
  • OCO_BAD_PRICES
    • 订单价格之间的关系不正确。
  • UNSUPPORTED_ORD_OCO
    • 此交易对不支持OCO订单。

2019-03-12

Rest API

  • X-MBX-USED-WEIGHT标头已添加到Rest API响应中。
  • Retry-After标头已添加到Rest API 418和429响应中。
  • 取消Rest API时,如果交易对的"状态"不是" TRADING",则现在可以返回"errorCode" -1013或-2011。 api/v1/depth不再具有被忽略和为空的[[]`。 api/v3/myTrades现在返回quoteQty; 价格*交易数量。

Websocket 流

  • <symbol>@depth<symbol>@depthX 流不再具有被忽略且为空的"[]"。

系统改进

  • 匹配引擎稳定性/可靠性改进。
  • Rest API性能改进。

2018-11-13

Rest API

  • 现在可以在限制交易期间通过Rest API取消订单。
  • 新的过滤器:PERCENT_PRICEMARKET_LOT_SIZEMAX_NUM_ICEBERG_ORDERS
  • 添加了RAW_REQUESTS速率限制。 限制取决于X分钟内的请求数量(不考虑重量)。
  • 无交易对查询的/api/v3/ticker/price权重增加到2。
  • /api/v3/ticker/bookTicker对于无符号查询增加了2的权重。
  • DELETE /api/v3/order现在将返回订单最终状态的执行报告。
  • MIN_NOTIONAL过滤器有两个新参数:
    • applyToMarket(过滤器是否应用于MARKET订单)
    • avgPriceMins(平均价格的分钟数)。
  • intervalNum已添加到/api/v1/exchangeInfo限制中。 intervalNum描述间隔的数量。 例如:intervalNum 5,带有interval分钟,表示"每5分钟"。

平均价格的计算规则解释:

  1. 前5分钟的所有交易/数量交易的(数量*价格)。

  2. 如果最近5分钟内没有交易,则以5分钟窗口外发生的第一笔交易为准。     例如,如果最后一次交易是在20分钟前,则该交易的价格为5分钟的平均值。

  3. 如果代码上没有交易,则没有平均价格,因此无法下达市价单。对于在MIN_NOTIONAL过滤器上启用了applyToMarket的新交易对,除非有至少一笔交易,才能下达市价单。

  4. 当前的平均价格可以在这里查看:https://api.binance.com/api/v3/avgPrice?symbol=<symbol> 例如: https://api.binance.com/api/v3/avgPrice?symbol=BNBUSDT

用户数据流

  • 将"最后报价资产交易量"(作为变量" Y")添加到执行报告中。 代表lastPrice
  • lastQty(L *l)。

2018-07-18

Rest API

  • 新的过滤器:ICEBERG_PARTS
  • post api/v3/order为newOrderRespType`的新默认值。 ACK,RESULT或FULL; "MARKET"和"LIMIT"订单类型默认为"FULL",所有其他订单默认为"ACK"。
  • POST api/v3 orderRESULTFULL响应现在具有"cummulativeQuoteQty"
  • GET/api/v3/ openOrders的交易对权重减少到40。
  • GET/api/v3/ ticker / 24hr,且交易对权重未降低至40。
  • GET/api/v1/ trades的最大交易量增加到1000。
  • GET/api/v1/ historicalTrades的最大交易量增加到1000。
  • GET/api/v1/ aggTrades的最大总交易量增加到1000。
  • GET/api/v1/ klines的最大总交易量增加到1000。
  • 剩余的API订单查询现在返回updateTime,它代表订单的最后更新时间; time是订单创建时间。
  • 订单查找接口现在将返回"cummulativeQuoteQty"。如果"cummulativeQuoteQty"小于0,则表示该时间该数据不可用。
  • REQUESTS速率限制类型更改为REQUEST_WEIGHT。从逻辑上讲,此限制始终是请求权重,并且其先前的名称引起混乱。

用户数据流

  • 在订单响应和执行报告中添加了"cummulativeQuoteQty"字段(作为变量"Z")。 表示已花费(使用"买入"订单)或已收到(使用"卖出"订单)的"报价"的累计金额。 历史订单在该字段中的值将小于0,这表明该数据目前不可用。 "cummulativeQuoteQty"除以"cummulativeQty"将得出订单的平均价格。
  • O(订单创建时间)添加到执行报告中

2018-01-23

  • GET/api/v1/ historicalTrades权重降低到5
  • GET/api/v1/ aggTrades权重降至1
  • GET/api/v1/ klines权重降至1
  • GET/api/v1/ticker / 24hr,所有交易品种的权重降低到交易交易品种的数量/ 2
  • GET/api/v3/ allOrders权重降低到5
  • GET/api/v3/ myTrades权重降低到5
  • GET/api/v3/帐户权重降低到5
  • GET/api/v1/深度限制= 500重量减少到5
  • GET/api/v1/深度限制= 1000重量减少到10
  • -1003错误消息已更新,可将用户定向到websocket

2018-01-20

  • GET/api/v1/ticker / 24hr单个符号权重降至1
  • GET/api/v3/ openOrders所有交易对权重下降至交易交易品种数量/ 2
  • GET/api/v3/allOrders权重降低到15
  • GET/api/v3/ myTrades权重降低到15
  • GET/api/v3/订单权重降至1
  • myTrades现在将返回自交易/清洗交易的双方

2018-01-14

  • GET/api/v1/aggTrades权重更改为2
  • GET/api/v1/klines权重更改为2
  • GET/api/v3/订单权重更改为2
  • GET/api/v3/ allOrders权重更改为20
  • GET/api/v3/帐户权重更改为20
  • GET/api/v3/ myTrades权重更改为20
  • GET/api/v3/ historicalTrades权重更改为20

介绍

API Key 设置#

  • 很多接口需要API Key才可以访问. 请参考这个页面来设置API Key.
  • 设置API Key的同时,为了安全,建议设置IP访问白名单.
  • 永远不要把你的API key/secret告诉给任何人

API Key 权限设置#

  • 新创建的API的默认权限是 允许交易, 可以用来下单。
  • 如果需要通过API提款, 需要在UI修改权限, 选中 允许提现

账户#

现货账户#

新注册的币安账号都会有一个现货(SPOT)账号。

杠杆账户#

为了开设杠杆(MARGIN)账户, 可以参考Binance杠杆交易账户设置指南

现货测试网#

用户可以使用现货的测试网来体验SPOT交易. 现在只能通过API来交易。

更多信息请参考现货测试网

API 代码库#

Python connector#

一个轻量级的Python代码库,提供让用户直接调用API的方法。支持所有现货的接口。

https://github.com/binance/binance-connector-python

Node.js connector#

一个轻量级的代码库,提供Node.js用户直接调用API的方法。支持所有现货的接口。

https://github.com/binance/binance-connector-node

Postman Collections#

现在你可以通过Postman collection来快速体验、使用API接口。
如果想了解更多如何使用Postman,请访问: Binance API Postman

Swagger#

一个基于OpenAPI规范的RESTful API接口定义的YAML文件,还有便于交互的 Swagger UI 页面。

https://github.com/binance/binance-api-swagger

联系我们#

  • 币安API电报群
    • 咨询关于API或者Websockets性能方面的问题.
    • 咨询文档中没有提及的API问题.
  • 币安开发者社区
    • 咨询关于API/Websockets代码实现,或者任何API/Websockets的问题.
  • 币安客服
    • 咨询关于账户,钱包,2FA等.

基本信息

API 基本信息#

HTTP 返回代码#

  • HTTP 4XX 错误码用于指示错误的请求内容、行为、格式。问题在于请求者。
  • HTTP 403 错误码表示违反WAF限制(Web应用程序防火墙)。
  • HTTP 429 错误码表示警告访问频次超限,即将被封IP。
  • HTTP 418 表示收到429后继续访问,于是被封了。
  • HTTP 5XX 错误码用于指示Binance服务侧的问题。

接口错误代码#

  • 使用接口 /api/v3, 以及 /sapi/v1/margin时, 每个接口都有可能抛出异常;

API 与 SAPI 的错误代码返回形式如下:

{  "code": -1121,  "msg": "Invalid symbol."}

接口的基本信息#

  • GET 方法的接口, 参数必须在 query string中发送。
  • POST, PUT, 和 DELETE 方法的接口,参数可以在内容形式为application/x-www-form-urlencodedquery string 中发送,也可以在 request body 中发送。 如果你喜欢,也可以混合这两种方式发送参数。
  • 对参数的顺序不做要求。
  • 但如果同一个参数名在query string和request body中都有,query string中的会被优先采用。

访问限制#

访问限制基本信息#

  • 以下 是intervalLetter 作为头部值:

    • SECOND => S
    • MINUTE => M
    • HOUR => H
    • DAY => D
  • /api/v3/exchangeInfo rateLimits 数组中包含与交易的有关RAW_REQUESTS,REQUEST_WEIGHT和ORDERS速率限制相关的对象。这些在 限制种类 (rateLimitType) 下的 枚举定义 部分中进一步定义。

  • 违反任何一个速率限制时,将返回429。

IP 访问限制#

  • 每个请求将包含一个X-MBX-USED-WEIGHT-(intervalNum)(intervalLetter)的头,其中包含当前IP所有请求的已使用权重。
  • 每一个接口均有一个相应的权重(weight),有的接口根据参数不同可能拥有不同的权重。越消耗资源的接口权重就会越大。
  • 收到429时,您有责任停止发送请求,不得滥用API。
  • 收到429后仍然继续违反访问限制,会被封禁IP,并收到418错误码
  • 频繁违反限制,封禁时间会逐渐延长,从最短2分钟到最长3天
  • Retry-After的头会与带有418或429的响应发送,并且会给出以秒为单位的等待时长(如果是429)以防止禁令,或者如果是418,直到禁令结束。
  • 访问限制是基于IP的,而不是API Key

###下单频率限制

  • 每个成功的下单回报将包含一个X-MBX-ORDER-COUNT-(intervalNum)(intervalLetter)的头,其中包含当前账户已用的下单限制数量。
  • 当下单数超过限制时,会收到带有429但不含Retry-After头的响应。请检查 GET api/v3/exchangeInfo 的下单频率限制 (rateLimitType = ORDERS) 并等待封禁时间结束。
  • 被拒绝或不成功的下单并不保证回报中包含以上头内容。
  • 下单频率限制是基于每个账户计数的。

WEB SOCKET 连接限制#

  • Websocket服务器每秒最多接受5个消息。消息包括:
    • PING帧
    • PONG帧
    • JSON格式的消息, 比如订阅, 断开订阅.
  • 如果用户发送的消息超过限制,连接会被断开连接。反复被断开连接的IP有可能被服务器屏蔽。
  • 单个连接最多可以订阅 1024 个Streams。

/api/ 与 /sapi/ 接口限频说明#

/api/*接口和 /sapi/*接口采用两套不同的访问限频规则, 两者互相独立。

  • /api/*的接口相关:

    • 按IP和按UID(account)两种模式分别统计, 两者互相独立。
    • 除下单接口外,以 /api/*开头的接口按IP限频,且所有接口共用每分钟1200限制。仅下单接口 POST /api/v3/order 为基于UID(account)模式限制,具体限频为:每10秒50和每天160000。
    • 每个请求将包含一个 X-MBX-USED-WEIGHT-(intervalNum)(intervalLetter)的头,包含当前IP所有请求的已使用权重。
    • 每个成功的下单回报将包含一个X-MBX-ORDER-COUNT-(intervalNum)(intervalLetter)的头,其中包含当前账户已用的下单限制数量。
  • /sapi/*的接口相关:

    • 按IP和按UID(account)两种模式分别统计, 两者互相独立。
    • /sapi/*开头的接口采用单接口限频模式。按IP统计的权重单接口权重总额为每分钟12000;按照UID统计的单接口权重总额是每分钟180000。
    • 每个接口会标明是按照IP或者按照UID统计, 以及相应请求一次的权重值。
    • 按照IP统计的接口, 请求返回头里面会包含X-SAPI-USED-IP-WEIGHT-1M=<value>, 包含当前IP所有请求已使用权重。
    • 按照UID统计的接口, 请求返回头里面会包含X-SAPI-USED-UID-WEIGHT-1M=<value>, 包含当前账户所有已用的UID权重。

数据来源#

  • 因为API系统是异步的, 所以返回的数据有延时很正常, 也在预期之中。
  • 在每个接口中,列出了其数据的来源,可以用于理解数据的时效性。

系统一共有3个数据来源,按照更新速度的先后排序。排在前面的数据最新,在后面就有可能存在延迟。

  • 撮合引擎 - 表示数据来源于撮合引擎
  • 缓存 - 表示数据来源于内部或者外部的缓存
  • 数据库 - 表示数据直接来源于数据库

接口鉴权类型#

  • 每个接口都有自己的鉴权类型,鉴权类型决定了访问时应当进行何种鉴权。
  • 鉴权类型会在本文档中各个接口名称旁声明,如果没有特殊声明即默认为 NONE
  • 如果需要 API-keys,应当在HTTP头中以 X-MBX-APIKEY字段传递。
  • API-keys 与 secret-keys 是大小写敏感的
  • API-keys可以被配置为只拥有访问一些接口的权限。 例如, 一个 API-key 仅可用于发送交易指令, 而另一个 API-key 则可访问除交易指令外的所有路径。
  • 默认 API-keys 可访问所有鉴权路径.
鉴权类型描述
NONE不需要鉴权的接口
TRADE需要有效的 API-Key 和签名
MARGIN需要有效的 API-Key 和签名
USER_DATA需要有效的 API-Key 和签名
USER_STREAM需要有效的 API-Key
MARKET_DATA需要有效的 API-Key
  • TRADE, MARGINUSER_DATA 接口是 签名(SIGNED)接口.

SIGNED (TRADE、USER_DATA AND MARGIN) Endpoint security#

  • 调用SIGNED 接口时,除了接口本身所需的参数外,还需要在query stringrequest body中传递 signature, 即签名参数。
  • 签名使用HMAC SHA256算法. API-KEY所对应的API-Secret作为 HMAC SHA256 的密钥,其他所有参数作为HMAC SHA256的操作对象,得到的输出即为签名。
  • 签名 大小写不敏感.
  • "totalParams"定义为与"request body"串联的"query string"。

时间同步安全#

  • 签名接口均需要传递 timestamp参数,其值应当是请求发送时刻的unix时间戳(毫秒)。
  • 服务器收到请求时会判断请求中的时间戳,如果是5000毫秒之前发出的,则请求会被认为无效。这个时间空窗值可以通过发送可选参数 recvWindow来定义。

逻辑伪代码如下:

  if (timestamp < (serverTime + 1000) && (serverTime - timestamp) <= recvWindow)  {    // process request  }   else   {    // reject request  }

关于交易时效性 互联网状况并不完全稳定可靠,因此你的程序本地到币安服务器的时延会有抖动。这是我们设置recvWindow的目的所在,如果你从事高频交易,对交易时效性有较高的要求,可以灵活设置recvWindow以达到你的要求。

POST /api/v3/order 的示例#

以下是在linux bash环境下使用 echo openssl 和curl工具实现的一个调用接口下单的示例 apikey、secret仅供示范

KeyValue
apiKeyvmPUZE6mv9SD5VNHk4HlWFsOr6aKE2zvsw0MuIgwCIPy6utIco14y7Ju91duEh8A
secretKeyNhqPtmdSJYdKjVHjA7PZj4Mge3R5YNiP1e3UZjInClVN65XAbvqqM6A7H5fATj0j
参数取值
symbolLTCBTC
sideBUY
typeLIMIT
timeInForceGTC
quantity1
price0.1
recvWindow5000
timestamp1499827319559

示例 1: 所有参数通过 request body 发送#

Example 1

HMAC SHA256 signature:

    $ echo -n "symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTC&quantity=1&price=0.1&recvWindow=5000&timestamp=1499827319559" | openssl dgst -sha256 -hmac "NhqPtmdSJYdKjVHjA7PZj4Mge3R5YNiP1e3UZjInClVN65XAbvqqM6A7H5fATj0j"    (stdin)= c8db56825ae71d6d79447849e617115f4a920fa2acdcab2b053c4b2838bd6b71

curl command:

    (HMAC SHA256)    $ curl -H "X-MBX-APIKEY: vmPUZE6mv9SD5VNHk4HlWFsOr6aKE2zvsw0MuIgwCIPy6utIco14y7Ju91duEh8A" -X POST 'https://api.binance.com/api/v3/order' -d 'symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTC&quantity=1&price=0.1&recvWindow=5000&timestamp=1499827319559&signature=c8db56825ae71d6d79447849e617115f4a920fa2acdcab2b053c4b2838bd6b71'    
  • requestBody:

symbol=LTCBTC
&side=BUY
&type=LIMIT
&timeInForce=GTC
&quantity=1
&price=0.1
&recvWindow=5000
×tamp=1499827319559

示例 2: 所有参数通过 query string 发送#

Example 2

HMAC SHA256 signature:

    $ echo -n "symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTC&quantity=1&price=0.1&recvWindow=5000&timestamp=1499827319559" | openssl dgst -sha256 -hmac "NhqPtmdSJYdKjVHjA7PZj4Mge3R5YNiP1e3UZjInClVN65XAbvqqM6A7H5fATj0j"    (stdin)= c8db56825ae71d6d79447849e617115f4a920fa2acdcab2b053c4b2838bd6b71    

curl command:

    (HMAC SHA256)   $ curl -H "X-MBX-APIKEY: vmPUZE6mv9SD5VNHk4HlWFsOr6aKE2zvsw0MuIgwCIPy6utIco14y7Ju91duEh8A" -X POST 'https://api.binance.com/api/v3/order?symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTC&quantity=1&price=0.1&recvWindow=5000&timestamp=1499827319559&signature=c8db56825ae71d6d79447849e617115f4a920fa2acdcab2b053c4b2838bd6b71'    
  • queryString:

symbol=LTCBTC
&side=BUY
&type=LIMIT
&timeInForce=GTC
&quantity=1
&price=0.1
&recvWindow=5000
×tamp=1499827319559

示例 3: 混合使用 query string 和 request body#

Example 3

HMAC SHA256 signature:

   $ echo -n "symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTCquantity=1&price=0.1&recvWindow=5000&timestamp=1499827319559" | openssl dgst -sha256 -hmac "NhqPtmdSJYdKjVHjA7PZj4Mge3R5YNiP1e3UZjInClVN65XAbvqqM6A7H5fATj0j"    (stdin)= 0fd168b8ddb4876a0358a8d14d0c9f3da0e9b20c5d52b2a00fcf7d1c602f9a77    

curl command:

    (HMAC SHA256)    $ curl -H "X-MBX-APIKEY: vmPUZE6mv9SD5VNHk4HlWFsOr6aKE2zvsw0MuIgwCIPy6utIco14y7Ju91duEh8A" -X POST 'https://api.binance.com/api/v3/order?symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTC' -d 'quantity=1&price=0.1&recvWindow=5000&timestamp=1499827319559&signature=0fd168b8ddb4876a0358a8d14d0c9f3da0e9b20c5d52b2a00fcf7d1c602f9a77'
  • queryString:

symbol=LTCBTC&side=BUY&type=LIMIT&timeInForce=GTC

  • requestBody:

quantity=1&price=0.1&recvWindow=5000×tamp=1499827319559

请注意,签名与示例3不同。 "GTC"和"quantity = 1"之间没有&。


公开 API 参数#

术语#

这里的术语适用于全部文档,建议特别是新手熟读,也便于理解。

  • base asset 指一个交易对的交易对象,即写在靠前部分的资产名, 比如BTCUSDT, BTCbase asset
  • quote asset 指一个交易对的定价资产,即写在靠后部分的资产名, 比如BTCUSDT, USDTquote asset

枚举定义#

交易对状态 (状态 status):

  • PRE_TRADING 交易前
  • TRADING 交易中
  • POST_TRADING 交易后
  • END_OF_DAY
  • HALT
  • AUCTION_MATCH
  • BREAK

交易对类型:

  • SPOT 现货

订单状态 (状态 status):

状态描述
NEW订单被交易引擎接受
PARTIALLY_FILLED部分订单被成交
FILLED订单完全成交
CANCELED用户撤销了订单
PENDING_CANCEL撤销中(目前并未使用)
REJECTED订单没有被交易引擎接受,也没被处理
EXPIRED订单被交易引擎取消, 比如
LIMIT FOK 订单没有成交
市价单没有完全成交
强平期间被取消的订单
交易所维护期间被取消的订单

OCO 状态 (状态类型集 listStatusType):

状态描述
RESPONSE当ListStatus响应失败的操作时使用。 (订单完成或取消订单)
EXEC_STARTED当已经下单或者订单有更新时
ALL_DONE当订单执行结束或者不在激活状态

OCO 订单状态 (订单状态集 listOrderStatus):

状态描述
EXECUTING当已经下单或者订单有更新时
ALL_DONE当订单执行结束或者不在激活状态
REJECT当订单状态响应失败(订单完成或取消订单)

指定订单的类型

  • OCO 选择性委托订单

订单类型 (orderTypes, type):

关于订单类型的类型,可以参考这里详细说明

  • LIMIT 限价单
  • MARKET 市价单
  • STOP_LOSS 止损单
  • STOP_LOSS_LIMIT 限价止损单
  • TAKE_PROFIT 止盈单
  • TAKE_PROFIT_LIMIT 限价止盈单
  • LIMIT_MAKER 限价只挂单

订单返回类型 (newOrderRespType):

  • ACK
  • RESULT
  • FULL

订单方向 (方向 side):

  • BUY 买入
  • SELL 卖出

有效方式 (timeInForce):

这里定义了订单多久能够失效

StatusDescription
GTC成交为止
订单会一直有效,直到被成交或者取消。
IOC无法立即成交的部分就撤销
订单在失效前会尽量多的成交。
FOK无法全部立即成交就撤销
如果无法全部成交,订单会失效。

K线间隔:

m -> 分钟; h -> 小时; d -> 天; w -> 周; M -> 月

  • 1m
  • 3m
  • 5m
  • 15m
  • 30m
  • 1h
  • 2h
  • 4h
  • 6h
  • 8h
  • 12h
  • 1d
  • 3d
  • 1w
  • 1M

限制种类 (rateLimitType)

REQUEST_WEIGHT

    {      "rateLimitType": "REQUEST_WEIGHT",      "interval": "MINUTE",      "intervalNum": 1,      "limit": 1200    }

ORDERS

    {      "rateLimitType": "ORDERS",      "interval": "SECOND",      "intervalNum": 10,      "limit": 100    },    {      "rateLimitType": "ORDERS",      "interval": "DAY",      "intervalNum": 1,      "limit": 200000    }

RAW_REQUESTS

    {      "rateLimitType": "RAW_REQUESTS",      "interval": "MINUTE",      "intervalNum": 5,      "limit": 5000    }
  • REQUEST_WEIGHT 单位时间请求权重之和上限

  • ORDERS 单位时间下单次数限制

  • RAW_REQUESTS 单位时间请求次数上限

限制间隔 (interval)

  • SECOND 秒
  • MINUTE 分
  • DAY 天

过滤器#

过滤器,即Filter,定义了一系列交易规则。 共有两类,分别是针对交易对的过滤器symbol filters,和针对整个交易所的过滤器 exchange filters

交易对过滤器#

PRICE_FILTER 价格过滤器#

/exchangeInfo 响应中的格式:

  {    "filterType": "PRICE_FILTER",    "minPrice": "0.00000100",    "maxPrice": "100000.00000000",    "tickSize": "0.00000100"  }

价格过滤器 用于检测订单中 price 参数的合法性。包含以下三个部分:

  • minPrice 定义了 price/stopPrice 允许的最小值。
  • maxPrice 定义了 price/stopPrice 允许的最大值。
  • tickSize 定义了 price/stopPrice 的步进间隔,即price必须等于minPrice+(tickSize的整数倍)

以上每一项均可为0,为0时代表这一项不再做限制。

逻辑伪代码如下:

  • price >= minPrice
  • price <= maxPrice
  • (price-minPrice) % tickSize == 0

PERCENT_PRICE 价格振幅过滤器#

/exchangeInfo 响应中的格式:

  {    "filterType": "PERCENT_PRICE",    "multiplierUp": "5",    "multiplierDown": "0.2",    "avgPriceMins": 5  }

PERCENT_PRICE过滤器基于先前交易的平均值来定义价格的有效范围。
avgPriceMins是计算平均价格的分钟数。 0表示使用最后的价格。

为了通过"价格百分比","价格"必须符合以下条件:

  • price <=weightedAveragePrice *multiplierUp
  • price> =weightedAveragePrice *multiplierDown

LOT_SIZE 订单尺寸#

/exchangeInfo 响应中的格式:

  {    "filterType": "LOT_SIZE",    "minQty": "0.00100000",    "maxQty": "100000.00000000",    "stepSize": "0.00100000"  }

Lots是拍卖术语,LOT_SIZE 过滤器对订单中的 quantity 也就是数量参数进行合法性检查。包含三个部分:

  • minQty 表示 quantity/icebergQty 允许的最小值。
  • maxQty 表示 quantity/icebergQty 允许的最大值。
  • stepSize 表示 quantity/icebergQty 允许的步进值。

逻辑伪代码如下:

  • quantity >= minQty
  • quantity <= maxQty
  • (quantity-minQty) % stepSize == 0

MIN_NOTIONAL 最小名义价值(成交额)#

/exchangeInfo 响应中的格式:

  {    "filterType": "MIN_NOTIONAL",    "minNotional": "0.00100000",    "applyToMarket": true,    "avgPriceMins": 5  }

MIN_NOTIONAL过滤器定义了交易对订单所允许的最小名义价值(成交额)。 订单的名义价值是价格数量。 如果是高级订单(比如止盈止损订单STOP_LOSS_LIMIT),名义价值会按照stopPrice quantity来计算。 如果是冰山订单,名义价值会按照price * icebergQty来计算。 applyToMarket确定 MIN_NOTIONAL过滤器是否也将应用于MARKET订单。
由于MARKET订单没有价格,因此会在最后avgPriceMins分钟内使用平均价格。
avgPriceMins是计算平均价格的分钟数。 0表示使用最后的价格。

ICEBERG_PARTS 冰山订单拆分数#

/exchangeInfo 响应中的格式:

  {    "filterType": "ICEBERG_PARTS",    "limit": 10  }

ICEBERG_PARTS 代表冰山订单最多可以拆分成多少个小订单。
计算方法为 向上取整(qty / icebergQty)

MARKET_LOT_SIZE 市价订单尺寸#

*/exchangeInfo 响应中的格式:

  {    "filterType": "MARKET_LOT_SIZE",    "minQty": "0.00100000",    "maxQty": "100000.00000000",    "stepSize": "0.00100000"  }

MARKET_LOT_SIZE过滤器为交易对上的MARKET订单定义了数量(即拍卖中的"手数")规则。 共有3部分:

  • minQty定义了允许的最小quantity
  • maxQty定义了允许的最大数量。
  • stepSize定义了可以增加/减少数量的间隔。

为了通过market lot sizequantity必须满足以下条件:

  • quantity >= minQty
  • quantity <= maxQty
  • (quantity-minQty) % stepSize == 0

MAX_NUM_ORDERS 最多订单数#

/exchangeInfo 响应中的格式:

  {    "filterType": "MAX_NUM_ORDERS",    "maxNumOrders": 25  }

定义了某个交易对最多允许的挂单数量(不包括已关闭的订单)
普通订单与条件订单均计算在内

MAX_NUM_ALGO_ORDERS 最多条件单数#

/exchangeInfo 响应中的格式:

  {    "filterType": "MAX_NUM_ALGO_ORDERS",    "maxNumAlgoOrders": 5  }

MAX_NUM_ALGO_ORDERS过滤器定义允许账户在交易对上开设的"algo"订单的最大数量。
"Algo"订单是STOP_LOSSSTOP_LOSS_LIMITTAKE_PROFITTAKE_PROFIT_LIMIT止盈止损单。

MAX_NUM_ICEBERG_ORDERS 最多冰山单数#

MAX_NUM_ICEBERG_ORDERS过滤器定义了允许在交易对上开设账户的ICEBERG订单的最大数量。
ICEBERG订单是icebergQty大于0的任何订单。.

/exchangeInfo 响应中的格式:

  {    "filterType": "MAX_NUM_ICEBERG_ORDERS",    "maxNumIcebergOrders": 5  }

MAX_POSITION 过滤器#

这个过滤器定义账户允许的基于base asset的最大仓位。一个用户的仓位可以定义为如下资产的总和:

  1. base asset的可用余额
  2. base asset的锁定余额
  3. 所有处于open的买单的数量总和

如果用户的仓位大于最大的允许仓位,买单会被拒绝。

/exchangeInfo 响应中的格式:

{  "filterType": "MAX_POSITION",  "maxPosition": "10.00000000"}

交易所级别过滤器#

EXCHANGE_MAX_NUM_ORDERS 最多订单数#

/exchangeInfo 响应中的格式:

  {    "filterType": "EXCHANGE_MAX_NUM_ORDERS",    "maxNumOrders": 1000  }

MAX_NUM_ORDERS过滤器定义了允许在交易对上开设账户的最大订单数。
请注意,此过滤器同时计算"algo"订单和常规订单。

EXCHANGE_MAX_NUM_ALGO_ORDERS 交易最大ALGO订单数#

/exchangeInfo 响应中的格式:

  {    "filterType": "EXCHANGE_MAX_ALGO_ORDERS",    "maxNumAlgoOrders": 200  }

MAX_ALGO_ORDERS过滤器定义了允许在交易上开设账户的"algo"订单的最大数量。
"Algo"订单是STOP_LOSSSTOP_LOSS_LIMITTAKE_PROFITTAKE_PROFIT_LIMIT订单。


钱包接口

系统状态(System)#

响应

{         "status": 0,              // 0: 正常,1:系统维护        "msg": "normal"           // "normal", "system_maintenance"}

GET /sapi/v1/system/status

获取系统状态。

权重(IP): 1

获取所有币信息 (USER_DATA)#

获取针对用户的所有(Binance支持充提操作的)币种信息。

响应

[    {        "coin": "BTC",        "depositAllEnable": true,        "free": "0.08074558",        "freeze": "0.00000000",        "ipoable": "0.00000000",        "ipoing": "0.00000000",        "isLegalMoney": false,        "locked": "0.00000000",        "name": "Bitcoin",        "networkList": [            {                "addressRegex": "^(bnb1)[0-9a-z]{38}$",                "coin": "BTC",                "depositDesc": "Wallet Maintenance, Deposit Suspended", // 仅在充值关闭时返回                "depositEnable": false,                "isDefault": false,                        "memoRegex": "^[0-9A-Za-z\\-_]{1,120}$",                "minConfirm": 1,  // 上账所需的最小确认数                "name": "BEP2",                "network": "BNB",                            "resetAddressStatus": false,                "specialTips": "Both a MEMO and an Address are required to successfully deposit your BEP2-BTCB tokens to Binance.",                "unLockConfirm": 0,  // 解锁需要的确认数                 "withdrawDesc": "Wallet Maintenance, Withdrawal Suspended", // 仅在提现关闭时返回                "withdrawEnable": false,                "withdrawFee": "0.00000220",                "withdrawIntegerMultiple": "0.00000001",                "withdrawMax": "9999999999.99999999",                "withdrawMin": "0.00000440",                "sameAddress": true  // 是否需要memo            },            {                "addressRegex": "^[13][a-km-zA-HJ-NP-Z1-9]{25,34}$|^(bc1)[0-9A-Za-z]{39,59}$",                "coin": "BTC",                "depositEnable": true,                "isDefault": true,                "memoRegex": "",                "minConfirm": 1,  // 上账所需的最小确认数                "name": "BTC",                "network": "BTC",                "resetAddressStatus": false,                "specialTips": "",                "unLockConfirm": 0,  // 解锁需要的确认数                "withdrawEnable": true,                "withdrawFee": "0.00050000",                "withdrawIntegerMultiple": "0.00000001",                "withdrawMax": "750",                "withdrawMin": "0.00100000",                "sameAddress": false            }        ],        "storage": "0.00000000",        "trading": true,        "withdrawAllEnable": true,        "withdrawing": "0.00000000"    }]

GET /sapi/v1/capital/config/getall (HMAC SHA256)

权重(IP): 10

参数:

名称类型是否必需描述
recvWindowLONGNO
timestampLONGYES

查询每日资产快照 (USER_DATA)#

响应

{   "code":200, // 200表示返回正确,否则即为错误码   "msg":"", // 与错误码对应的报错信息   "snapshotVos":[      {         "data":{            "balances":[               {                  "asset":"BTC",                  "free":"0.09905021",                  "locked":"0.00000000"               },               {                  "asset":"USDT",                  "free":"1.89109409",                  "locked":"0.00000000"               }            ],            "totalAssetOfBtc":"0.09942700"         },         "type":"spot",         "updateTime":1576281599000      }   ]}

{   "code":200, // 200表示返回正确,否则即为错误码   "msg":"", // 与错误码对应的报错信息   "snapshotVos":[      {         "data":{            "marginLevel":"2748.02909813",            "totalAssetOfBtc":"0.00274803",            "totalLiabilityOfBtc":"0.00000100",            "totalNetAssetOfBtc":"0.00274750",            "userAssets":[               {                  "asset":"XRP",                  "borrowed":"0.00000000",                  "free":"1.00000000",                  "interest":"0.00000000",                  "locked":"0.00000000",                  "netAsset":"1.00000000"               }            ]         },         "type":"margin",         "updateTime":1576281599000      }   ]}

{   "code":200, // 200表示返回正确,否则即为错误码   "msg":"", // 与错误码对应的报错信息   "snapshotVos":[      {         "data":{            "assets":[               {                  "asset":"USDT",                  "marginBalance":"118.99782335",                  "walletBalance":"120.23811389"               }            ],            "position":[               {                  "entryPrice":"7130.41000000",                  "markPrice":"7257.66239673",                  "positionAmt":"0.01000000",                  "symbol":"BTCUSDT",                  "unRealizedProfit":"1.24029054" //只显示开仓当时的未实现盈亏,不会实时更新,可以忽略               }            ]         },         "type":"futures",         "updateTime":1576281599000      }   ]}

GET /sapi/v1/accountSnapshot (HMAC SHA256)

权重(IP): 2400

参数:

名称类型是否必需描述
typeSTRINGYES"SPOT", "MARGIN", "FUTURES"
startTimeLONGNO
endTimeLONGNO
limitINTNOmin 5, max 30, default 5
recvWindowLONGNO
timestampLONGYES
  • 查询时间范围最大不得超过30天

关闭站内划转 (USER_DATA)#

响应

{}

POST /sapi/v1/account/disableFastWithdrawSwitch (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
recvWindowLONGNO
timestampLONGYES
  • 注意:

    此请求会关闭您账户的站内快速划转。您需要为api-key开通"trade"权限才能发送此请求。

开启站内划转 (USER_DATA)#

响应

{}

POST /sapi/v1/account/enableFastWithdrawSwitch (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
recvWindowLONGNO
timestampLONGYES
  • 此请求会开启您账户的站内快速划转。您需要为api-key开通"trade"权限才能发送此请求。
  • 开启以后, 如果收款方为币安账户地址,转账费用为0, 速度快, 不需要提交上链请求。

提币 (USER_DATA)#

响应

{    "id":"7213fea8e94b4a5593d507237e5a555b"}

POST /sapi/v1/capital/withdraw/apply (HMAC SHA256)

Submit a withdraw request.

权重(IP): 1

参数:

名称类型是否必需描述
coinSTRINGYES
withdrawOrderIdSTRINGNO自定义提币ID
networkSTRINGNO提币网络
addressSTRINGYES提币地址
addressTagSTRINGNO某些币种例如 XRP,XMR 允许填写次级地址标签
amountDECIMALYES数量
transactionFeeFlagBOOLEANNO当站内转账时免手续费, true: 手续费归资金转入方; false: 手续费归资金转出方; . 默认 false.
nameSTRINGNO地址的备注,填写该参数后会加入该币种的提现地址簿。地址簿上限为20,超出后会造成提现失败。地址中的空格需要encode成%20
recvWindowLONGNO
timestampLONGYES
  • 如果不发送 network, 将按该币种默认网络返回结果;
  • 可以在接口Get /sapi/v1/capital/config/getall (HMAC SHA256)的返回值中某币种的networkList 获取 network网络字段和isDefault是否为默认网络。

获取充值历史(支持多网络) (USER_DATA)#

响应

[    {        "amount":"0.00999800",        "coin":"PAXG",        "network":"ETH",        "status":1,        "address":"0x788cabe9236ce061e5a892e1a59395a81fc8d62c",        "addressTag":"",        "txId":"0xaad4654a3234aa6118af9b4b335f5ae81c360b2394721c019b5d1e75328b09f3",        "insertTime":1599621997000,        "transferType":0,        "unlockConfirm":"12/12", // 解锁需要的网络确认次数        "confirmTimes":"12/12"    },    {        "amount":"0.50000000",        "coin":"IOTA",        "network":"IOTA",        "status":1,        "address":"SIZ9VLMHWATXKV99LH99CIGFJFUMLEHGWVZVNNZXRJJVWBPHYWPPBOSDORZ9EQSHCZAMPVAPGFYQAUUV9DROOXJLNW",        "addressTag":"",        "txId":"ESBFVQUTPIWQNJSPXFNHNYHSQNTGKRVKPRABQWTAXCDWOAKDKYWPTVG9BGXNVNKTLEJGESAVXIKIZ9999",        "insertTime":1599620082000,        "transferType":0,        "unlockConfirm":"1/12",        "confirmTimes":"1/1"    }]

GET /sapi/v1/capital/deposit/hisrec (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
coinSTRINGNO
statusINTNO0(0:pending,6: credited but cannot withdraw, 1:success)
startTimeLONGNO默认当前时间90天前的时间戳
endTimeLONGNO默认当前时间戳
offsetINTNO默认:0
limitINTNO默认:1000,最大1000
recvWindowLONGNO
timestampLONGYES
  • 请注意startTimeendTime 的默认时间戳,保证请求时间间隔不超过90天.
  • 同时提交startTimeendTime间隔不得超过90天.

获取提币历史 (支持多网络) (USER_DATA)#

响应

[    {        "address": "0x94df8b352de7f46f64b01d3666bf6e936e44ce60",        "amount": "8.91000000",   // 提现转出金额        "applyTime": "2019-10-12 11:12:02",  // UTC 时间        "coin": "USDT",        "id": "b6ae22b3aa844210a7041aee7589627c",  // 该笔提现在币安的id        "withdrawOrderId": "WITHDRAWtest123", // 自定义ID, 如果没有则不返回该字段        "network": "ETH",        "transferType": 0 // 1: 站内转账, 0: 站外转账            "status": 6,        "transactionFee": "0.004", // 手续费        "confirmNo":3,  // 提现确认数        "txId": "0xb5ef8c13b968a406cc62a93a8bd80f9e9a906ef1b3fcf20a2e48573c17659268"   // 提现交易id    },    {        "address": "1FZdVHtiBqMrWdjPyRPULCUceZPJ2WLCsB",        "amount": "0.00150000",        "applyTime": "2019-09-24 12:43:45",        "coin": "BTC",        "id": "156ec387f49b41df8724fa744fa82719",        "network": "BTC",        "transferType": 0,  // 1: 站内转账, 0: 站外转账        "status": 6,        "transactionFee": "0.004",        "confirmNo":2,        "txId": "60fd9007ebfddc753455f95fafa808c4302c836e4d1eebc5a132c36c1d8ac354"    }]

GET /sapi/v1/capital/withdraw/history (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
coinSTRINGNO
withdrawOrderIdSTRINGNO
statusINTNO0(0:已发送确认Email,1:已被用户取消 2:等待确认 3:被拒绝 4:处理中 5:提现交易失败 6 提现完成)
offsetINTNO
limitINTNO默认:1000, 最大:1000
startTimeLONGNO默认当前时间90天前的时间戳
endTimeLONGNO默认当前时间戳
recvWindowLONGNO
timestampLONGYES
  • 支持多网络提币前的历史记录可能不会返回network字段.
  • 请注意startTimeendTime 的默认时间戳,保证请求时间间隔不超过90天.
  • 同时提交startTimeendTime间隔不得超过90天.

获取充值地址 (支持多网络) (USER_DATA)#

响应

{    "address": "1HPn8Rx2y6nNSfagQBKy27GB99Vbzg89wv",    "coin": "BTC",    "tag": "",    "url": "https://btc.com/1HPn8Rx2y6nNSfagQBKy27GB99Vbzg89wv"}

GET /sapi/v1/capital/deposit/address (HMAC SHA256)

权重(IP): 10

参数:

名称类型是否必需描述
coinSTRINGYES
networkSTRINGNO
recvWindowLONGNO
timestampLONGYES
  • 如果不发送 network, 将按该币种默认网络返回结果;
  • 可以在接口Get /sapi/v1/capital/config/getall (HMAC SHA256)的返回值中某币种的networkList 获取 network网络字段和isDefault是否为默认网络。

账户状态 (USER_DATA)#

响应

{    "data": "Normal" }

GET /sapi/v1/account/status

获取账户状态详情。

权重(IP): 1

参数:

名称类型是否必需描述
recvWindowLONGNO
timestampLONGYES

账户API交易状态(USER_DATA)#

响应

{    "data": {          // 账户API交易状态详情            "isLocked": false,   // API交易功能是否被锁            "plannedRecoverTime": 0,  // API交易功能被锁情况下的预计恢复时间            "triggerCondition": {                     "GCR": 150,  // Number of GTC orders                    "IFER": 150, // Number of FOK/IOC orders                    "UFR": 300   // Number of orders            },            "indicators": {  // The indicators updated every 30 seconds                 "BTCUSDT": [  // The symbol                    {                    "i": "UFR",  // Unfilled Ratio (UFR)                    "c": 20,     // Count of all orders                    "v": 0.05,   // Current UFR value                    "t": 0.995   // Trigger UFR value                    },                    {                    "i": "IFER", // IOC/FOK Expiration Ratio (IFER)                    "c": 20,     // Count of FOK/IOC orders                    "v": 0.99,   // Current IFER value                    "t": 0.99    // Trigger IFER value                    },                    {                    "i": "GCR",  // GTC Cancellation Ratio (GCR)                    "c": 20,     // Count of GTC orders                    "v": 0.99,   // Current GCR value                    "t": 0.99    // Trigger GCR value                    }                    ],                    "ETHUSDT": [                     {                    "i": "UFR",                    "c": 20,                    "v": 0.05,                    "t": 0.995                    },                    {                    "i": "IFER",                    "c": 20,                    "v": 0.99,                    "t": 0.99                    },                    {                    "i": "GCR",                    "c": 20,                    "v": 0.99,                    "t": 0.99                    }                    ]            },            "updateTime": 1547630471725       }}

GET /sapi/v1/account/apiTradingStatus (HMAC SHA256)

获取 api 账户交易状态详情。

权重(IP): 1

参数:

名称类型是否必需描述
recvWindowLONGNO
timestampLONGYES

小额资产转换BNB历史 (USER_DATA)#

响应

{        "total": 8,   //共计发生过的转换笔数        "userAssetDribblets": [            {                "operateTime": 1615985535000,                "totalTransferedAmount": "0.00132256",   //本次转换所得BNB                "totalServiceChargeAmount": "0.00002699",   //本次转换手续费(BNB)                "transId": 45178372831,                "userAssetDribbletDetails": [           //本次转换的细节                    {                        "transId": 4359321,                        "serviceChargeAmount": "0.000009",                        "amount": "0.0009",                        "operateTime": 1615985535000,                        "transferedAmount": "0.000441",                        "fromAsset": "USDT"                    },                    {                        "transId": 4359321,                        "serviceChargeAmount": "0.00001799",                        "amount": "0.0009",                        "operateTime": 1615985535000,                        "transferedAmount": "0.00088156",                        "fromAsset": "ETH"                    }                ]            },            {                "operateTime":1616203180000,                "totalTransferedAmount": "0.00058795",                "totalServiceChargeAmount": "0.000012",                "transId": 4357015,                "userAssetDribbletDetails": [                           {                        "transId": 4357015,                        "serviceChargeAmount": "0.00001"                        "amount": "0.001",                        "operateTime": 1616203180000,                        "transferedAmount": "0.00049",                        "fromAsset": "USDT"                    },                    {                        "transId": 4357015,                        "serviceChargeAmount": "0.000002"                                 "amount": "0.0001",                        "operateTime": 1616203180000,                        "transferedAmount": "0.00009795",                        "fromAsset": "ETH"                    }                ]            }        ]    }}

GET /sapi/v1/asset/dribblet (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
startTimeLONGNO
endTimeLONGNO
recvWindowLONGNO
timestampLONGYES

小额资产转换 (USER_DATA)#

响应

{    "totalServiceCharge":"0.02102542",    "totalTransfered":"1.05127099",    "transferResult":[        {            "amount":"0.03000000",            "fromAsset":"ETH",            "operateTime":1563368549307,            "serviceChargeAmount":"0.00500000",            "tranId":2970932918,            "transferedAmount":"0.25000000"        },        {            "amount":"0.09000000",            "fromAsset":"LTC",            "operateTime":1563368549404,            "serviceChargeAmount":"0.01548000",            "tranId":2970932918,            "transferedAmount":"0.77400000"        },        {            "amount":"248.61878453",            "fromAsset":"TRX",            "operateTime":1563368549489,            "serviceChargeAmount":"0.00054542",            "tranId":2970932918,            "transferedAmount":"0.02727099"        }    ]}

POST /sapi/v1/asset/dust (HMAC SHA256)

把小额资产转换成 BNB.

权重(UID): 10

参数:

名称类型是否必需描述
assetARRAYYES正在转换的资产。 例如:asset = BTC&asset = USDT
recvWindowLONGNO
timestampLONGYES

资产利息记录 (USER_DATA)#

响应

{    "rows":[        {            "amount":"10.00000000",            "asset":"BHFT",            "divTime":1563189166000,            "enInfo":"BHFT distribution",            "tranId":2968885920        },        {            "amount":"10.00000000",            "asset":"BHFT",            "divTime":1563189165000,            "enInfo":"BHFT distribution",            "tranId":2968885920        }    ],    "total":2}

GET /sapi/v1/asset/assetDividend (HMAC SHA256)

获取资产利息记录。

权重(IP): 10

参数:

名称类型是否必需描述
assetSTRINGNO
startTimeLONGNO
endTimeLONGNO
limitINTNODefault 20, max 500
recvWindowLONGNO
timestampLONGYES

上架资产详情 (USER_DATA)#

响应

{    "CTR": {            "minWithdrawAmount": "70.00000000",   //最小提现数量            "depositStatus": false,   //是否可以充值(只有所有网络都关闭充值才为false)            "withdrawFee": 35,   // 提现手续费            "withdrawStatus": true,    //是否开放提现(只有所有网络都关闭提币才为false)            "depositTip": "Delisted, Deposit Suspended"   //暂停充值的原因(如果暂停才有这一项)        },        "SKY": {            "minWithdrawAmount": "0.02000000",            "depositStatus": true,            "withdrawFee": 0.01,            "withdrawStatus": true        }}

GET /sapi/v1/asset/assetDetail (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
assetSTRINGNO
recvWindowLONGNO
timestampLONGYES
  • 充提币信息,建议查询 GET /sapi/v1/capital/config/getall 获取详情。

交易手续费率查询 (USER_DATA)#

响应

[    {        "symbol": "ADABNB",        "makerCommission": "0.001",        "takerCommission": "0.001"    },    {        "symbol": "BNBBTC",        "makerCommission": "0.001",        "takerCommission": "0.001"    }]

GET /sapi/v1/asset/tradeFee (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
symbolSTRINGNO
recvWindowLONGNO
timestampLONGYES

用户万向划转 (USER_DATA)#

响应:

{    "tranId":13526853623}

POST /sapi/v1/asset/transfer (HMAC SHA256)

您需要开通api key 允许万向划转权限来调用此接口。

权重(IP): 1

参数:

名称类型是否必需描述
typeENUMYES
assetSTRINGYES
amountDECIMALYES
fromSymbolSTRINGNO
toSymbolSTRINGNO
recvWindowLONGNO
timestampLONGYES
  • fromSymbol 必须要发送,当类型为 ISOLATEDMARGIN_MARGIN 和 ISOLATEDMARGIN_ISOLATEDMARGIN

  • toSymbol 必须要发送,当类型为 MARGIN_ISOLATEDMARGIN 和 ISOLATEDMARGIN_ISOLATEDMARGIN

  • 目前支持的type划转类型:

    • MAIN_C2C 现货钱包转向C2C钱包
    • MAIN_UMFUTURE 现货钱包转向U本位合约钱包
    • MAIN_CMFUTURE 现货钱包转向币本位合约钱包
    • MAIN_MARGIN 现货钱包转向杠杆全仓钱包
    • MAIN_MINING 现货钱包转向矿池钱包
    • C2C_MAIN C2C钱包转向现货钱包
    • C2C_UMFUTURE C2C钱包转向U本位合约钱包
    • C2C_MINING C2C钱包转向矿池钱包
    • UMFUTURE_MAIN U本位合约钱包转向现货钱包
    • UMFUTURE_C2C U本位合约钱包转向C2C钱包
    • UMFUTURE_MARGIN U本位合约钱包转向杠杆全仓钱包
    • CMFUTURE_MAIN 币本位合约钱包转向现货钱包
    • MARGIN_MAIN 杠杆全仓钱包转向现货钱包
    • MARGIN_UMFUTURE 杠杆全仓钱包转向U本位合约钱包
    • MINING_MAIN 矿池钱包转向现货钱包
    • MINING_UMFUTURE 矿池钱包转向U本位合约钱包
    • MINING_C2C 矿池钱包转向C2C钱包
    • MARGIN_CMFUTURE 杠杆全仓钱包转向币本位合约钱包
    • CMFUTURE_MARGIN 币本位合约钱包转向杠杆全仓钱包
    • MARGIN_C2C 杠杆全仓钱包转向C2C钱包
    • C2C_MARGIN C2C钱包转向杠杆全仓钱包
    • MARGIN_MINING 杠杆全仓钱包转向矿池钱包
    • MINING_MARGIN 矿池钱包转向杠杆全仓钱包
    • MAIN_PAY 现货钱包转向支付钱包
    • PAY_MAIN 支付钱包转向现货钱包
    • ISOLATEDMARGIN_MARGIN 杠杆逐仓钱包转向杠杆全仓钱包
    • MARGIN_ISOLATEDMARGIN 杠杆全仓钱包转向杠杆逐仓钱包
    • ISOLATEDMARGIN_ISOLATEDMARGIN 杠杆逐仓钱包转向杠杆逐仓钱包

查询用户万向划转历史 (USER_DATA)#

响应:

{    "total":2,    "rows":[        {            "asset":"USDT",            "amount":"1",            "type":"MAIN_UMFUTURE"            "status": "CONFIRMED",            "tranId": 11415955596,            "timestamp":1544433328000        },        {            "asset":"USDT",            "amount":"2",            "type":"MAIN_UMFUTURE",            "status": "CONFIRMED",            "tranId": 11366865406,            "timestamp":1544433328000        }    ]}

GET /sapi/v1/asset/transfer (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
typeENUMYES
startTimeLONGNO
endTimeLONGNO
currentINTNO默认 1
sizeINTNO默认 10, 最大 100
fromSymbolSTRINGNO
toSymbolSTRINGNO
recvWindowLONGNO
timestampLONGYES
  • fromSymbol 必须要发送,当类型为 ISOLATEDMARGIN_MARGIN 和 ISOLATEDMARGIN_ISOLATEDMARGIN
  • toSymbol 必须要发送,当类型为 MARGIN_ISOLATEDMARGIN 和 ISOLATEDMARGIN_ISOLATEDMARGIN

资金账户 (USER_DATA)#

响应

[    {        "asset": "USDT",        "free": "1",    // 可用余额        "locked": "0",  // 锁定资金        "freeze": "0",  //冻结资金        "withdrawing": "0",  // 提币        "btcValuation": "0.00000091"  // btc估值    }]

POST /sapi/v1/asset/get-funding-asset (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
assetSTRINGNO
needBtcValuationSTRINGNOtrue or false
recvWindowLONGNO
timestampLONGYES
  • 目前仅支持查询以下业务资产:Binance Pay, Binance Card, Binance Gift Card, Stock Token

查询用户API Key权限 (USER_DATA)#

响应

{   "ipRestrict": false,  // 是否限制ip访问   "createTime": 1623840271000,   // 创建时间   "enableWithdrawals": false,   // 此选项允许通过此api提现。开启提现选项必须添加IP访问限制过滤器   "enableInternalTransfer": true,  // 此选项授权此密钥在您的母账户和子账户之间划转资金   "permitsUniversalTransfer": true,  // 授权该密钥可用于专用的万向划转接口,用以操作其支持的多种类型资金划转。各业务自身的划转接口使用权限,不受本授权影响   "enableVanillaOptions": false,  // 欧式期权交易权限   "enableReading": true,   "enableFutures": false,  // 合约交易权限,需注意开通合约账户之前创建的API Key不支持合约API功能   "enableMargin": false,   // 此选项在全仓账户完成划转后可编辑   "enableSpotAndMarginTrading": false, // 现货和杠杆交易权限   "tradingAuthorityExpirationTime": 1628985600000  // 现货和杠杆交易权限到期时间,如果没有则不返回该字段}

GET /sapi/v1/account/apiRestrictions (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
recvWindowLONGNO
timestampLONGYES

子母账户接口

创建虚拟子账户(适用主账户)#

响应:

{    "email":"addsdd_virtual@aasaixwqnoemail.com"}

POST /sapi/v1/sub-account/virtualSubAccount (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
subAccountStringSTRINGYES请输入字符串,我们将为您创建一个虚拟邮箱进行注册
recvWindowLONGNO
timestampLONGYES
  • 该请求会为您的母账户生成一个虚拟子账户
  • 您需要为母账户apikey开通"允许现货及杠杆交易" 权限调用此接口

查询子账户列表(适用主账户)#

响应:

{    "subAccounts":[        {            "email":"testsub@gmail.com",            "isFreeze":false,            "createTime":1544433328000        },        {            "email":"virtual@oxebmvfonoemail.com",            "isFreeze":false,            "createTime":1544433328000        }    ]}

GET /sapi/v1/sub-account/list (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
emailSTRINGNOSub-account email
isFreezeSTRINGNOtrue or false
pageINTNO默认: 1
limitINTNO默认: 1, 最大: 200
recvWindowLONGNO
timestampLONGYES

查询子账户现货资金划转历史 (适用主账户)#

响应:

[    {        "from":"aaa@test.com",        "to":"bbb@test.com",        "asset":"BTC",        "qty":"10",        "status": "SUCCESS",        "tranId": 6489943656,        "time":1544433328000    },    {        "from":"bbb@test.com",        "to":"ccc@test.com",        "asset":"ETH",        "qty":"2",        "status": "SUCCESS",        "tranId": 6489938713,        "time":1544433328000    }]

GET /sapi/v1/sub-account/sub/transfer/history (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
fromEmailSTRINGNOSub-account email
toEmailSTRINGNOSub-account email
startTimeLONGNO
endTimeLONGNO
pageINTNO默认: 1
limitINTNO默认: 500
recvWindowLONGNO
timestampLONGYES
  • fromEmail 和 toEmail 不可以同时发送
  • 若 fromEmail 和 toEmail 都未传,默认返回fromEmail 为母账户的记录。

查询子账户合约资金划转历史 (适用主账户)#

响应

{    "success":true,    "futuresType": 2,    "transfers":[        {            "from":"aaa@test.com",            "to":"bbb@test.com",            "asset":"BTC",            "qty":"1",            "tranId":11897001102,            "time":1544433328000        },        {            "from":"bbb@test.com",            "to":"ccc@test.com",            "asset":"ETH",            "qty":"2",            "tranId":11631474902,            "time":1544433328000        }    ]}

GET /sapi/v1/sub-account/futures/internalTransfer (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
emailSTRINGYES子账户邮箱 备注
futuresTypeLONGYES1:USDT合约,2: 币本位合约
startTimeLONGNO默认返回100天内历史记录
endTimeLONGNO默认返回100天内历史记录
pageINTNO默认值: 1
limitINTNO默认值: 50, 最大值:500
recvWindowLONGNO
timestampLONGYES

执行子账户合约资金划转 (适用主账户)#

响应

{    "success":true,    "txnId":"2934662589"}

POST /sapi/v1/sub-account/futures/internalTransfer (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
fromEmailSTRINGYES发送者邮箱 备注
toEmailSTRINGYES接收者邮箱 备注
futuresTypeLONGYES1:USDT合约, 2: 币本位合约
assetSTRINGYES
amountDECIMALYES
recvWindowLONGNO
timestampLONGYES
  • 每个母账户每分钟上限2000次

查询子账户资产 (适用主账户)#

响应

{    "balances":[        {            "asset":"ADA",            "free":10000,            "locked":0        },        {            "asset":"BNB",            "free":10003,            "locked":0        },        {            "asset":"BTC",            "free":11467.6399,            "locked":0        },        {            "asset":"ETH",            "free":10004.995,            "locked":0        },        {            "asset":"USDT",            "free":11652.14213,            "locked":0        }    ],}

GET /sapi/v3/sub-account/assets (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
emailSTRINGYES子账户邮箱 备注
recvWindowLONGNO
timestampLONGYES

查询子账户现货资产汇总 (适用主账户)#

响应:

{    "totalCount":2,    "masterAccountTotalAsset":"0.23231201",    "spotSubUserAssetBtcVoList":[        {            "email":"sub123@test.com",            "totalAsset":"9999.00000000"        },        {            "email":"test456@test.com",            "totalAsset":"0.00000000"        }    ]}

获取BTC计价的子账户现货资产汇总。

GET /sapi/v1/sub-account/spotSummary (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
emailSTRINGNO子账户邮箱
pageLONGNO分页,默认 1
sizeLONGNO单页条目数, 默认 10, 最大 20
recvWindowLONGNO
timestampLONGYES

获取子账户充值地址 (适用主账户)#

响应

{    "address":"TDunhSa7jkTNuKrusUTU1MUHtqXoBPKETV",    "coin":"USDT",    "tag":"",    "url":"https://tronscan.org/#/address/TDunhSa7jkTNuKrusUTU1MUHtqXoBPKETV"}

GET /sapi/v1/capital/deposit/subAddress (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
emailSTRINGYES子账户邮箱 备注
coinSTRINGYES
networkSTRINGNO
recvWindowLONGNO
timestampLONGYES

获取子账户充值记录 (适用主账户)#

响应

[    {        "amount":"0.00999800",        "coin":"PAXG",        "network":"ETH",        "status":1,        "address":"0x788cabe9236ce061e5a892e1a59395a81fc8d62c",        "addressTag":"",        "txId":"0xaad4654a3234aa6118af9b4b335f5ae81c360b2394721c019b5d1e75328b09f3",        "insertTime":1599621997000,        "transferType":0,        "confirmTimes":"12/12"    },    {        "amount":"0.50000000",        "coin":"IOTA",        "network":"IOTA",        "status":1,        "address":"SIZ9VLMHWATXKV99LH99CIGFJFUMLEHGWVZVNNZXRJJVWBPHYWPPBOSDORZ9EQSHCZAMPVAPGFYQAUUV9DROOXJLNW",        "addressTag":"",        "txId":"ESBFVQUTPIWQNJSPXFNHNYHSQNTGKRVKPRABQWTAXCDWOAKDKYWPTVG9BGXNVNKTLEJGESAVXIKIZ9999",        "insertTime":1599620082000,        "transferType":0,        "confirmTimes":"1/1"    }]

GET /sapi/v1/capital/deposit/subHisrec (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
emailSTRINGYES子账户邮箱 备注
coinSTRINGNO
statusINTNO0(0:pending,6: credited but cannot withdraw, 1:success)
startTimeLONGNO
endTimeLONGNO
limitINTNO
offsetINTNOdefault:0
recvWindowLONGNO
timestampLONGYES

查询子账户Margin/Futures状态 (适用主账户)#

响应

[    {        "email":"123@test.com",      // user email        "isSubUserEnabled": true,    // true or false        "isUserActive": true,        // true or false        "insertTime": 1570791523523,  // sub account create time        "isMarginEnabled": true,     // true or false for margin        "isFutureEnabled": true,      // true or false for futures.        "mobile": 1570791523523      // user mobile number    }]

GET /sapi/v1/sub-account/status (HMAC SHA256)

权重(IP): 10

参数:

名称类型是否必需描述
emailSTRINGNO子账户邮箱 备注
recvWindowLONGNO
timestampLONGYES
  • 如果不提交子账户email,返回所有子账户情况。

##为子账户开通Margin (适用主账户)

响应

{
    "email":"123@test.com",    "isMarginEnabled": true
}

POST /sapi/v1/sub-account/margin/enable (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
emailSTRINGYES子账户邮箱 备注
recvWindowLONGNO
timestampLONGYES

##查询子账户Margin账户详情 (适用主账户)

响应

{      "email":"123@test.com",      "marginLevel": "11.64405625",      "totalAssetOfBtc": "6.82728457",      "totalLiabilityOfBtc": "0.58633215",      "totalNetAssetOfBtc": "6.24095242",      "marginTradeCoeffVo":             {                "forceLiquidationBar": "1.10000000",  // 强平风险率                "marginCallBar": "1.50000000",        // 补仓风险率                "normalBar": "2.00000000"             // 初始风险率            },      "marginUserAssetVoList": [          {              "asset": "BTC",              "borrowed": "0.00000000",              "free": "0.00499500",              "interest": "0.00000000",              "locked": "0.00000000",              "netAsset": "0.00499500"          },          {              "asset": "BNB",              "borrowed": "201.66666672",              "free": "2346.50000000",              "interest": "0.00000000",              "locked": "0.00000000",              "netAsset": "2144.83333328"          },          {              "asset": "ETH",              "borrowed": "0.00000000",              "free": "0.00000000",              "interest": "0.00000000",              "locked": "0.00000000",              "netAsset": "0.00000000"          },          {              "asset": "USDT",              "borrowed": "0.00000000",              "free": "0.00000000",              "interest": "0.00000000",              "locked": "0.00000000",              "netAsset": "0.00000000"          }      ]}

GET /sapi/v1/sub-account/margin/account (HMAC SHA256)

权重(IP): 10

参数:

名称类型是否必需描述
emailSTRINGYES子账户邮箱 备注
recvWindowLONGNO
timestampLONGYES

##查询子账户Margin账户汇总 (适用主账户)

响应

{    "totalAssetOfBtc": "4.33333333",     "totalLiabilityOfBtc": "2.11111112",     "totalNetAssetOfBtc": "2.22222221",    "subAccountList":[        {            "email":"123@test.com",            "totalAssetOfBtc": "2.11111111",            "totalLiabilityOfBtc": "1.11111111",            "totalNetAssetOfBtc": "1.00000000"        },        {             "email":"345@test.com",            "totalAssetOfBtc": "2.22222222",             "totalLiabilityOfBtc": "1.00000001",             "totalNetAssetOfBtc": "1.22222221"        }    ]}

GET /sapi/v1/sub-account/margin/accountSummary (HMAC SHA256)

权重(IP): 10

参数:

名称类型是否必需描述
recvWindowLONGNO
timestampLONGYES

##为子账户开通Futures (适用主账户)

响应

{
    "email":"123@test.com",    "isFuturesEnabled": true  // true or false
}

POST /sapi/v1/sub-account/futures/enable (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
emailSTRINGYES子账户邮箱 备注
recvWindowLONGNO
timestampLONGYES

##查询子账户Futures账户详情 (适用主账户)

响应


{    "email": "abc@test.com",    "asset": "USDT",    "assets":[        {            "asset": "USDT",            "initialMargin": "0.00000000",            "maintenanceMargin": "0.00000000",            "marginBalance": "0.88308000",            "maxWithdrawAmount": "0.88308000",            "openOrderInitialMargin": "0.00000000",            "positionInitialMargin": "0.00000000",            "unrealizedProfit": "0.00000000",            "walletBalance": "0.88308000"         }    ],    "canDeposit": true,    "canTrade": true,    "canWithdraw": true,    "feeTier": 2,    "maxWithdrawAmount": "0.88308000",    "totalInitialMargin": "0.00000000",    "totalMaintenanceMargin": "0.00000000",    "totalMarginBalance": "0.88308000",    "totalOpenOrderInitialMargin": "0.00000000",    "totalPositionInitialMargin": "0.00000000",    "totalUnrealizedProfit": "0.00000000",    "totalWalletBalance": "0.88308000",    "updateTime": 1576756674610 }

GET /sapi/v1/sub-account/futures/account (HMAC SHA256)

权重(IP): 10

参数:

名称类型是否必需描述
emailSTRINGYES子账户邮箱 备注
recvWindowLONGNO
timestampLONGYES

##查询子账户Futures账户汇总 (适用主账户)

响应

{    "totalInitialMargin": "9.83137400",     "totalMaintenanceMargin": "0.41568700",     "totalMarginBalance": "23.03235621",     "totalOpenOrderInitialMargin": "9.00000000",    "totalPositionInitialMargin": "0.83137400",    "totalUnrealizedProfit": "0.03219710",    "totalWalletBalance": "22.15879444",    "asset": "USD",  //USDT和BUSD资产汇总    "subAccountList":[        {            "email": "123@test.com",            "totalInitialMargin": "9.00000000",             "totalMaintenanceMargin": "0.00000000",             "totalMarginBalance": "22.12659734",             "totalOpenOrderInitialMargin": "9.00000000",            "totalPositionInitialMargin": "0.00000000",            "totalUnrealizedProfit": "0.00000000",            "totalWalletBalance": "22.12659734",            "asset": "USD"  //USDT和BUSD资产汇总        },        {             "email": "345@test.com",            "totalInitialMargin": "0.83137400",             "totalMaintenanceMargin": "0.41568700",            "totalMarginBalance": "0.90575887",            "totalOpenOrderInitialMargin": "0.00000000",            "totalPositionInitialMargin": "0.83137400",            "totalUnrealizedProfit": "0.03219710",            "totalWalletBalance": "0.87356177",            "asset": "USD"        }    ]}

GET /sapi/v1/sub-account/futures/accountSummary (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
recvWindowLONGNO
timestampLONGYES

##查询子账户合约持仓信息 (仅适用主账户)

响应

[    {        "entryPrice": "9975.12000",        "leverage": "50",              // current initial leverage        "maxNotional": "1000000",      // notional value limit of current initial leverage        "liquidationPrice": "7963.54",        "markPrice": "9973.50770517",        "positionAmount": "0.010",        "symbol": "BTCUSDT",        "unrealizedProfit": "-0.01612295"    }]

GET /sapi/v1/sub-account/futures/positionRisk (HMAC SHA256)

权重(IP): 10

参数:

名称类型是否必需描述
emailSTRINGYES子账户邮箱 备注
recvWindowLONGNO
timestampLONGYES

子账户Futures划转 (仅适用主账户)#

响应

{    "txnId":"2966662589"}

POST /sapi/v1/sub-account/futures/transfer (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
emailSTRINGYES子账户邮箱 备注
assetSTRINGYES划转资产, e.g., USDT
amountDECIMALYES划转数量
typeINTYES1: 由子账户的现货账户划转至其USDT本位合约账户; 2: 由子账户的USDT本位合约账户划转至其现货账户; 3:由子账户现货账户划转至其COIN本位合约账户;4: 由子账户COIN本位合约账户划转至其现货账户
recvWindowLONGNO
timestampLONGYES

子账户Margin划转 (仅适用主账户)#

响应

{    "txnId":"2966662589"}

POST /sapi/v1/sub-account/margin/transfer (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
emailSTRINGYES子账户邮箱 备注
assetSTRINGYES划转资产, e.g., USDT
amountDECIMALYES划转数量
typeINTYES1: 由子账户的现货账户划转至其杠杆账户; 2: 由子账户的杠杆账户划转至其现货账户
recvWindowLONGNO
timestampLONGYES

向共同主账户下的子账户主动划转 (仅适用子账户)#

响应

{    "txnId":"2966662589"}

POST /sapi/v1/sub-account/transfer/subToSub (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
toEmailSTRINGYES接收者子邮箱地址 备注
assetSTRINGYES
amountDECIMALYES
recvWindowLONGNO
timestampLONGYES

向主账户主动划转 (仅适用子账户)#

响应

{    "txnId":"2966662589"}

POST /sapi/v1/sub-account/transfer/subToMaster (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
assetSTRINGYES
amountDECIMALYES
recvWindowLONGNO
timestampLONGYES

查询子账户划转历史 (仅适用子账户)#

响应

[  {    "counterParty":"master",    "email":"master@test.com",    "type":1,  // 1 for transfer in , 2 for transfer out    "asset":"BTC",    "qty":"1",    "fromAccountType":"SPOT",    "toAccountType":"SPOT",    "status":"SUCCESS",    "tranId":11798835829,    "time":1544433325000  },  {    "counterParty": "subAccount",    "email": "sub2@test.com",    "type":  1,                                     "asset":"ETH",    "qty":"2",    "fromAccountType":"SPOT",    "toAccountType":"SPOT",    "status":"SUCCESS",    "tranId":11798829519,    "time":1544433326000  }]

GET /sapi/v1/sub-account/transfer/subUserHistory (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
assetSTRINGNO如不提供,返回所有asset 划转记录
typeINTNO1: transfer in, 2: transfer out; 如不提供,返回transfer out方向划转记录
startTimeLONGNO
endTimeLONGNO
limitINTNO默认值: 500
recvWindowLONGNO
timestampLONGYES
  • 如果startTime和endTime均未发送,默认只返回最近30天数据

子母账户万能划转 (适用主账户)#

响应

{    "tranId":11945860693}

POST /sapi/v1/sub-account/universalTransfer (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
fromEmailSTRINGNO
toEmailSTRINGNO
fromAccountTypeSTRINGYES"SPOT","USDT_FUTURE","COIN_FUTURE"
toAccountTypeSTRINGYES"SPOT","USDT_FUTURE","COIN_FUTURE"
assetSTRINGYES
amountDECIMALYES
recvWindowLONGNO
timestampLONGYES
  • 需要开启母账户apikey“允许子母账户划转”权限。
  • 若 fromEmail 未传,默认从母账户转出。
  • 若 toEmail 未传,默认转入母账户。
  • 该划转接口不支持合约账户间直接划转。

查询子母账户万能划转历史 (适用主账户)#

响应

[  {    "tranId":11945860693,    "fromEmail":"master@test.com",    "toEmail":"subaccount1@test.com",    "asset":"BTC",    "amount":"0.1",    "fromAccountType":"SPOT",    "toAccountType":"COIN_FUTURE",    "status":"SUCCESS",    "createTimeStamp":1544433325000  },  {    "tranId":11945857955,    "fromEmail":"master@test.com",    "toEmail":"subaccount2@test.com",                                   "asset":"ETH",    "amount":"0.2",    "fromAccountType":"SPOT",    "toAccountType":"USDT_FUTURE",    "status":"SUCCESS",    "createTimeStamp":1544433326000  }]

GET /sapi/v1/sub-account/universalTransfer (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
fromEmailSTRINGNO
toEmailSTRINGNO
startTimeLONGNO
endTimeLONGNO
pageINTNO默认 1
limitINTNO默认 500, 最大 500
recvWindowLONGNO
timestampLONGYES
  • 本查询接口只可以单边查询,fromEmail 和 toEmail 不能同时传入。
  • 若 fromEmail 和 toEmail 都未传,默认返回 fromEmail 为母账户的划转记录。
  • 只可查询最近30天的记录。

##查询子账户Futures账户详情V2 (适用主账户)

响应

USDT Margined Futures:


{    "futureAccountResp": {    "email": "abc@test.com",    "assets":[        {            "asset": "USDT",            "initialMargin": "0.00000000",            "maintenanceMargin": "0.00000000",            "marginBalance": "0.88308000",            "maxWithdrawAmount": "0.88308000",            "openOrderInitialMargin": "0.00000000",            "positionInitialMargin": "0.00000000",            "unrealizedProfit": "0.00000000",            "walletBalance": "0.88308000"         }    ],    "canDeposit": true,    "canTrade": true,    "canWithdraw": true,    "feeTier": 2,    "maxWithdrawAmount": "0.88308000",    "totalInitialMargin": "0.00000000",    "totalMaintenanceMargin": "0.00000000",    "totalMarginBalance": "0.88308000",    "totalOpenOrderInitialMargin": "0.00000000",    "totalPositionInitialMargin": "0.00000000",    "totalUnrealizedProfit": "0.00000000",    "totalWalletBalance": "0.88308000",    "updateTime": 1576756674610 }

COIN Margined Futures:


{    "deliveryAccountResp": {        "email": "abc@test.com",        "assets":[            {                "asset": "BTC",                "initialMargin": "0.00000000",                "maintenanceMargin": "0.00000000",                "marginBalance": "0.88308000",                "maxWithdrawAmount": "0.88308000",                "openOrderInitialMargin": "0.00000000",                "positionInitialMargin": "0.00000000",                "unrealizedProfit": "0.00000000",                "walletBalance": "0.88308000"             }        ],        "canDeposit": true,        "canTrade": true,        "canWithdraw": true,        "feeTier": 2,        "updateTime": 1598959682001    } }

GET /sapi/v2/sub-account/futures/account (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
emailSTRINGYES子账户邮箱 备注
futuresTypeINTYES1:USDT Margined Futures, 2:COIN Margined Futures
recvWindowLONGNO
timestampLONGYES

##查询子账户Futures账户汇总V2 (适用主账户)

响应

USDT Margined Futures:

{  "futureAccountSummaryResp": {    "totalInitialMargin": "9.83137400",     "totalMaintenanceMargin": "0.41568700",     "totalMarginBalance": "23.03235621",     "totalOpenOrderInitialMargin": "9.00000000",    "totalPositionInitialMargin": "0.83137400",    "totalUnrealizedProfit": "0.03219710",    "totalWalletBalance": "22.15879444",    "asset": "USD",  //USDT和BUSD资产汇总    "subAccountList":[        {            "email": "123@test.com",            "totalInitialMargin": "9.00000000",             "totalMaintenanceMargin": "0.00000000",             "totalMarginBalance": "22.12659734",             "totalOpenOrderInitialMargin": "9.00000000",            "totalPositionInitialMargin": "0.00000000",            "totalUnrealizedProfit": "0.00000000",            "totalWalletBalance": "22.12659734",            "asset": "USD"  //USDT和BUSD资产汇总        },        {             "email": "345@test.com",            "totalInitialMargin": "0.83137400",             "totalMaintenanceMargin": "0.41568700",            "totalMarginBalance": "0.90575887",            "totalOpenOrderInitialMargin": "0.00000000",            "totalPositionInitialMargin": "0.83137400",            "totalUnrealizedProfit": "0.03219710",            "totalWalletBalance": "0.87356177",            "asset": "USD"        }    ]}

COIN Margined Futures:

{  "deliveryAccountSummaryResp": {    "totalMarginBalanceOfBTC": "25.03221121",     "totalUnrealizedProfitOfBTC": "0.12233410",    "totalWalletBalanceOfBTC": "22.15879444",    "asset": "BTC",    "subAccountList":[        {            "email": "123@test.com",            "totalMarginBalance": "22.12659734",             "totalUnrealizedProfit": "0.00000000",            "totalWalletBalance": "22.12659734",            "asset": "BTC"        },        {             "email": "345@test.com",            "totalMarginBalance": "0.90575887",            "totalUnrealizedProfit": "0.03219710",            "totalWalletBalance": "0.87356177",            "asset": "BTC"        }    ]  }}

GET /sapi/v2/sub-account/futures/accountSummary (HMAC SHA256)

权重(IP): 10

参数:

名称类型是否必需描述
futuresTypeINTYES1:USDT Margined Futures, 2:COIN Margined Futures
pageINTNOdefault:1
limitINTNOdefault:10, max:20
recvWindowLONGNO
timestampLONGYES

##查询子账户合约持仓信息V2 (仅适用主账户)

响应

USDT Margined Futures:

{  "futurePositionRiskVos": [     {        "entryPrice": "9975.12000",        "leverage": "50",              // current initial leverage        "maxNotional": "1000000",      // notional value limit of current initial leverage        "liquidationPrice": "7963.54",        "markPrice": "9973.50770517",        "positionAmount": "0.010",        "symbol": "BTCUSDT",        "unrealizedProfit": "-0.01612295"     }   ]}

COIN Margined Futures:

{  "deliveryPositionRiskVos": [     {        "entryPrice": "9975.12000",        "markPrice": "9973.50770517",        "leverage": "20",                  "isolated": "false",                        "isolatedWallet": "9973.50770517",        "isolatedMargin": "0.00000000",        "isAutoAddMargin": "false",        "positionSide": "BOTH",        "positionAmount": "1.230",        "symbol": "BTCUSD_201225",        "unrealizedProfit": "-0.01612295"     }   ]}

GET /sapi/v2/sub-account/futures/positionRisk (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
emailSTRINGYES子账户邮箱 备注
futuresTypeINTYES1:USDT Margined Futures, 2:COIN Margined Futures
recvWindowLONGNO
timestampLONGYES

为子账户开通杠杆代币 (适用母账户)#

响应

{    "email":"123@test.com",    "enableBlvt":true}

POST /sapi/v1/sub-account/blvt/enable (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
emailSTRINGYESSub-account email
enableBlvtBOOLEANYESOnly true for now
recvWindowLONGNO
timestampLONGYES

投资人账户为托管子账户充值资产 (适用投资人母账户)#

响应

{    "tranId":66157362489}

POST /sapi/v1/managed-subaccount/deposit (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
toEmailSTRINGYES
assetSTRINGYES
amountDECIMALYES
recvWindowLONGNO
timestampLONGYES

投资人账户查询托管子账户资产 (适用投资人母账户)#

响应

[  {     "coin": "INJ",                //币种     "name": "Injective Protocol", //名称     "totalBalance": "0",          //总资产     "availableBalance": "0",      //可用资产     "inOrder": "0",               //下单冻结     "btcValue": "0"               //btc估值  },  {     "coin": "FILDOWN",     "name": "FILDOWN",     "totalBalance": "0",     "availableBalance": "0",     "inOrder": "0",     "btcValue": "0"   }]

GET /sapi/v1/managed-subaccount/asset (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
emailSTRINGYES
recvWindowLONGNO
timestampLONGYES

投资人账户为托管子账户提币资产 (适用投资人母账户)#

响应

{    "tranId":66157362489}

POST /sapi/v1/managed-subaccount/withdraw (HMAC SHA256)

权重(IP): 1

参数:

名称类型是否必需描述
fromEmailSTRINGYES
assetSTRINGYES
amountDECIMALYES
transferDateLONGNO提币会自动发生在选择的日期(UTC0),如果没有选择日期,提币会立即生效
recvWindowLONGNO
timestampLONGYES

行情接口

测试服务器连通性#

响应

{}

GET /api/v3/ping

测试能否联通 Rest API。

权重(IP): 1

参数:

NONE

数据源: 缓存

获取服务器时间#

响应

{  "serverTime": 1499827319559}

GET /api/v3/time

测试能否联通 Rest API 并 获取服务器时间。

权重(IP): 1

参数:

NONE

数据源: 缓存

交易规范信息#

响应

{    "timezone": "UTC",    "serverTime": 1565246363776,    "rateLimits": [        {            //这些在"限制种类 (rateLimitType)"下的"枚举定义"部分中定义            //所有限制都是可选的        }    ],    "exchangeFilters": [            //这些是"过滤器"部分中定义的过滤器            //所有限制都是可选的    ],    "symbols": [        {            "symbol": "ETHBTC",            "status": "TRADING",            "baseAsset": "ETH",            "baseAssetPrecision": 8,            "quoteAsset": "BTC",            "quotePrecision": 8,            "quoteAssetPrecision": 8,            "orderTypes": [                "LIMIT",                "LIMIT_MAKER",                "MARKET",                "STOP_LOSS",                "STOP_LOSS_LIMIT",                "TAKE_PROFIT",                "TAKE_PROFIT_LIMIT"            ],            "icebergAllowed": true,            "ocoAllowed": true,            "isSpotTradingAllowed": true,            "isMarginTradingAllowed": true,            "filters": [                //这些在"过滤器"部分中定义                //所有限制都是可选的            ],            "permissions": [              "SPOT",              "MARGIN"            ]        }    ]}

GET /api/v3/exchangeInfo

获取交易规则和交易对信息。

权重(IP): 10

参数:

有三种用法

用法举例
不需要交易对curl -X GET "https://api.binance.com/api/v3/exchangeInfo"
单个交易对curl -X GET "https://api.binance.com/api/v3/exchangeInfo?symbol=BNBBTC"
多个交易对curl -X GET "https://api.binance.com/api/v3/exchangeInfo?symbols=%5B%22BNBBTC%22,%22BTCUSDT%22%5D" or curl -g GET 'https://api.binance.com/api/v3/exchangeInfo?symbols=["BTCUSDT","BNBBTC"]'

数据源: 缓存

深度信息#

响应

{  "lastUpdateId": 1027024,  "bids": [    [      "4.00000000",     // 价位      "431.00000000"    // 挂单量    ]  ],  "asks": [    [      "4.00000200",      "12.00000000"    ]  ]}

GET /api/v3/depth

权重(IP):

基于限制调整:

限制权重
5, 10, 20, 50, 1001
5005
100010
500050

参数:

名称类型是否必需描述
symbolSTRINGYES
limitINTNO默认 100; 最大 5000. 可选值:[5, 10, 20, 50, 100, 500, 1000, 5000]

数据源: 缓存

近期成交列表#

响应

[  {    "id": 28457,    "price": "4.00000100",    "qty": "12.00000000",    "time": 1499865549590, // 交易成交时间, 和websocket中的T一致.    "isBuyerMaker": true,    "isBestMatch": true  }]

GET /api/v3/trades

获取近期成交

权重(IP): 1

参数:

名称类型是否必需描述
symbolSTRINGYES
limitINTNO默认 500; 最大值 1000.

数据源: 缓存

查询历史成交 (MARKET_DATA)#

响应

[  {    "id": 28457,    "price": "4.00000100",    "qty": "12.00000000",    "quoteQty": "48.000012",    "time": 1499865549590,    "isBuyerMaker": true,    "isBestMatch": true  }]

GET /api/v3/historicalTrades

获取历史成交。

权重(IP): 5

参数:

名称类型是否必需描述
symbolSTRINGYES
limitINTNO默认 500; 最大值 1000.
fromIdLONGNO从哪一条成交id开始返回. 缺省返回最近的成交记录。

数据源: 数据库

近期成交(归集)#

响应

[  {    "a": 26129,         // 归集成交ID    "p": "0.01633102",  // 成交价    "q": "4.70443515",  // 成交量    "f": 27781,         // 被归集的首个成交ID    "l": 27781,         // 被归集的末个成交ID    "T": 1498793709153, // 成交时间    "m": true,          // 是否为主动卖出单    "M": true           // 是否为最优撮合单(可忽略,目前总为最优撮合)  }]

GET /api/v3/aggTrades

归集交易与逐笔交易的区别在于,同一价格、同一方向、同一时间的trade会被聚合为一条

权重(IP): 1

参数:

名称类型是否必需描述
symbolSTRINGYES
fromIdLONGNO从包含fromId的成交id开始返回结果
startTimeLONGNO从该时刻之后的成交记录开始返回结果
endTimeLONGNO返回该时刻为止的成交记录
limitINTNO默认 500; 最大 1000.
  • 如果发送startTime和endTime,间隔必须小于一小时。
  • 如果没有发送任何筛选参数(fromId, startTime,endTime),默认返回最近的成交记录

数据源: 数据库

K线数据#

响应

[  [    1499040000000,      // 开盘时间    "0.01634790",       // 开盘价    "0.80000000",       // 最高价    "0.01575800",       // 最低价    "0.01577100",       // 收盘价(当前K线未结束的即为最新价)    "148976.11427815",  // 成交量    1499644799999,      // 收盘时间    "2434.19055334",    // 成交额    308,                // 成交笔数    "1756.87402397",    // 主动买入成交量    "28.46694368",      // 主动买入成交额    "17928899.62484339" // 请忽略该参数  ]]

GET /api/v3/klines

每根K线代表一个交易对。
每根K线的开盘时间可视为唯一ID

权重(IP): 1

参数:

名称类型是否必需描述
symbolSTRINGYES
intervalENUMYES详见枚举定义:K线间隔
startTimeLONGNO
endTimeLONGNO
limitINTNO默认 500; 最大 1000.
  • 如果未发送 startTime 和 endTime ,默认返回最近的交易。

数据源: 数据库

当前平均价格#

响应

{  "mins": 5,  "price": "9.35751834"}

GET /api/v3/avgPrice

权重(IP): 1

参数:

名称类型是否必需描述
symbolSTRINGYES

数据源: 缓存

24hr 价格变动情况#

响应

{  "symbol": "BNBBTC",  "priceChange": "-94.99999800",  "priceChangePercent": "-95.960",  "weightedAvgPrice": "0.29628482",  "prevClosePrice": "0.10002000",  "lastPrice": "4.00000200",  "lastQty": "200.00000000",  "bidPrice": "4.00000000",  "askPrice": "4.00000200",  "openPrice": "99.00000000",  "highPrice": "100.00000000",  "lowPrice": "0.10000000",  "volume": "8913.30000000",  "quoteVolume": "15.30000000",  "openTime": 1499783499040,  "closeTime": 1499869899040,  "firstId": 28385,   // 首笔成交id  "lastId": 28460,    // 末笔成交id  "count": 76         // 成交笔数}

OR

[  {    "symbol": "BNBBTC",    "priceChange": "-94.99999800",    "priceChangePercent": "-95.960",    "weightedAvgPrice": "0.29628482",    "prevClosePrice": "0.10002000",    "lastPrice": "4.00000200",    "lastQty": "200.00000000",    "bidPrice": "4.00000000",    "askPrice": "4.00000200",    "openPrice": "99.00000000",    "highPrice": "100.00000000",    "lowPrice": "0.10000000",    "volume": "8913.30000000",    "quoteVolume": "15.30000000",    "openTime": 1499783499040,    "closeTime": 1499869899040,    "firstId": 28385,      "lastId": 28460,       "count": 76        }]

GET /api/v3/ticker/24hr

24 小时滚动窗口价格变动数据。 请注意,不携带symbol参数会返回全部交易对数据,不仅数据庞大,而且权重极高

权重(IP):

1 单一交易对;
40 交易对参数缺失;

参数:

名称类型是否必需描述
symbolSTRINGNO
  • 请注意,不携带symbol参数会返回全部交易对数据

数据源: 缓存

最新价格#

响应

{  "symbol": "LTCBTC",  "price": "4.00000200"}

OR

[  {    "symbol": "LTCBTC",    "price": "4.00000200"  },  {    "symbol": "ETHBTC",    "price": "0.07946600"  }]

GET /api/v3/ticker/price

获取交易对最新价格

权重(IP):

1 单一交易对;
2 交易对参数缺失;

参数:

名称类型是否必需描述
symbolSTRINGNO
  • 不发送交易对参数,则会返回所有交易对信息

数据源: 缓存

当前最优挂单#

响应

{  "symbol": "LTCBTC",  "bidPrice": "4.00000000",  "bidQty": "431.00000000",  "askPrice": "4.00000200",  "askQty": "9.00000000"}

OR

[  {    "symbol": "LTCBTC",    "bidPrice": "4.00000000",    "bidQty": "431.00000000",    "askPrice": "4.00000200",    "askQty": "9.00000000"  },  {    "symbol": "ETHBTC",    "bidPrice": "0.07946700",    "bidQty": "9.00000000",    "askPrice": "100000.00000000",    "askQty": "1000.00000000"  }]

GET /api/v3/ticker/bookTicker

返回当前最优的挂单(最高买单,最低卖单)

权重(IP):

1 单一交易对;
2 交易对参数缺失;

参数:

名称类型是否必需描述
symbolSTRINGNO
  • 不发送交易对参数,则会返回所有交易对信息

数据源: 缓存


Websocket 行情推送

  • 本篇所列出的所有wss接口的baseurl为: wss://stream.binance.com:9443
  • Streams有单一原始 stream 或组合 stream
  • 单一原始 streams 格式为 /ws/\<streamName>
  • 组合streams的URL格式为 /stream?streams=\<streamName1>/\<streamName2>/\<streamName3>
  • 订阅组合streams时,事件payload会以这样的格式封装: {"stream":"\<streamName>","data":\<rawPayload>}
  • stream名称中所有交易对均为 小写
  • 每个到 stream.binance.com 的链接有效期不超过24小时,请妥善处理断线重连。
  • 每3分钟,服务端会发送ping帧,客户端应当在10分钟内回复pong帧,否则服务端会主动断开链接。允许客户端发送不成对的pong帧(即客户端可以以高于10分钟每次的频率发送pong帧保持链接)。

实时订阅/取消数据流#

  • 以下数据可以通过websocket发送以实现订阅或取消订阅数据流。示例如下。
  • 响应内容中的id是无符号整数,作为往来信息的唯一标识。
  • 如果相应内容中的 resultnull,表示请求发送成功。

订阅一个信息流#

响应

{  "result": null,  "id": 1}
  • 请求

    {    

    "method": "SUBSCRIBE",
    "params":
    [
    "btcusdt@aggTrade",
    "btcusdt@depth"
    ],
    "id": 1
    }

取消订阅一个信息流#

响应

{  "result": null,  "id": 312}
  • 请求

    {
    "method": "UNSUBSCRIBE",
    "params":
    [
    "btcusdt@depth"
    ],
    "id": 312
    }

已订阅信息流#

响应

{  "result": [    "btcusdt@aggTrade"  ],  "id": 3}
  • 请求

    {
    "method": "LIST_SUBSCRIPTIONS",
    "id": 3
    }

设定属性#

当前,唯一可以设置的属性是设置是否启用combined("组合")信息流。
当使用/ws/("原始信息流")进行连接时,combined属性设置为false,而使用 /stream/进行连接时则将属性设置为true

响应

{"result": null,"id": 5}
  • 请求

    {
    "method": "SET_PROPERTY",
    "params":
    [
    "combined",
    true
    ],
    "id": 5
    }

检索属性#

响应

{  "result": true, // Indicates that combined is set to true.  "id": 2}
  • 请求

    {
    "method": "GET_PROPERTY",
    "params":
    [
    "combined"
    ],
    "id": 2
    }

###错误信息

错误信息描述
{"code": 0, "msg": "Unknown property"}SET_PROPERTYGET_PROPERTY中应用的参数无效
{"code": 1, "msg": "Invalid value type: expected Boolean", "id": '%s'}仅接受truefalse
{"code": 2, "msg": "Invalid request: property name must be a string"}提供的属性名无效
{"code": 2, "msg": "Invalid request: request ID must be an unsigned integer"}参数id未提供或id值是无效类型
{"code": 2, "msg": "Invalid request: unknown variant %s, expected one of SUBSCRIBE, UNSUBSCRIBE, LIST_SUBSCRIPTIONS, SET_PROPERTY, GET_PROPERTY at line 1 column 28"}错字提醒,或提供的值不是预期类型
{"code": 2, "msg": "Invalid request: too many parameters"}数据中提供了不必要参数
{"code": 2, "msg": "Invalid request: property name must be a string"}未提供属性名
{"code": 2, "msg": "Invalid request: missing field method at line 1 column 73"}数据未提供method
{"code":3,"msg":"Invalid JSON: expected value at line %s column %s"}JSON 语法有误.

归集交易流#

Payload:

{  "e": "aggTrade",  // 事件类型  "E": 123456789,   // 事件时间  "s": "BNBBTC",    // 交易对  "a": 12345,       // 归集交易ID  "p": "0.001",     // 成交价格  "q": "100",       // 成交数量  "f": 100,         // 被归集的首个交易ID  "l": 105,         // 被归集的末次交易ID  "T": 123456785,   // 成交时间  "m": true,        // 买方是否是做市方。如true,则此次成交是一个主动卖出单,否则是一个主动买入单。  "M": true         // 请忽略该字段}

归集交易 stream 推送交易信息,是对单一订单的集合。

Stream 名称: <symbol>@aggTrade
Update Speed: 实时

逐笔交易#

Payload:

{  "e": "trade",     // 事件类型  "E": 123456789,   // 事件时间  "s": "BNBBTC",    // 交易对  "t": 12345,       // 交易ID  "p": "0.001",     // 成交价格  "q": "100",       // 成交数量  "b": 88,          // 买方的订单ID  "a": 50,          // 卖方的订单ID  "T": 123456785,   // 成交时间  "m": true,        // 买方是否是做市方。如true,则此次成交是一个主动卖出单,否则是一个主动买入单。  "M": true         // 请忽略该字段}

Stream Name: <symbol>@trade

逐笔交易推送每一笔成交的信息。成交,或者说交易的定义是仅有一个吃单者与一个挂单者相互交易

K线 Streams#

Payload:

{  "e": "kline",     // 事件类型  "E": 123456789,   // 事件时间  "s": "BNBBTC",    // 交易对  "k": {    "t": 123400000, // 这根K线的起始时间    "T": 123460000, // 这根K线的结束时间    "s": "BNBBTC",  // 交易对    "i": "1m",      // K线间隔    "f": 100,       // 这根K线期间第一笔成交ID    "L": 200,       // 这根K线期间末一笔成交ID    "o": "0.0010",  // 这根K线期间第一笔成交价    "c": "0.0020",  // 这根K线期间末一笔成交价    "h": "0.0025",  // 这根K线期间最高成交价    "l": "0.0015",  // 这根K线期间最低成交价    "v": "1000",    // 这根K线期间成交量    "n": 100,       // 这根K线期间成交笔数    "x": false,     // 这根K线是否完结(是否已经开始下一根K线)    "q": "1.0000",  // 这根K线期间成交额    "V": "500",     // 主动买入的成交量    "Q": "0.500",   // 主动买入的成交额    "B": "123456"   // 忽略此参数  }}

K线stream逐秒推送所请求的K线种类(最新一根K线)的更新。

Stream Name: <symbol>@kline_<interval>

Update Speed: 2000ms

K线图间隔参数:

m -> 分钟; h -> 小时; d -> 天; w -> 周; M -> 月

  • 1m
  • 3m
  • 5m
  • 15m
  • 30m
  • 1h
  • 2h
  • 4h
  • 6h
  • 8h
  • 12h
  • 1d
  • 3d
  • 1w
  • 1M

按 Symbol 的精简Ticker#

Payload:

  {    "e": "24hrMiniTicker",  // 事件类型    "E": 123456789,         // 事件时间    "s": "BNBBTC",          // 交易对    "c": "0.0025",          // 最新成交价格    "o": "0.0010",          // 24小时前开始第一笔成交价格    "h": "0.0025",          // 24小时内最高成交价    "l": "0.0010",          // 24小时内最低成交价    "v": "10000",           // 成交量    "q": "18"               // 成交额  }

按Symbol刷新的最近24小时精简ticker信息

Stream 名称: <symbol>@miniTicker

Update Speed: 1000ms

全市场所有Symbol的精简Ticker#

Payload:

[  {    // 数组每一个元素对应一个交易对,内容与 \<symbol\>@miniTicker相同  }]

同上,只是推送所有交易对.需要注意的是,只有更新的ticker才会被推送.

Stream名称: !miniTicker@arr

Update Speed: 1000ms

按Symbol的完整Ticker#

Payload:

{  "e": "24hrTicker",  // 事件类型  "E": 123456789,     // 事件时间  "s": "BNBBTC",      // 交易对  "p": "0.0015",      // 24小时价格变化  "P": "250.00",      // 24小时价格变化(百分比)  "w": "0.0018",      // 平均价格  "x": "0.0009",      // 整整24小时之前,向前数的最后一次成交价格  "c": "0.0025",      // 最新成交价格  "Q": "10",          // 最新成交交易的成交量  "b": "0.0024",      // 目前最高买单价  "B": "10",          // 目前最高买单价的挂单量  "a": "0.0026",      // 目前最低卖单价  "A": "100",         // 目前最低卖单价的挂单量  "o": "0.0010",      // 整整24小时前,向后数的第一次成交价格  "h": "0.0025",      // 24小时内最高成交价  "l": "0.0010",      // 24小时内最低成交价  "v": "10000",       // 24小时内成交量  "q": "18",          // 24小时内成交额  "O": 0,             // 统计开始时间  "C": 86400000,      // 统计结束时间  "F": 0,             // 24小时内第一笔成交交易ID  "L": 18150,         // 24小时内最后一笔成交交易ID  "n": 18151          // 24小时内成交数}

每秒推送单个交易对的过去24小时滚动窗口标签统计信息。

Stream 名称: <symbol>@ticker

Update Speed: 1000ms

全市场所有交易对的完整Ticker#

Payload:

[  {    // Same as <symbol>@ticker payload  }]

Stream Name: !ticker@arr

Update Speed: 1000ms

推送全市场所有交易对刷新的24小时完整ticker信息。需要注意的是,没有更新的ticker不会被推送。

按Symbol的最优挂单信息#

Payload:

{  "u":400900217,     // order book updateId  "s":"BNBUSDT",     // 交易对  "b":"25.35190000", // 买单最优挂单价格  "B":"31.21000000", // 买单最优挂单数量  "a":"25.36520000", // 卖单最优挂单价格  "A":"40.66000000"  // 卖单最优挂单数量}

实时推送指定交易对最优挂单信息

Stream Name: <symbol>@bookTicker

Update Speed: 实时

全市场最优挂单信息#

Payload:

{  // 同 <symbol>@bookTicker payload}

实时推送所有交易对交易对最优挂单信息

Stream Name: !bookTicker

Update Speed: 实时

有限档深度信息#

Payload:

{  "lastUpdateId": 160,  // Last update ID  "bids": [             // Bids to be updated    [      "0.0024",         // Price level to be updated      "10"              // Quantity    ]  ],  "asks": [             // Asks to be updated    [      "0.0026",         // Price level to be updated      "100"             // Quantity    ]  ]}

每秒或每100毫秒推送有限档深度信息。levels表示几档买卖单信息, 可选 5/10/20档

Stream Names: <symbol>@depth<levels><symbol>@depth<levels>@100ms.

Update Speed: 1000ms 或 100ms

增量深度信息#

Payload:

{  "e": "depthUpdate", // 事件类型  "E": 123456789,     // 事件时间  "s": "BNBBTC",      // 交易对  "U": 157,           // 从上次推送至今新增的第一个 update Id  "u": 160,           // 从上次推送至今新增的最后一个 update Id  "b": [              // 变动的买单深度    [      "0.0024",       // 变动的价格档位      "10"            // 数量    ]  ],  "a": [              // 变动的卖单深度    [      "0.0026",       // 变动的价格档位      "100"           // 数量    ]  ]}

每秒或每100毫秒推送orderbook的变化部分(如果有)

Stream Name: <symbol>@depth<symbol>@depth@100ms

Update Speed: 1000ms 或 100ms

如何正确在本地维护一个orderbook副本#

  1. 订阅 wss://stream.binance.com:9443/ws/bnbbtc@depth
  2. 开始缓存收到的更新。同一个价位,后收到的更新覆盖前面的。
  3. 访问Rest接口 https://api.binance.com/api/v3/depth?symbol=BNBBTC&limit=1000 获得一个1000档的深度快照
  4. 将目前缓存到的信息中u <= 步骤3中获取到的快照中的lastUpdateId的部分丢弃(丢弃更早的信息,已经过期)。
  5. 将深度快照中的内容更新到本地orderbook副本中,并从websocket接收到的第一个U <= lastUpdateId+1 u >= lastUpdateId+1 的event开始继续更新本地副本。
  6. 每一个新event的U应该恰好等于上一个event的u+1,否则可能出现了丢包,请从step3重新进行初始化。
  7. 每一个event中的挂单量代表这个价格目前的挂单量绝对值,而不是相对变化。
  8. 如果某个价格对应的挂单量为0,表示该价位的挂单已经撤单或者被吃,应该移除这个价位。

现货账户和交易接口

测试下单 (TRADE)#

响应

{}

POST /api/v3/order/test (HMAC SHA256)

用于测试订单请求,但不会提交到撮合引擎

权重: 1

参数:

同于 POST /api/v3/order

数据源: 缓存

下单 (TRADE)#

Response ACK:

{  "symbol": "BTCUSDT",  "orderId": 28,  "orderListId": -1, // OCO订单ID,否则为 -1  "clientOrderId": "6gCrw2kRUAF9CvJDGP16IP",  "transactTime": 1507725176595}

Response RESULT:

{  "symbol": "BTCUSDT",  "orderId": 28,  "orderListId": -1, // OCO订单ID,否则为 -1  "clientOrderId": "6gCrw2kRUAF9CvJDGP16IP",  "transactTime": 1507725176595,  "price": "0.00000000",  "origQty": "10.00000000",  "executedQty": "10.00000000",  "cummulativeQuoteQty": "10.00000000",  "status": "FILLED",  "timeInForce": "GTC",  "type": "MARKET",  "side": "SELL"}

Response FULL:

{  "symbol": "BTCUSDT", // 交易对  "orderId": 28, // 系统的订单ID  "orderListId": -1, // OCO订单ID,否则为 -1  "clientOrderId": "6gCrw2kRUAF9CvJDGP16IP", // 客户自己设置的ID  "transactTime": 1507725176595, // 交易的时间戳  "price": "0.00000000", // 订单价格  "origQty": "10.00000000", // 用户设置的原始订单数量  "executedQty": "10.00000000", // 交易的订单数量  "cummulativeQuoteQty": "10.00000000", // 累计交易的金额  "status": "FILLED", // 订单状态  "timeInForce": "GTC", // 订单的时效方式  "type": "MARKET", // 订单类型, 比如市价单,现价单等  "side": "SELL", // 订单方向,买还是卖  "fills": [ // 订单中交易的信息    {      "price": "4000.00000000", // 交易的价格      "qty": "1.00000000", // 交易的数量      "commission": "4.00000000", // 手续费金额      "commissionAsset": "USDT" // 手续费的币种    },    {      "price": "3999.00000000",      "qty": "5.00000000",      "commission": "19.99500000",      "commissionAsset": "USDT"    },    {      "price": "3998.00000000",      "qty": "2.00000000",      "commission": "7.99600000",      "commissionAsset": "USDT"    },    {      "price": "3997.00000000",      "qty": "1.00000000",      "commission": "3.99700000",      "commissionAsset": "USDT"    },    {      "price": "3995.00000000",      "qty": "1.00000000",      "commission": "3.99500000",      "commissionAsset": "USDT"    }  ]}

POST /api/v3/order (HMAC SHA256)

发送下单。

权重(UID): 1

参数:

名称类型是否必需描述
symbolSTRINGYES
sideENUMYES详见枚举定义:订单方向
typeENUMYES详见枚举定义:订单类型
timeInForceENUMNO详见枚举定义:有效方式
quantityDECIMALNO
quoteOrderQtyDECIMALNO
priceDECIMALNO
newClientOrderIdSTRINGNO客户自定义的唯一订单ID。 如果未发送,则自动生成
stopPriceDECIMALNOSTOP_LOSS, STOP_LOSS_LIMIT, TAKE_PROFIT, 和TAKE_PROFIT_LIMIT 需要此参数。
icebergQtyDECIMALNO仅使用 LIMIT, STOP_LOSS_LIMIT, 和 TAKE_PROFIT_LIMIT 创建新的 iceberg 订单时需要此参数
newOrderRespTypeENUMNO设置响应JSON。 ACK,RESULT或FULL; "MARKET"和" LIMIT"订单类型默认为"FULL",所有其他订单默认为"ACK"。
recvWindowLONGNO赋值不能大于 60000
timestampLONGYES

基于订单 type不同,强制要求某些参数:

类型强制要求的参数
LIMITtimeInForce, quantity, price
MARKETquantity or quoteOrderQty
STOP_LOSSquantity, stopPrice
STOP_LOSS_LIMITtimeInForce, quantity, price, stopPrice
TAKE_PROFITquantity, stopPrice
TAKE_PROFIT_LIMITtimeInForce, quantity, price, stopPrice
LIMIT_MAKERquantity, price

其他信息:

  • LIMIT_MAKERLIMIT订单,如果它们立即匹配并成为吃单方将被拒绝。
  • 当触发stopPrice时,STOP_LOSSTAKE_PROFIT将执行MARKET订单。
  • 任何LIMITLIMIT_MAKER类型的订单都可以通过发送icebergQty而成为iceberg订单。
  • 任何带有icebergQty的订单都必须将timeInForce设置为GTC
  • 使用 quantity 的市价单 MARKET 明确的是用户想用市价单买入或卖出的数量。
    • 比如在BTCUSDT上下一个市价单, quantity用户指明能够买进或者卖出多少BTC。
  • 使用 quoteOrderQty 的市价单MARKET 明确的是通过买入(或卖出)想要花费(或获取)的报价资产数量; 此时的正确报单数量将会以市场流动性和quoteOrderQty被计算出来。
    • BTCUSDT为例, quoteOrderQty=100:
      * 下买单的时候, 订单会尽可能的买进价值100USDT的BTC.* 下卖单的时候, 订单会尽可能的卖出价值100USDT的BTC.   
  • 使用 quoteOrderQty 的市价单MARKET不会突破LOT_SIZE的限制规则; 报单会按给定的quoteOrderQty尽可能接近地被执行。
  • 除非之前的订单已经成交, 不然设置了相同的newClientOrderId订单会被拒绝。

MARKET版本和LIMIT版本针对市场价格触发订单价格规则:

  • 价格高于市价:止损``买入获利``卖出
  • 价格低于市价:止损``卖出获利``买入

关于 newOrderRespType的三种选择

  • Response ACK: 返回速度最快,不包含成交信息,信息量最少
  • Response RESULT:返回速度居中,返回吃单成交的少量信息
  • Response FULL: 返回速度最慢,返回吃单成交的详细信息

数据源: 撮合引擎

撤销订单 (TRADE)#

响应

{  "symbol": "LTCBTC",  "origClientOrderId": "myOrder1",  "orderId": 4,  "orderListId": -1, // OCO订单ID,否则为 -1  "clientOrderId": "cancelMyOrder1",  "price": "2.00000000",  "origQty": "1.00000000",  "executedQty": "0.00000000",  "cummulativeQuoteQty": "0.00000000",  "status": "CANCELED",  "timeInForce": "GTC",  "type": "LIMIT",  "side": "BUY"}

DELETE /api/v3/order (HMAC SHA256)

取消有效订单。

权重(IP): 1

参数:

名称类型是否必需描述
symbolSTRINGYES
orderIdLONGNO
origClientOrderIdSTRINGNO
newClientOrderIdSTRINGNO用户自定义的本次撤销操作的ID(注意不是被撤销的订单的自定义ID)。如无指定会自动赋值。
recvWindowLONGNO赋值不得大于 60000
timestampLONGYES

orderIdorigClientOrderId 必须至少发送一个

撤销单一交易对的所有挂单 (TRADE)#

Response:

[  {    "symbol": "BTCUSDT",    "origClientOrderId": "E6APeyTJvkMvLMYMqu1KQ4",    "orderId": 11,    "orderListId": -1,    "clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",    "price": "0.089853",    "origQty": "0.178622",    "executedQty": "0.000000",    "cummulativeQuoteQty": "0.000000",    "status": "CANCELED",    "timeInForce": "GTC",    "type": "LIMIT",    "side": "BUY"  },  {    "symbol": "BTCUSDT",    "origClientOrderId": "A3EF2HCwxgZPFMrfwbgrhv",    "orderId": 13,    "orderListId": -1,    "clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",    "price": "0.090430",    "origQty": "0.178622",    "executedQty": "0.000000",    "cummulativeQuoteQty": "0.000000",    "status": "CANCELED",    "timeInForce": "GTC",    "type": "LIMIT",    "side": "BUY"  },  {    "orderListId": 1929,    "contingencyType": "OCO",    "listStatusType": "ALL_DONE",    "listOrderStatus": "ALL_DONE",    "listClientOrderId": "2inzWQdDvZLHbbAmAozX2N",    "transactionTime": 1585230948299,    "symbol": "BTCUSDT",    "orders": [      {        "symbol": "BTCUSDT",        "orderId": 20,        "clientOrderId": "CwOOIPHSmYywx6jZX77TdL"      },      {        "symbol": "BTCUSDT",        "orderId": 21,        "clientOrderId": "461cPg51vQjV3zIMOXNz39"      }    ],    "orderReports": [      {        "symbol": "BTCUSDT",        "origClientOrderId": "CwOOIPHSmYywx6jZX77TdL",        "orderId": 20,        "orderListId": 1929,        "clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",        "price": "0.668611",        "origQty": "0.690354",        "executedQty": "0.000000",        "cummulativeQuoteQty": "0.000000",        "status": "CANCELED",        "timeInForce": "GTC",        "type": "STOP_LOSS_LIMIT",        "side": "BUY",        "stopPrice": "0.378131",        "icebergQty": "0.017083"      },      {        "symbol": "BTCUSDT",        "origClientOrderId": "461cPg51vQjV3zIMOXNz39",        "orderId": 21,        "orderListId": 1929,        "clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",        "price": "0.008791",        "origQty": "0.690354",        "executedQty": "0.000000",        "cummulativeQuoteQty": "0.000000",        "status": "CANCELED",        "timeInForce": "GTC",        "type": "LIMIT_MAKER",        "side": "BUY",        "icebergQty": "0.639962"      }    ]  }]

DELETE /api/v3/openOrders

撤销单一交易对下所有挂单, 包括OCO的挂单。

权重(IP): 1

参数:

NameTypeMandatoryDescription
symbolSTRINGYES
recvWindowLONGNO不能大于 60000
timestampLONGYES

数据源: 撮合引擎

查询订单 (USER_DATA)#

响应

{  "symbol": "LTCBTC", // 交易对  "orderId": 1, // 系统的订单ID  "orderListId": -1, // OCO订单的ID,不然就是-1  "clientOrderId": "myOrder1", // 客户自己设置的ID  "price": "0.1", // 订单价格  "origQty": "1.0", // 用户设置的原始订单数量  "executedQty": "0.0", // 交易的订单数量  "cummulativeQuoteQty": "0.0", // 累计交易的金额  "status": "NEW", // 订单状态  "timeInForce": "GTC", // 订单的时效方式  "type": "LIMIT", // 订单类型, 比如市价单,现价单等  "side": "BUY", // 订单方向,买还是卖  "stopPrice": "0.0", // 止损价格  "icebergQty": "0.0", // 冰山数量  "time": 1499827319559, // 订单时间  "updateTime": 1499827319559, // 最后更新时间  "isWorking": true, // 订单是否出现在orderbook中  "origQuoteOrderQty": "0.000000" // 原始的交易金额}

GET /api/v3/order (HMAC SHA256)

查询订单状态。

权重(IP): 2

参数:

名称类型是否必需描述
symbolSTRINGYES
orderIdLONGNO
origClientOrderIdSTRINGNO
recvWindowLONGNO赋值不得大于 60000
timestampLONGYES

注意:

  • 至少需要发送 orderIdorigClientOrderId中的一个
  • 某些订单中cummulativeQuoteQty<0,是由于这些订单是cummulativeQuoteQty功能上线之前的订单。

数据源: 数据库

当前挂单 (USER_DATA)#

响应

[  {    "symbol": "LTCBTC",    "orderId": 1,    "orderListId": -1, // OCO订单ID,否则为 -1    "clientOrderId": "myOrder1",    "price": "0.1",    "origQty": "1.0",    "executedQty": "0.0",    "cummulativeQuoteQty": "0.0",    "status": "NEW",    "timeInForce": "GTC",    "type": "LIMIT",    "side": "BUY",    "stopPrice": "0.0",    "icebergQty": "0.0",    "time": 1499827319559,    "updateTime": 1499827319559,    "isWorking": true,    "origQuoteOrderQty": "0.000000"  }]

GET /api/v3/openOrders (HMAC SHA256)

获取交易对的所有当前挂单, 请小心使用不带交易对参数的调用。

权重(IP): 3 单一交易对;
40 交易对参数缺失;

参数:

名称类型是否必需描述
symbolSTRINGNO
recvWindowLONGNO赋值不得大于 60000
timestampLONGYES
  • 不带symbol参数,会返回所有交易对的挂单

数据源: 数据库

查询所有订单 (USER_DATA)#

响应

[  {    "symbol": "LTCBTC",    "orderId": 1,    "orderListId": -1, // OCO订单ID,否则为 -1    "clientOrderId": "myOrder1",    "price": "0.1",    "origQty": "1.0",    "executedQty": "0.0",    "cummulativeQuoteQty": "0.0",    "status": "NEW",    "timeInForce": "GTC",    "type": "LIMIT",    "side": "BUY",    "stopPrice": "0.0",    "icebergQty": "0.0",    "time": 1499827319559,    "updateTime": 1499827319559,    "isWorking": true,    "origQuoteOrderQty": "0.000000"  }]

GET /api/v3/allOrders (HMAC SHA256)

获取所有帐户订单; 有效,已取消或已完成。

权重(IP): 10 带有symbol

参数:

名称类型是否必需描述
symbolSTRINGYES
orderIdLONGNO
startTimeLONGNO
endTimeLONGNO
limitINTNO默认 500; 最大 1000.
recvWindowLONGNO赋值不得大于 60000
timestampLONGYES

注意:

  • 如设置 orderId , 订单量将 >= orderId。否则将返回最新订单。
  • 一些历史订单 cummulativeQuoteQty < 0, 是指数据此时不存在。
  • 如果设置 startTimeendTime, orderId 就不需要设置。

数据源: 数据库

OCO下单(TRADE)#

响应

{  "orderListId": 0,  "contingencyType": "OCO",  "listStatusType": "EXEC_STARTED",  "listOrderStatus": "EXECUTING",  "listClientOrderId": "JYVpp3F0f5CAG15DhtrqLp",  "transactionTime": 1563417480525,  "symbol": "LTCBTC",  "orders": [    {      "symbol": "LTCBTC",      "orderId": 2,      "clientOrderId": "Kk7sqHb9J6mJWTMDVW7Vos"    },    {      "symbol": "LTCBTC",      "orderId": 3,      "clientOrderId": "xTXKaGYd4bluPVp78IVRvl"    }  ],  "orderReports": [    {      "symbol": "LTCBTC",      "orderId": 2,      "orderListId": 0,      "clientOrderId": "Kk7sqHb9J6mJWTMDVW7Vos",      "transactTime": 1563417480525,      "price": "0.000000",      "origQty": "0.624363",      "executedQty": "0.000000",      "cummulativeQuoteQty": "0.000000",      "status": "NEW",      "timeInForce": "GTC",      "type": "STOP_LOSS",      "side": "BUY",      "stopPrice": "0.960664"    },    {      "symbol": "LTCBTC",      "orderId": 3,      "orderListId": 0,      "clientOrderId": "xTXKaGYd4bluPVp78IVRvl",      "transactTime": 1563417480525,      "price": "0.036435",      "origQty": "0.624363",      "executedQty": "0.000000",      "cummulativeQuoteQty": "0.000000",      "status": "NEW",      "timeInForce": "GTC",      "type": "LIMIT_MAKER",      "side": "BUY"    }  ]}

POST /api/v3/order/oco (HMAC SHA256)

发送新 OCO 订单。

权重(UID): 1

参数:

名称类型是否必需描述
symbolSTRINGYES
listClientOrderIdSTRINGNO整个orderList的唯一ID
sideENUMYES详见枚举定义:订单方向
quantityDECIMALYES
limitClientOrderIdSTRINGNO限价单的唯一ID
priceDECIMALYES
limitIcebergQtyDECIMALNO
stopClientOrderIdSTRINGNO止损/止损限价单的唯一ID
stopPriceDECIMALYES
stopLimitPriceDECIMALNO如果提供,须配合提交stopLimitTimeInForce
stopIcebergQtyDECIMALNO
stopLimitTimeInForceENUMNO有效值 GTC/FOK/IOC
newOrderRespTypeENUMNO详见枚举定义:订单返回类型
recvWindowLONGNO不能大于 60000
timestampLONGYES

其他信息:

  • 价格限制:
    • SELL: 限价 > 最新成交价 >触发价
    • BUY: 限价 < 最新成交价 < 触发价
  • 数量限制:
    • 两个 legs 必须具有同样的数量。
    • ICEBERG数量不必相同
  • 下单rate
    • 一个OCO订单被算成2个普通订单.

数据源: 撮合引擎

取消 OCO 订单(TRADE)#

Response:

{  "orderListId": 0,  "contingencyType": "OCO",  "listStatusType": "ALL_DONE",  "listOrderStatus": "ALL_DONE",  "listClientOrderId": "C3wyj4WVEktd7u9aVBRXcN",  "transactionTime": 1574040868128,  "symbol": "LTCBTC",  "orders": [    {      "symbol": "LTCBTC",      "orderId": 2,      "clientOrderId": "pO9ufTiFGg3nw2fOdgeOXa"    },    {      "symbol": "LTCBTC",      "orderId": 3,      "clientOrderId": "TXOvglzXuaubXAaENpaRCB"    }  ],  "orderReports": [    {      "symbol": "LTCBTC",      "origClientOrderId": "pO9ufTiFGg3nw2fOdgeOXa",      "orderId": 2,      "orderListId": 0,      "clientOrderId": "unfWT8ig8i0uj6lPuYLez6",      "price": "1.00000000",      "origQty": "10.00000000",      "executedQty": "0.00000000",      "cummulativeQuoteQty": "0.00000000",      "status": "CANCELED",      "timeInForce": "GTC",      "type": "STOP_LOSS_LIMIT",      "side": "SELL",      "stopPrice": "1.00000000"    },    {      "symbol": "LTCBTC",      "origClientOrderId": "TXOvglzXuaubXAaENpaRCB",      "orderId": 3,      "orderListId": 0,      "clientOrderId": "unfWT8ig8i0uj6lPuYLez6",      "price": "3.00000000",      "origQty": "10.00000000",      "executedQty": "0.00000000",      "cummulativeQuoteQty": "0.00000000",      "status": "CANCELED",      "timeInForce": "GTC",      "type": "LIMIT_MAKER",      "side": "SELL"    }  ]}

DELETE /api/v3/orderList (HMAC SHA256)

取消整个订单列表。

权重(IP): 1

参数

名称类型是否必需描述
symbolSTRINGYES
orderListIdLONGNOorderListIdlistClientOrderId 必须被提供
listClientOrderIdSTRINGNOorderListIdlistClientOrderId 必须被提供
newClientOrderIdSTRINGNO用户自定义的本次撤销操作的ID(注意不是被撤销的订单的自定义ID)。如无指定会自动赋值。
recvWindowLONGNO不能大于 60000
timestampLONGYES

其他注意点:

  • 取消单个 leg 将取消整个 OCO 订单。

数据源: 撮合引擎

查询 OCO (USER_DATA)#

响应

{    "orderListId": 27,    "contingencyType": "OCO",    "listStatusType": "EXEC_STARTED",    "listOrderStatus": "EXECUTING",    "listClientOrderId": "h2USkA5YQpaXHPIrkd96xE",    "transactionTime": 1565245656253,    "symbol": "LTCBTC",    "orders": [        {            "symbol": "LTCBTC",            "orderId": 4,            "clientOrderId": "qD1gy3kc3Gx0rihm9Y3xwS"        },        {            "symbol": "LTCBTC",            "orderId": 5,            "clientOrderId": "ARzZ9I00CPM8i3NhmU9Ega"        }    ]}

GET /api/v3/orderList (HMAC SHA256)

根据提供的可选参数检索特定的OCO。

权重(IP): 2

参数:

名称类型是否必需描述
orderListIdLONGNOorderListIdorigClientOrderId 必须提供一个。
origClientOrderIdSTRINGNOorderListIdorigClientOrderId 必须提供一个。
recvWindowLONGNO赋值不得大于 60000
timestampLONGYES

数据源: 数据库

查询所有 OCO (USER_DATA)#

响应

[  {    "orderListId": 29,    "contingencyType": "OCO",    "listStatusType": "EXEC_STARTED",    "listOrderStatus": "EXECUTING",    "listClientOrderId": "amEEAXryFzFwYF1FeRpUoZ",    "transactionTime": 1565245913483,    "symbol": "LTCBTC",    "orders": [      {        "symbol": "LTCBTC",        "orderId": 4,        "clientOrderId": "oD7aesZqjEGlZrbtRpy5zB"      },      {        "symbol": "LTCBTC",        "orderId": 5,        "clientOrderId": "Jr1h6xirOxgeJOUuYQS7V3"      }    ]  },  {    "orderListId": 28,    "contingencyType": "OCO",    "listStatusType": "EXEC_STARTED",    "listOrderStatus": "EXECUTING",    "listClientOrderId": "hG7hFNxJV6cZy3Ze4AUT4d",    "transactionTime": 1565245913407,    "symbol": "LTCBTC",    "orders": [      {        "symbol": "LTCBTC",        "orderId": 2,        "clientOrderId": "j6lFOfbmFMRjTYA7rRJ0LP"      },      {        "symbol": "LTCBTC",        "orderId": 3,        "clientOrderId": "z0KCjOdditiLS5ekAFtK81"      }    ]  }]

GET /api/v3/allOrderList (HMAC SHA256)

根据提供的可选参数检索所有的OCO。

权重(IP): 10

参数

名称类型是否必需描述
fromIdLONGNO提供该项后, startTimeendTime 都不可提供
startTimeLONGNO
endTimeLONGNO
limitINTNO默认值: 500; 最大值: 1000
recvWindowLONGNO赋值不能超过 60000
timestampLONGYES

数据源: 数据库

查询 OCO 挂单 (USER_DATA)#

响应

[  {    "orderListId": 31,    "contingencyType": "OCO",    "listStatusType": "EXEC_STARTED",    "listOrderStatus": "EXECUTING",    "listClientOrderId": "wuB13fmulKj3YjdqWEcsnp",    "transactionTime": 1565246080644,    "symbol": "LTCBTC",    "orders": [      {        "symbol": "LTCBTC",        "orderId": 4,        "clientOrderId": "r3EH2N76dHfLoSZWIUw1bT"      },      {        "symbol": "LTCBTC",        "orderId": 5,        "clientOrderId": "Cv1SnyPD3qhqpbjpYEHbd2"      }    ]  }]

GET /api/v3/openOrderList (HMAC SHA256)

权重(IP): 3

参数

名称类型是否必需描述
recvWindowLONGNO赋值不能大于 60000
timestampLONGYES

数据源: 数据库

账户信息 (USER_DATA)#

响应

{  "makerCommission": 15,  "takerCommission": 15,  "buyerCommission": 0,  "sellerCommission": 0,  "canTrade": true,  "canWithdraw": true,  "canDeposit": true,  "updateTime": 123456789,  "accountType": "SPOT",  "balances": [    {      "asset": "BTC",      "free": "4723846.89208129",      "locked": "0.00000000"    },    {      "asset": "LTC",      "free": "4763368.68006011",      "locked": "0.00000000"    }  ],  "permissions": [    "SPOT"  ]}

GET /api/v3/account (HMAC SHA256)

获取当前账户信息。

权重(IP): 10

参数:

名称类型是否必需描述
recvWindowLONGNO赋值不能大于 60000
timestampLONGYES

数据源: 缓存 => 数据库

账户成交历史 (USER_DATA)#

响应

[  {    "symbol": "BNBBTC", // 交易对    "id": 28457, // trade ID    "orderId": 100234, // 订单ID    "orderListId": -1, // OCO订单的ID,不然就是-1    "price": "4.00000100", // 成交价格    "qty": "12.00000000", // 成交量    "quoteQty": "48.000012", // 成交金额    "commission": "10.10000000", // 交易费金额    "commissionAsset": "BNB", // 交易费资产类型    "time": 1499865549590, // 交易时间    "isBuyer": true, // 是否是买家    "isMaker": false, // 是否是挂单方    "isBestMatch": true  }]

GET /api/v3/myTrades (HMAC SHA256)

获取账户指定交易对的成交历史

权重(IP): 10

参数:

名称类型是否必需描述
symbolSTRINGYES
orderIdLONGNO必须要和参数symbol一起使用.
startTimeLONGNO
endTimeLONGNO
fromIdLONGNO起始Trade id。 默认获取最新交易。
limitINTNO默认 500; 最大 1000.
recvWindowLONGNO赋值不能超过 60000
timestampLONGYES

注意:

  • 如果设定 fromId , 获取订单 >= fromId. 否则返回最近订单。

数据源: 数据库

杠杆账户和交易接口

全仓杠杆账户划转 (MARGIN)#

响应

{    //transaction id    "tranId": 100000001}

POST /sapi/v1/margin/transfer (HMAC SHA256) 执行现货账户与全仓杠杆账户之间的划转

权重(IP): 600

参数:

名称类型是否必需描述
assetSTRINGYES被划转的资产, 比如, BTC
amountDECIMALYES划转数量
typeINTYES1: 主账户向全仓杠杆账户划转 2: 全仓杠杆账户向主账户划转
recvWindowLONGNO赋值不能大于 60000
timestampLONGYES

杠杆账户借贷 (MARGIN)#

响应

{    //transaction id    "tranId": 100000001}

POST /sapi/v1/margin/loan (HMAC SHA256) 申请借贷。

权重(UID): 3000

参数:

名称类型是否必需描述
assetSTRINGYES
isIsolatedSTRINGNO是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE"
symbolSTRINGNO逐仓交易对,配合逐仓使用
amountDECIMALYES
recvWindowLONGNO赋值不能超过 60000
timestampLONGYES
  • 如果 isIsolated = “TRUE”, 表示逐仓借贷,此时 symbol 必填
  • 如果isIsolated = “FALSE” 表示全仓借贷

杠杆账户归还借贷 (MARGIN)#

响应

{    //transaction id    "tranId": 100000001}

POST /sapi/v1/margin/repay (HMAC SHA256) 获取杠杆账户归还借贷。

权重(IP): 3000

参数:

名称类型是否必需描述
assetSTRINGYES
isIsolatedSTRINGNO是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE"
symbolSTRINGNO逐仓交易对,配合逐仓使用
amountDECIMALYES
recvWindowLONGNO赋值不能超过 60000
timestampLONGYES
  • 如果 isIsolated = “TRUE”, 表示逐仓还款,此时 symbol 必填
  • 如果isIsolated = “FALSE” 表示全仓还款

查询杠杆资产 (MARKET_DATA)#

响应

{    "assetFullName": "Binance Coin",    "assetName": "BNB",    "isBorrowable": false,    "isMortgageable": true,    "userMinBorrow": "0.00000000",    "userMinRepay": "0.00000000"}

GET /sapi/v1/margin/asset

权重(IP): 10

参数:

名称类型是否必需描述
assetSTRINGYES

查询全仓杠杆交易对 (MARKET_DATA)#

响应

{   "id":323355778339572400,   "symbol":"BTCUSDT",   "base":"BTC",   "quote":"USDT",   "isMarginTrade":true,   "isBuyAllowed":true,   "isSellAllowed":true}

GET /sapi/v1/margin/pair

权重(IP): 10

参数:

名称类型是否必需描述
symbolSTRINGYES

获取所有杠杆资产信息 (MARKET_DATA)#

响应

  [      {          "assetFullName": "USD coin",          "assetName": "USDC",          "isBorrowable": true,          "isMortgageable": true,          "userMinBorrow": "0.00000000",          "userMinRepay": "0.00000000"      },      {          "assetFullName": "BNB-coin",