NAV
shell

简介

欢迎使用LBANK API! 你可以使用此 API 获得市场行情数据,进行交易,并且管理你的账户。此文档是v2版本的,会持续更新。

接口是提供服务的基础,API分为账户、交易和行情三类。开发者在网站创建账号后,可以根据自身需求建立不同权限的API,并利用API进行自动交易或者提现。

账户和交易API需要身份验证,提供下单、撤单,查询订单和帐户信息等功能。行情API提供市场的行情数据,所有行情接口都是公开的。

流程

开发者如需使用API ,请先申请API key等信息 点击申请API Key,然后根据此文档详情进行开发,使用过程中如有问题或者建议请及时反馈。

API Key包括以下两个部分

LBank支持RSA和HmacSHA256两种签名方式

用户可根据自己的实际使用需求,选择不同的签名认证方式。

SDK

开发者可根据自己的偏好和使用场景选择适合自己的方式来使用 LBank API。目前我们提供不同语言版本的SDK,并且在SDK中内置了所有API的调用接口供开发者直接测试和使用,具体请参阅SDK中的说明文档。开发者如需使用其他语言对接API,请参考现有SDK的实现方式。

调用方式

存在两种调用接口的方式,开发者可根据自己的使用场景和偏好选择适合自己的方式来查询行情、进行交易或提现。

REST API

REST,即Representational State Transfer的缩写,是目前最流行的一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便,正得到越来越多网站的采用。其优点如下: 在RESTful架构中,每一个URL代表一种资源; 客户端和服务器之间,传递这种资源的某种表现层; 客户端通过四个HTTP指令,对服务器端资源进行操作,实现“表现层状态转化”。 建议开发者使用REST API进行币币交易或者资产提现等操作。

WebSocket API

WebSocket是HTML5一种新的协议(Protocol)。它实现了客户端与服务器全双工通信,使得数据可以快速地双向传播。通过一次简单的握手就可以建立客户端和服务器连接,服务器根据业务规则可以主动推送信息给客户端。其优点如下: 客户端和服务器进行数据传输时,请求头信息比较小,大概2个字节; 客户端和服务器皆可以主动地发送数据给对方; 不需要多次创建TCP请求和销毁,节约宽带和服务器的资源。 强烈建议开发者使用WebSocket API获取市场行情和买卖深度等信息。

更新说明

生效时间(北京时间) 接口 类型 描述
2019.10.24 19:00 创建文档的第一个版本
2019.12.09 19:00 API 新增 新增 HmacSHA256加密算法
2019.12.16 19:00 Echostr 修改 升级echostr参数校验,为数字和字母字符串
2020.02.24 19:00 /v2/batch_create_order.do 增加 增加批量下单接口
2020.03.04 19:00 WebSocket 增加 订阅订单更新增加customerID返回信息
2020.06.10 19:00 /v2/create_order.do 修改 订单类型type增加buy_maker, sell_maker, buy_ioc, sell_ioc, buy_fok, sell_fok
2020.07.07 19:00 /v2/get_deposit_address.do 增加 增加获取充值地址接口
2020.07.07 19:00 /v2/deposit_history.do 增加 增加获取充值记录接口
2021.06.28 19:00 WebSocket 增加 订阅订单更新增加orderPrice,orderAmt,avgPrice,accAmt,remainAmt
2021.07.13 19:00 API 新增 新增GET /v2/ticker/24hr.do币币行情接口,替代GET /v2/ticker.do
2021.07.27 19:00 WebSocket 新增 新增assetUpdate资产更新
2022.02.14 19:00 /v2/supplement/system_status.do 增加 获取系统状态。
2022.02.14 19:00 /v2/supplement/user_info.do 增加 获取针对用户的所有(LBK支持充提操作的)币种信息。
2022.02.14 19:00 /v2/supplement/withdraw.do 增加 用户提币(支持多链)
2022.02.14 19:00 /v2/supplement/deposit_history.do 增加 用户获取充值历史 优化返回字段
2022.02.14 19:00 /v2/supplement/withdraws.do 增加 用户获取提币历史 优化
2022.02.14 19:00 /v2/supplement/get_deposit_address.do 增加 用户获取充值地址(支持多链)
2022.02.14 19:00 /v2/supplement/asset_detail.do 增加 上架资产详情
2022.02.14 19:00 /v2/supplement/customer_trade_fee.do 增加 用户交易手续费率查询
2022.02.14 19:00 /v2/supplement/api_Restrictions.do 增加 查询用户API Key权限
2022.02.14 19:00 /v2/supplement/system_ping.do 增加 测试服务器连通性
2022.02.14 19:00 /v2/supplement/trades.do 增加 近期成交列表 优化字段
2022.02.14 19:00 /v2/supplement/ticker/price.do 增加 获取交易对最新价格
2022.02.14 19:00 /v2/supplement/ticker/bookTicker.do 增加 当前最优挂单
2022.02.14 19:00 /v2/supplement/create_order_test.do 增加 测试下单
2022.02.14 19:00 /v2/supplement/create_order.do 增加 下单 优化字段
2022.02.14 19:00 /v2/supplement/cancel_order.do 增加 撤销订单 优化字段
2022.02.14 19:00 /v2/supplement/cancel_order_by_symbol.do 增加 撤销单一交易对的所有挂单
2022.02.14 19:00 /v2/supplement/orders_info.do 增加 查询订单 优化字段
2022.02.14 19:00 /v2/supplement/orders_info_no_deal.do 增加 当前挂单 优化字段
2022.02.14 19:00 /v2/supplement/orders_info_history.do 增加 查询所有订单 优化字段
2022.02.14 19:00 /v2/supplement/user_info_account.do 增加 账户信息
2022.02.14 19:00 /v2/supplement/transaction_history.do 增加 历史成交明细
2022.11.03 18:00 /v2/create_order.do 修改 增加下单过期时间
2022.11.03 18:00 /v2/batch_create_order.do 修改 增加下单过期时间
2022.11.03 18:00 /v2/supplement/create_order.do 修改 增加下单过期时间
2022.11.03 18:00 /v2/ticker/24hr.do 修改 排除ETF交易对行情数据
2022.11.03 18:00 /v2/ticker.do 修改 排除ETF交易对行情数据
2022.11.03 18:00 /v2/etfTicker/24hr.do 新增 获取ETF交易对行情数据
2022.12.16 18:00 /v2/transaction_history.do 修改 查询时间支持时分秒
2022.12.16 18:00 /v2/supplement/transaction_history.do 修改 查询时间支持时分秒
2023.02.23 18:00 /v2/order_transaction_detail.do 修改 新增返回字段isMaker是否是挂单方
2024.06.06 18:00 REST API 修改 新增全局返回字段msg(错误代码详情描述)

接入说明

接入URL

REST API

https://www.lbkex.net/

https://api.lbkex.com/

https://api.lbank.info/

Websocket

wss://www.lbkex.net/ws/V2/

风控规则

下单和撤单请求 500次/10秒

其它请求 200次/10秒

签名认证

API 请求在通过 internet 传输的过程中极有可能被篡改,为了确保请求未被更改,除公共接口(基础信息,行情数据)外的私有接口均必须使用您的 API Key 做签名认证,以校验参数或参数值在传输途中是否发生了更改。每一个API Key需要有适当的权限才能访问相应的接口。每个新创建的API Key都需要分配权限。权限类型分为:交易,提币。在使用接口前,请查看每个接口的权限类型,并确认你的API Key有相应的权限。

请求头设置

请求头信息中 contentType 需要统一设置为: 'application/x-www-form-urlencoded'。

contentType:'application/x-www-form-urlencoded'

请求头增加timestamp参数,您发出请求的时间戳(毫秒),如:1567833674095。在查询请求中包含此值有助于防止第三方截取您的请求。建议通过timestamp.do API接口获取。

请求头增加signature_method参数,RSA/HmacSHA256,目前两种都支持。

请求头增加echostr参数,该参数为字母和数字字符串,长度30到40间。可以直接使用SDK中的echostr,这是安全的。

签名流程(如何生成API请求参数中的sign

1. 准备待签名字符串:

每个API中所需的请求参数,去除sign,再加上signature_methodtimestampechostr三个参数(这三个参数需要和header中的保持一致),组成了需要参与签名的字符串。同时,待签名字符串要求按照参数名进行排序(首先比较所有参数名的第一个字母,按abcd顺序排列,若遇到相同首字母,则看第二个字母, 以此类推。)以下使用user_info接口,并以Java代码作为举例,所需签名的字符串为

string parameters="api_key=c821db84-6fbd-11e4-a9e3-c86000d26d7c&echostr=P3LHfw6tUIYWc8R2VQNy0ilKmdg5pjhbxC7&signature_method=RSA&timestamp=1585119477235"

2. 待签名字符串转成所有字符大写的MD5摘要:

parameters转成MD5摘要,并将所有字符转换成大写

string preparedStr = DigestUtils.md5Hex(parameters).toUpperCase()

3. 签名:

使用RSA或者HmacSHA256方式,以及api_key对应的secret key,对preparedStr进行签名,得到最终的sign

RSA方式(signature_method = RSA):

使用api_key对应的secret key,通过RSA使用SHA256算法对preparedStr做一次签名(用Base64编码),并将最终的签名结果赋值于参数sign。可参考shell中的Java代码。

RSA示例:

    public static String RSA_Sign(String preparedStr, String secretKey) {
        try {
            PrivateKey priKey = getPrivateKey(secretKey);
            Signature signature = Signature.getInstance("SHA256WithRSA");
            signature.initSign(priKey);
            signature.update(content.getBytes(CharEncoding.UTF_8));
            byte[] signed = signature.sign();
            return new String(Base64.getEncoder().encode(signed));
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

    private static PrivateKey getPrivateKey(String key) {
        PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(Base64.getDecoder().decode(key));
        PrivateKey privateKey = null;
        try {
            KeyFactory keyFactory = KeyFactory.getInstance(RSA);
            privateKey = keyFactory.generatePrivate(keySpec);
        } catch (NoSuchAlgorithmException | InvalidKeySpecException e) {
            e.printStackTrace();
        }
        return privateKey;
    }

HmacSHA256方式(signature_method = HmacSHA256):

使用api_key对应的secret key,对preparedStr进行哈希运算,并将最终的签名结果赋值于参数sign。可参考shell中的Java代码。

HmacSHA256示例:

    public static String HmacSHA256_Sign(String preparedStr, String secretKey) {
        String hash = "";
        try {
            Mac sha256_HMAC = Mac.getInstance("HmacSHA256");
            SecretKeySpec secret_key = new SecretKeySpec(secretKey.getBytes(), "HmacSHA256");
            sha256_HMAC.init(secret_key);
            byte[] bytes = sha256_HMAC.doFinal(message.getBytes());
            hash = byteArrayToHexString(bytes);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return hash;
    }

提交

将签名后的得到的sign,以及其他所需参数以form形式提交。以user_info接口举例,需要提交的参数为:

api_key=6a8d4f1a-b040-4ac4-9bda-534d71f4cb28

sign=e73f3b77895d3df27c79481d878a517edd674e8496ed3051b6e70b6d0b1e47bc

请求格式

所有的API请求都以GET或者POST形式发出。

并且所有请求头都包含设置三个参数Content-Type:application/x-www-form-urlencoded、timestamp:1567427936729、signature_method:RSA、echostr:3d47056c0bf0429c81afc8c3de7b0f94。

所有请求的参数都在路径参数里。

返回格式

参数名称 数据类型 描述
result boolean API接口返回结果,true/false
error_code string 接口返回错误码
ts long 接口返回时间戳
data object 接口返回数据主体

错误信息

REST API 错误代码

错误代码 详情描述
00000 返回成功
10000 内部错误
10001 必要参数不能为空
10002 验证不通过
10003 非法参数
10004 用户请求过于频繁
10005 密钥不存在
10006 用户不存在
10007 无效签名
10008 此货币对不支持
10009 限价单不能缺少下单价格和下单数量
10010 下单价格或下单数量小于最低限制
10011 市价买入,price字段必传
10012 市价卖出,amount字段必传
10013 订单量低于最小交易数量
10014 账户币数量不足
10015 订单类型错误
10016 账户余额不足
10017 服务器异常
10018 订单查询条数不能大于50条小于1条
10019 撤单条数不能大于3条小于1条
10020 小于金额的最小买卖额度0.001
10021 小于限价单交易价格的最小交易额度0.01
10022 API密钥权限被拒绝,无效的IP或权限
10023 不支持市价交易
10024 用户无法交易该交易对
10025 订单已被成交
10026 订单已被撤销
10027 订单正在撤销处理中
10028 错误的查询时间
10029 from不在查询时间范围内
10030 from和查询的交易类型不一致
10031 echostr长度在30和40之间的合法字符串
10032 订单号不存在
10033 下单失败
10036 下单自定义ID重复
10037 订单已撤销或已成交
10038 订单撤销异常
10039 订单超时取消
10066 请检查链名称
10100 无提币权限
10101 提币费率不对
10102 提币额度小于单笔最小
10103 提币额度超出每日上限
10104 该笔订单已经被处理,无法撤销
10105 该笔订单已经被撤销
10106 非交易时间无法交易
10107 开盘价数据异常
10108 委托价超过涨跌幅,无法挂单
10109 数字资产钱包地址不正确
10110 转账手续费不匹配
10111 提币数量须大于0
10112 手续费过低,将会被区块网络拒绝,请重新提交
10113 转账手续费区间为空
10114 提现数量精度不正确
10116 升级中,请稍后再试
10117 站内提现未开启
10119 接口升级,站外提现请使用:/v2/supplement/withdraw.do
10120 小于最小交易额度
10121 订单金额超过单笔最大交易限额
10122 价格超过上限
10123 价格低于下限
10600 防重放攻击拦截,请检查timestamp
10601 接口关闭不可用
10701 无效的资产编码
10702 暂不开放充值
10801 提现地址白名单验证不通过

基础数据

获取交易对

此接口获取LBank可用交易对接口

curl "https://api.lbkex.com/v2/currencyPairs.do"

返回示例:

[
  "bcc_eth","etc_btc","dbc_neo","eth_btc",
  "zec_btc","qtum_btc","sc_btc","ven_btc",
  "ven_eth","sc_eth","zec_eth"
]

HTTP 请求

GET /v2/currencyPairs.do

请求参数

此接口不接受任何参数

返回参数

参数名 参数类型 是否必须 描述
data object 交易对信息

获取币对信息

获取所有币对的基本信息

curl "https://api.lbkex.com/v2/accuracy.do"

返回示例:

    [
      {
        "priceAccuracy": "2",
        "quantityAccuracy": "4",
        "symbol": "pch_usdt"
      }
    ]

HTTP 请求

GET /v2/accuracy.do

请求参数

此接口不接受任何参数

返回参数

参数名 参数类型 是否必须 描述
minTranQua string 最小交易数量
symbol string 交易对
quantityAccuracy string 数量精度
priceAccuracy string 价格精度

获取币种提币参数

获取币种提币参数

curl "https://api.lbkex.com/v2/withdrawConfigs.do"

返回示例:

  { 
    "amountScale":4,
    "transferAmtScale":4,
    "assetCode":"eth", 
    "canWithDraw":"true", 
    "fee":0.01,
    "type":1, 
    "min":0.01,
    "minTransfer":0.01,
    "chain":1
   }

HTTP 请求

GET /v2/withdrawConfigs.do

请求参数

参数名 参数类型 是否必须 描述
assetCode string 币种编号

返回参数

参数名 参数类型 是否必须 描述
assetCode string 币种编号
min double 站外最小提币数量
minTransfer double 站内最小提币数量
canWithDraw boolean 该币种是否可提
fee double 提币手续费(数量)
amountScale int 站外提币数量精度
transferAmtScale int 站内提币数量精度
type int 1:手续费按照固定收取,2:手续费按照比例收取
chain string chain针对usdt,区分OMNI、ERC20

获取时间戳

返回当前的系统时间,单位毫秒

curl "https://api.lbkex.com/v2/timestamp.do"

返回示例:

  {"timestamp":1568269063244}

HTTP 请求

GET /v2/timestamp.do

请求参数

无参数

返回参数

参数名 参数类型 是否必须 描述
data long 时间戳

钱包接口

系统状态

获取系统状态。

返回示例:

{
  "status":"1"
}

HTTP 请求

POST /v2/supplement/system_status.do

请求参数

此接口不接受任何参数

返回参数

参数名 参数类型 是否必须 描述
status string 系统状态:0 系统维护,1 正常

获取所有币信息

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

返回示例:

[{
    "usableAmt": "110.00869",
    "assetAmt": "110.02869",
    "networkList": [
      {
        "isDefault": true,
        "withdrawFeeRate": "10",
        "name": "btc",
        "withdrawMin": 0.01,
        "minLimit": 0.0001,
        "minDeposit": 0.001,
        "feeAssetCode": "usdt",
        "withdrawFee": "1",
        "type": 3,
        "coin": "btc",
        "network": "btc"
      },
      {
        "isDefault": false,
        "withdrawFeeRate": "",
        "name": "btctron",
        "withdrawMin": 0.0001,
        "minLimit": 0.02,
        "minDeposit": 0.0124,
        "feeAssetCode": "btc",
        "withdrawFee": "0.01",
        "type": 1,
        "coin": "btc",
        "network": "trx"
      }
    ],
    "freezeAmt": "0.02",
    "coin": "btc"
}]

HTTP 请求

POST /v2/supplement/user_info.do

请求参数

参数名 参数类型 是否必须 描述
api_key string 用户申请的 api_key
sign string 请求参数的签名

返回参数

参数名 参数类型 是否必须 描述
coin string 资产名
assetAmt string 资产余额
usableAmt string 可用资产
freezeAmt string 冻结资产
networkList [] 多链信息
isDefault boolean 默认链
withdrawFeeRate string 提现费率
name string 链名称
withdrawMin BigDecimal 单笔最低提现
minLimit BigDecimal 站内划转单笔最少
minDeposit BigDecimal 最小充值额
feeAssetCode string 下架币种提现手续费币种
withdrawFee string 提现手续费
type int 手续费类型,1固定,2百分比,3固定加百分比
coin string 币种
network string 主网

提币

用户提币

返回示例:

{
  "fee": 2,
  "withdrawId": 93182
}

HTTP 请求

POST /v2/supplement/withdraw.do

请求参数

参数名 参数类型 是否必须 描述
api_key string 用户申请的 api_key
sign string 请求参数的签名
address string 提现地址,当type=1时为划转的账户
networkName string 链名称,多链资产必传,通过获取所有币信息接口获取
coin string 币种
amount string 提现数量
memo string memo:bts、dct的memo字
mark string 提现备注
fee string 手续费
name string 地址的备注,填写该参数后会加入该币种的提现地址簿。
withdrawOrderId string 自定义提现id
type string type=1是为站内划转;type=0是为站外提现(默认值)

返回参数

参数名 参数类型 是否必须 描述
fee BigDecimal 手续费
withdrawId int 提现id

获取充值历史

用户获取充值历史

返回示例:

[
  {
    "insertTime": 1644378926000,
    "amount": 443,
    "address": "QiEik5W3szxqtjJnzp14apfrY7McUdX9sa",
    "networkName": "lbk20",
    "txId": "0x4baf730c242fe6d85559edb40399daaf8dca16255382a5ce36934f0ff964a776",
    "coin": "lbk",
    "status": "2"
  }
]

HTTP 请求

POST /v2/supplement/deposit_history.do

请求参数

参数名 参数类型 是否必须 描述
api_key string 用户申请的 api_key
sign string 请求参数的签名
status string 充值状态:("1","申请中"),("2", "充值成功"),("3", "充值失败"),("4", "已撤销"), ("5", "转移中")
coin string 币种
startTime string 开始时间,毫秒时间戳,默认90天之前
endTime string 结束时间,毫秒时间戳,默认当天

返回参数

参数名 参数类型 是否必须 描述
insertTime timestamp 充值时间
amount BigDecimal 充值数量
address String 数量
networkName string 链名称
txId string 交易哈希
coin string 币种
status string 状态

获取提币历史

用户获取提币历史

返回示例:

 [
  {
    "amount": 234,//数量
    "coid": "lbk",//币种
    "address": "34252342",//提现地址
    "withdrawOrderId": "werqwerq123425353",//提现客户自定义id
    "fee": 2,//手续费
    "networkName": "lbk30",//链名称
    "transferType": "数字资产提现",//提现类型
    "txId": "",
    "feeAssetCode": "",//手续费币种,下架币种会有显示
    "id": 93182,//提醒id
    "applyTime": 1644476930000,//时间
    "status": "1"//("1","申请中"),("2", "已撤销"),("3", "提现失败"),("4", "提现完成")
  }
]

HTTP 请求

POST /v2/supplement/withdraws.do

请求参数

参数名 参数类型 是否必须 描述
api_key string 用户申请的 api_key
sign string 请求参数的签名
status string 状态:("1","申请中"),("2", "已撤销"),("3", "提现失败"),("4", "提现完成")
coin string 币种
withdrawOrderId string 自定义提币id
startTime string 开始时间,毫秒时间戳,默认90天之前
endTime string 结束时间,毫秒时间戳,默认当天

用户获取充值地址

用户获取充值地址

返回示例:

{
  "address": "0x1ccbf66250c9a665710e56e00b3a1502495dd269", //地址
  "memo": null,
  "coin": "lbk" //币种
}

HTTP 请求

POST /v2/supplement/get_deposit_address.do

请求参数

参数名 参数类型 是否必须 描述
api_key string 用户申请的 api_key
sign string 请求参数的签名
networkName string 链名称
coin string 币种

上架资产详情

上架资产详情

返回示例:

{
  "htmoon": {
    "minWithdrawAmount": 0,
    "stationDrawStatus": true, //是否可站内划转
    "depositStatus": false, //是否可充值
    "withdrawFee": 0, //提现手续费
    "withdrawStatus": false //是否可提现
  },
  "phx": {
    "minWithdrawAmount": 0,
    "stationDrawStatus": true,
    "depositStatus": true,
    "withdrawFee": 0,
    "withdrawStatus": true
  }
}

HTTP 请求

POST /v2/supplement/asset_detail.do

请求参数

参数名 参数类型 是否必须 描述
api_key string 用户申请的 api_key
sign string 请求参数的签名
coin string 币种

交易手续费率查询

用户交易手续费率查询

返回示例:

[
  {
    "symbol": "lbk_usdt",
    "makerCommission": "0.10",
    "takerCommission": "10.00"
  }
]

HTTP 请求

POST /v2/supplement/customer_trade_fee.do

请求参数

参数名 参数类型 是否必须 描述
api_key string 用户申请的 api_key
sign string 请求参数的签名
category string 交易对,例如:lbk_usdt

查询用户API Key权限

查询用户API Key权限

返回示例:

{
  "enableSpotTrading": true, //交易
  "createTime": 1643091005000,
  "enableReading": true, //只讀
  "ipRestrict": true, //是否限制ip
  "enableWithdrawals": true //提幣
}

HTTP 请求

POST /v2/supplement/api_Restrictions.do

请求参数

参数名 参数类型 是否必须 描述
api_key string 用户申请的 api_key
sign string 请求参数的签名

行情接口

测试服务器连通性

测试能否联通 Rest API。

返回示例:

{}

HTTP 请求

POST /v2/supplement/system_ping.do

请求参数

此接口不接受任何参数

获取深度信息

获取深度信息

返回示例:

{
  "asks":[
    [5370.4, 0.32],
    [5369.5, 0.28],
    [5369.24, 0.05],
    [5368.2, 0.079],
    [5367.9, 0.023]
  ],
  "bids":[
    [5367.24, 0.32],
    [5367.16, 1.31],
    [5366.18, 0.56],
    [5366.03, 1.42],
    [5365.77, 2.64]
  ]
}

HTTP 请求

GET /v2/depth.do

请求参数

参数名 参数类型 必填 描述
symbol String 币对
size Integer 返回的条数(1-200)

返回参数

参数名 参数类型 描述
asks Object 卖方市场
bids Object 买方市场

获取交易对最新价格

获取交易对最新价格

返回示例:

[
  {
    "symbol": "ht_usdt",
    "price": "97.0000"
  },
  {
    "symbol": "mcc_usdt",
    "price": "10.00"
  },
  {
    "symbol": "un_eth",
    "price": "0.02"
  }
]

HTTP 请求

GET /v2/supplement/ticker/price.do

请求参数

参数名 参数类型 是否必须 描述
symbol string 币对

获取当前最优挂单

当前最优挂单

返回示例:

{
  "symbol": "lbk_usdt",
  "askPrice": "0.011",
  "askQty": "8",
  "bidQty": "1659",
  "bidPrice": "0.01"
}

HTTP 请求

GET /v2/supplement/ticker/bookTicker.do

请求参数

参数名 参数类型 是否必须 描述
symbol string 币对

获取币币行情

获取LBank币币行情数据,排除了杠杆代币交易对(获取杠杆代币行情 GET /v2/etfTicker/24hr.do

   curl "https://api.lbkex.com/v2/ticker/24hr.do?symbol=btc_usdt"

返回示例:

[
  {
    "symbol": "btc_usdt",
    "ticker": {
      "high": "34161.64",
      "vol": "8925.492",
      "low": "32659.88",
      "change": "-2.67",
      "turnover": "296494557.82",
      "latest": "33220.36"
    },
    "timestamp": 1626170107873
  }
]

HTTP 请求

GET /v2/ticker/24hr.do

请求参数

参数名 参数类型 必填 描述
symbol String 币对
如: eth_btczec_btcall

返回参数

参数名 参数类型 描述
vol String 累计成交量
high String 最高价
low String 最低价
change String 涨跌幅
turnover String 累计成交额
latest String 最新成交价
timestamp Long 服务器时间戳

获取杠杆代币行情

获取LBank 杠杆代币交易对行情数据

   curl "https://api.lbkex.com/v2/etfTicker/24hr.do?symbol=btc3l_usdt"

返回示例:

[
  {
    symbol: "btc3l_usdt",
    ticker: {
      high: "0.111848",
      vol: "4460664.1434",
      low: "0.098938",
      change: "-3.11",
      turnover: "463226.2868",
      latest: "0.104219"
    },
    timestamp: 1668648723813
  }
]

HTTP 请求

GET /v2/etfTicker/24hr.do

请求参数

参数名 参数类型 必填 描述
symbol String 币对
如: btc3l_usdtall

返回参数

参数名 参数类型 描述
vol String 累计成交量
high String 最高价
low String 最低价
change String 涨跌幅
turnover String 累计成交额
latest String 最新成交价
timestamp Long 服务器时间戳

获取近期成交列表

近期成交列表

返回示例:

[
  {
    "quoteQty": 0.022,
    "price": 0.011,
    "qty": 2,
    "id": "a56828ebeeb144029bd1349d07d365a1",
    "time": 1644396172793,
    "isBuyerMaker": true
  },
  {
    "quoteQty": 0.67315789,
    "price": 0.67315789473,
    "qty": 1,
    "id": "4fb45e61249e442080d6b69c0de2b93f",
    "time": 1644386190138,
    "isBuyerMaker": true
  }
]

HTTP 请求

GET /v2/supplement/trades.do

请求参数

参数名 参数类型 是否必须 描述
symbol string 币对
size string 返回条数
time string 返回时间戳之后 size 条数据,为空则返回最新 size 条数据

获取K线数据

获取K线数据

   curl "https://api.lbkex.com/v2/kline.do"

返回示例:

[
  [
    1482311500,
    5423.23,
    5472.80,
    5516.09,
    5462,
    234.3250
  ],
  [
    1482311400,
    5432.52,
    5459.87,
    5414.30,
    5428.23,
    213.7329
  ]
]

HTTP 请求

GET /v2/kline.do

请求参数

参数名 参数类型 必填 描述
symbol String 币对如 eth_btc
size Integer 返回的条数(1-2000)
type String minute1:1分钟
minute5:5分钟
minute15:15分钟
minute30:30分钟
hour1:1小时
hour4:4小时
hour8:8小时
hour12:12小时
day1:1日
week1:1周
time String 时间戳 (精确到秒)

返回参数

参数名 参数类型 描述
1482311500 Decimal 时间戳
5423.23 Decimal
5472.80 Decimal
5516.09 Decimal
5462 Decimal
234.3250 Decimal 交易量

现货交易

测试下单

测试下单

返回示例:

{
  "order_id":"12074652-d827-4f8d-8f52-92a005c6ce53",
  "symbol": "lbk_usdt",
  "custom_id": "12074652-d827"
}

HTTP 请求

POST /v2/supplement/create_order_test.do

请求参数

参数名 参数类型 是否必须 描述
api_key String 用户申请的 api_key
symbol String 交易对 eth_btc:以太坊; zec_btc:零币
type String 委托买卖类型,包括 buy, sell, buy_market, sell_market, buy_maker, sell_maker, buy_ioc, sell_ioc, buy_fok, sell_fok
price String 参考描述 下单价格 买单和卖单:大于等于0
amount String 参考描述 交易数量 卖单和卖单:BTC 数量大于等于 0.001
sign String 请求参数的签名
custom_id String 用户自定义ID,自己控制不重复
window Long 下单过期时间,毫秒,超时自动撤单(考虑下公网耗时,建议不要超过5s)

下单

下单

返回示例:

{
  "order_id":"12074652-d827-4f8d-8f52-92a005c6ce53",
  "symbol": "lbk_usdt",
  "custom_id": "12074652-d827"
}

HTTP 请求

POST /v2/supplement/create_order.do

请求参数

参数名 参数类型 是否必须 描述
api_key String 用户申请的 api_key
symbol String 交易对 eth_btc:以太坊; zec_btc:零币
type String 委托买卖类型,包括 buy, sell, buy_market, sell_market, buy_maker, sell_maker, buy_ioc, sell_ioc, buy_fok, sell_fok
price String 参考描述 下单价格 买单和卖单:大于等于0
amount String 参考描述 交易数量 卖单和卖单:BTC 数量大于等于 0.001
sign String 请求参数的签名
custom_id String 用户自定义ID,自己控制不重复
window Long 下单过期时间,毫秒,超时自动撤单(考虑下公网耗时,建议不要超过5s)

buy, sell

限价单
price、amount必传

buy_market, sell_market

市价单
buy_market:price必传,买入消耗的报价资产数量;
sell_market:amount必传,卖出消耗的基础资产数量

buy_maker

当“下单价格”>=“市场最低卖出价”,订单提交后,系统将拒绝接受此订单;
当“下单价格”<“市场最低卖出价”,提交成功后,此订单将被系统接受

sell_maker

当“下单价格”<=“市场最高买入价”,订单提交后,系统将拒绝接受此订单;
当“下单价格”>“市场最高买入价”,提交成功后,此订单将被系统接受

buy_ioc, sell_ioc

需同时提交价格和数量,以提交的价格吃单成交尽可能多的数量,未吃到的数量部分取消。

buy_fok, sell_fok

需同时提交价格和数量,如果能以提交的价格吃单成交所有数量,则订单全部成交。如果不能全部成交,则整单取消,不成交任何数量。

window

时间同步安全 签名接口均需要传递timestamp参数,服务器收到请求时会判断请求中的时间戳,如果是5000毫秒之前发出的,则请求会被认为无效。这个时间窗口值可以通过发送可选参数window来自定义。 另外,如果服务器计算得出客户端时间戳在服务器时间的‘未来’一秒以上,也会拒绝请求。 关于交易时效性 互联网状况并不100%可靠,不可完全依赖,因此你的程序本地到LBank服务器的时延会有抖动. 这是我们设置window的目的所在,如果你从事高频交易,对交易时效性有较高的要求,可以灵活设置window以达到你的要求。

撤销订单

撤销订单

返回示例:

{
  "symbol": "lbk_usdt",
  "origClientOrderId": "myOrder1",
  "orderId": "myOrder1",
  "price": "2.00000000",
  "origQty": "1.00000000",
  "executedQty": "0.00000000",
  "status": 3,
  "timeInForce": "GTC",
  "tradeType": "buy"
}

HTTP 请求

POST /v2/supplement/cancel_order.do

请求参数

参数名 参数类型 是否必须 描述
api_key String 用户申请的 api_key
sign String 请求参数的签名
symbol string 币对
orderId string 订单id,用户自定义id和订单id必传一个
origClientOrderId string 用户自定义id,用户自定义id和订单id必传一个

撤销单一交易对的所有挂单

撤销单一交易对的所有挂单

返回示例:

[
  {
    "symbol": "lbk_usdt",
    "origClientOrderId": "myOrder1",
    "orderId": "myOrder1",
    "price": "2.00000000",
    "origQty": "1.00000000",
    "executedQty": "0.00000000",
    "status": 3,
    "tradeType": "buy"
  },
  {
    "symbol": "lbk_usdt",
    "origClientOrderId": "myOrder1",
    "orderId": "myOrder1",
    "price": "2.00000000",
    "origQty": "1.00000000",
    "executedQty": "0.00000000",
    "status": 3,
    "tradeType": "buy"
  }
]

HTTP 请求

POST /v2/supplement/cancel_order_by_symbol.do

请求参数

参数名 参数类型 是否必须 描述
api_key String 用户申请的 api_key
sign String 请求参数的签名
symbol string 币对

查询订单

查询订单

返回示例:

{
  "symbol": "lbk_usdt", // 交易对
  "orderId": "sfasfee", // 系统的订单ID
  "clientOrderId": "myOrder1", // 客户自己设置的ID
  "price": "0.1", // 订单价格
  "origQty": "1.0", // 用户设置的原始订单数量
  "executedQty": "0.0", // 交易的订单数量
  "cummulativeQuoteQty": "0.0", // 累计交易的金额
  "status": "3", // 订单状态 -1:已撤销 0:未成交 1 部分成交 2:完全成交 3:部分成交已撤销 4:撤单处理中
  "type": "buy", // 订单类型, 比如市价单,现价单等
  "time": 1499827319559, // 订单时间
  "updateTime": 1499827319559, // 最后更新时间
  "origQuoteOrderQty": "0.000000" // 原始的交易金额
}

HTTP 请求

POST /v2/supplement/orders_info.do

请求参数

参数名 参数类型 是否必须 描述
api_key String 用户申请的 api_key
sign String 请求参数的签名
symbol string 币对
orderId string 订单id,用户自定义id和订单id必传一个
origClientOrderId string 用户自定义id,用户自定义id和订单id必传一个

当前挂单

当前挂单

返回示例:

[
  {
    "symbol": "lbk_usdt", // 交易对
    "orderId": "sfasfee", // 系统的订单ID
    "clientOrderId": "myOrder1", // 客户自己设置的ID
    "price": "0.1", // 订单价格
    "origQty": "1.0", // 用户设置的原始订单数量
    "executedQty": "0.0", // 交易的订单数量
    "cummulativeQuoteQty": "0.0", // 累计交易的金额
    "status": "3", // 订单状态 -1:已撤销 0:未成交 1 部分成交 2:完全成交 3:部分成交已撤销 4:撤单处理中
    "type": "buy", // 订单类型, 比如市价单,现价单等
    "time": 1499827319559, // 订单时间
    "updateTime": 1499827319559, // 最后更新时间
    "origQuoteOrderQty": "0.000000" // 原始的交易金额
  }
]

HTTP 请求

POST /v2/supplement/orders_info_no_deal.do

请求参数

参数名 参数类型 是否必须 描述
sign string 请求参数的签名
api_key string 用户申请的 api_key
symbol string 交易对 eth_btc:以太坊; zec_btc:零币
current_page string 当前页码
page_length string 每页数据条数(不得小于1,不得大于200)

查询所有订单

查询所有订单(备注:默认查询24小时内的订单,状态不传默认查询已撤销和完全成交的订单)

返回示例:

[
  {
    "symbol": "lbk_usdt", // 交易对
    "orderId": "sfasfee", // 系统的订单ID
    "clientOrderId": "myOrder1", // 客户自己设置的ID
    "price": "0.1", // 订单价格
    "origQty": "1.0", // 用户设置的原始订单数量
    "executedQty": "0.0", // 交易的订单数量
    "cummulativeQuoteQty": "0.0", // 累计交易的金额
    "status": "3", // 订单状态 -1:已撤销 0:未成交 1 部分成交 2:完全成交 3:部分成交已撤销 4:撤单处理中
    "type": "buy", // 订单类型, 比如市价单,现价单等
    "time": 1499827319559, // 订单时间
    "updateTime": 1499827319559, // 最后更新时间
    "origQuoteOrderQty": "0.000000" // 原始的交易金额
  }
]

HTTP 请求

POST /v2/supplement/orders_info_history.do

请求参数

参数名 参数类型 是否必须 描述
sign string 请求参数的签名
api_key string 用户申请的 api_key
symbol string 交易对 eth_btc:以太坊; zec_btc:零币
current_page string 当前页码
page_length string 每页数据条数(不得小于1,不得大于200)
status string 订单状态

账户信息

账户信息

返回示例:

  {
  "canTrade": true,
  "canWithdraw": true,
  "canDeposit": true,
  "balances": [
    {
      "asset": "BTC",
      "free": "4723846.89208129",
      "locked": "0.00000000"
    },
    {
      "asset": "LTC",
      "free": "4763368.68006011",
      "locked": "0.00000000"
    }
  ]
  }

HTTP 请求

POST /v2/supplement/user_info_account.do

请求参数

参数名 参数类型 是否必须 描述
sign string 请求参数的签名
api_key string 用户申请的 api_key

历史成交明细

历史成交明细

返回示例:

[
  {
    "symbol": "lbk_usdt", // 交易对
    "id": 28457, // trade ID
    "orderId": 100234, // 订单ID
    "price": "4.00000100", // 成交价格
    "qty": "12.00000000", // 成交量
    "quoteQty": "48.000012", // 成交金额
    "commission": "10.10000000", // 交易费金额
    "time": 1499865549590, // 交易时间
    "isBuyer": true, // 是否是买家
    "isMaker": false // 是否是挂单方
  }
]

HTTP 请求

POST /v2/supplement/transaction_history.do

请求参数

参数名 参数类型 是否必须 描述
sign string 请求参数的签名
api_key string 用户申请的 api_key
symbol string 交易对 eth_btc:以太坊; zec_btc:零币
startTime string 开始时间 yyyy-MM-dd或yyyy-MM-dd HH:mm:ss (UTC+8),最大值为今天,默认为昨天
endTime string 结束时间 yyyy-MM-dd或yyyy-MM-dd HH:mm:ss (UTC+8),最大值为今天,默认为今天
起始与结束时间的查询窗口最大为2天
fromId string 查询的起始交易编号
limit string 查询条数,默认100,[1-100]

订阅行情数据

WebSocket简介

1.用请求方式一次性获取K线数据需要额外提供以下参数

参数名 参数类型 必填 描述
start String 开始时间 ,接受两种格式,如2018-08-03T17:32:00(北京时间), 另一种是时间戳,如1533288720(精确到秒)
end String 截止时间
size String 获取的kbar的条数

2.用请求方式一次性获取成交记录需要额外提供以下参数

参数名 参数类型 必填 描述
size String 获取的交易条数
 # 获取K线数据 Request
 {
     "action":"request",
     "request":"kbar",
     "kbar":"5min",
     "pair":"eth_btc",
     "start":"2018-08-03T17:32:00",
     "end":"2018-08-05T17:32:00",
     "size":"576"
 }
 # 获取深度数据 Request
 {
     "action":"request",
     "request":"depth",
     "depth":"100",
     "pair":"eth_btc"
 }
 # 获取成交数据 Request
 {
     "action":"request",
     "request":"trade",
     "pair":"eth_btc",
     "size":"100",
 }
 # 获取市场行情数据 Request
 {
     "action":"request",
     "request":"tick",
     "pair":"eth_btc"
 }

Kbar数据

获取Kbar数据

    {
        "action":"subscribe",
        "subscribe":"kbar",
        "kbar":"5min",
        "pair":"eth_btc"
    }

返回示例:

 {
        "kbar":{
            "a":64.32991311,
            "c":0.02590293,
            "t":"2019-06-28T17:45:00.000",
            "v":2481.1912,
            "h":0.02601247,
            "slot":"5min",
            "l":0.02587925,
            "n":272,
            "o":0.02595196
        },
        "type":"kbar",
        "pair":"eth_btc",
        "SERVER":"V2",
        "TS":"2019-06-28T17:49:22.722"
    }

请求参数

参数名 参数类型 必填 描述
action String 请求的动作类型:subscribe,unsubscribe
subscribe String kbar
kbar String 可订阅的K线类型
1min:1分钟
5min:5分钟
15min:15分钟
30min:30分钟
1hr:1小时
4hr:4小时
day:1日
week:1周
month:1月
year:1年
pair String 交易对:eth_btc

返回参数

参数名 参数类型 描述
t String K线更新时间
o BigDecimal
h BigDecimal
l BigDecimal
c BigDecimal
v BigDecimal 成交量
a BigDecimal 成交额, 即 sum(每一笔成交价 * 该笔的成交量)
n BigDecimal 成交笔数
slot String K线类型

订阅深度

订阅深度数据

    {
        "action":"subscribe",
        "subscribe":"depth",
        "depth":"100",
        "pair":"eth_btc"
    }

返回示例:

 {
         "depth":{
             "asks":[
                 [
                     0.0252,
                     0.5833
                 ],
                 [
                     0.025215,
                     4.377
                 ],
                 ...
             ],
             "bids":[
                 [
                     0.025135,
                     3.962
                 ],
                 [
                     0.025134,
                     3.46
                 ],
                 ...
             ]
         },
         "count":100,
         "type":"depth",
         "pair":"eth_btc",
         "SERVER":"V2",
         "TS":"2019-06-28T17:49:22.722"
     }

请求参数

参数名 参数类型 必填 描述
action String 请求的动作类型:subscribe,unsubscribe
subscribe String depth
depth String 支持选择:10/50/100
pair String 交易对:eth_btc

返回参数

参数名 参数类型 描述
asks List 卖方深度,list.get(0):委托价, list.get(1):委托数量
bids List 买方深度

//: # ()

//: # ()

//: # ()

//: # ()

//: # ()

市场行情

订阅市场行情

    {
        "action":"subscribe",
        "subscribe":"tick",
        "pair":"eth_btc"
    }

返回示例:

 {
         "tick":{
             "to_cny":76643.5,
             "high":0.02719761,
             "vol":497529.7686,
             "low":0.02603071,
             "change":2.54,
             "usd":299.12,
             "to_usd":11083.66,
             "dir":"sell",
             "turnover":13224.0186,
             "latest":0.02698749,
             "cny":2068.41
         },
         "type":"tick",
         "pair":"eth_btc",
         "SERVER":"V2",
         "TS":"2019-07-01T11:33:55.188"
     }

请求参数

参数名 参数类型 必填 描述
action String 请求的动作类型:subscribe,unsubscribe
subscribe String tick
pair String 交易对:eth_btc

返回参数

参数名 参数类型 描述
high BigDecimal 24小时内最高价
low BigDecimal 24小时内最低价
latest BigDecimal 最新成交价
vol BigDecimal 成交量
turnover BigDecimal 成交额, 即 sum(每一笔成交价 * 该笔的成交量)
to_cny BigDecimal eth_btc为例子, btc的cny折合价
to_usd BigDecimal eth_btc为例子, btc的usd折合价
cny BigDecimal eth_btc为例子, eth的cny折合价
usd BigDecimal eth_btc为例子, eth的usd折合价
dir String sell,buy
change BigDecimal 24小时内涨跌幅

成交记录

订阅成交记录

    {
        "action":"subscribe",
        "subscribe":"trade",
        "pair":"eth_btc"
    }

返回示例:

 {
         "trade":{
             "volume":6.3607,
             "amount":77148.9303,
             "price":12129,
             "direction":"sell",
             "TS":"2019-06-28T19:55:49.460"
         },
         "type":"trade",
         "pair":"btc_usdt",
         "SERVER":"V2",
         "TS":"2019-06-28T19:55:49.466"
     }

请求参数

参数名 参数类型 必填 描述
action String 请求的动作类型:subscribe,unsubscribe
subscribe String trade
pair String 交易对:eth_btc

返回参数

参数名 参数类型 描述
amount String 最近成交数量
price Integer 成交价
volumePrice String 最近成交数额
direction String sell,buy
TS String 成交时间

订阅资产及订单

生成subscribeKey

生成subscribeKey,从创建时刻起有效期为60分钟

curl "https://api.lbkex.com/v2/subscribe/get_key.do"

返回示例:

  {
    "key":"9301ef1ca6cafbef2df4a1430dc8b53879ea68c595a142eac311d8d590fbd60a"
  }

HTTP 请求

POST /v2/subscribe/get_key.do

请求参数

参数名 参数类型 是否必须 描述
api_key string 用户申请的 api_key
sign string 请求参数的签名

返回参数

参数名 参数类型 是否必须 描述
data string subscribeKey

延长subscribeKey有效期

延长subscribeKey有效期,有效期延长至本次调用后60分钟

curl "https://api.lbkex.com/v2/subscribe/refresh_key.do"

返回示例:

{"result":"true"}

HTTP 请求

POST /v2/subscribe/refresh_key.do

请求参数

参数名 参数类型 是否必须 描述
api_key string 用户申请的 api_key
sign string 请求参数的签名
subscribeKey string subscribeKey

返回参数

参数名 参数类型 是否必须 描述
result boolean 返回成功与否

关闭subscribeKey

关闭subscribeKey,关闭某账户数据流

curl "https://api.lbkex.com/v2/subscribe/destroy_key.do"

返回示例:

{"result":"true"}

HTTP 请求

POST /v2/subscribe/destroy_key.do

请求参数

参数名 参数类型 是否必须 描述
api_key string 用户申请的 api_key
sign string 请求参数的签名
subscribeKey string subscribeKey

返回参数

参数名 参数类型 是否必须 描述
result boolean 返回成功与否

订单更新

当账户下有新订单创建、订单有新成交或者新的状态变化时会推送此类事件

    {
      "action": "subscribe",
      "subscribe": "orderUpdate",
      "subscribeKey": "24d87a4xxxxxd04b78713f42643xxxxf4b6f6378xxxxx35836260",
      "pair": "all",
    }

返回示例:

 {
     "orderUpdate":{
         "accAmt": "0.003",
         "amount":"0.003",
         "avgPrice": "0.02455211",
         "symbol":"eth_btc",
         "type":"buy",
         "orderAmt": "0.003",
         "orderStatus":2,
         "orderPrice": "0.02455211",
         "price":"0.02455211",
         "role":"maker",
         "remainAmt":"0",
         "updateTime":1561704577786,
         "uuid":"d0db191d-xxxxx-4418-xxxxx-fbb1xxxx2ea9",
         "txUuid":"da88f354d5xxxxxxa12128aa5bdcb3",
         "volumePrice":"0.00007365633"
     },
     "pair":"eth_btc",  
     "type":"orderUpdate",
     "SERVER":"V2",
     "TS":"2019-06-28T14:49:37.816"
 }

请求参数

参数名 参数类型 必填 描述
action String 请求的动作类型:subscribe
subscribe String orderUpdate
subscribeKey String 通过REST接口/v2/subscribe/refresh_key.do获取
pair String 交易对如:eth_btc,支持匹配全部:all

返回参数

参数名 参数类型 描述
uuid String 订单Id
customerID String 自定义ID
symbol String 交易对
type String 购买或者出售
txUuid String 成交记录Id
amount String 最近成交数量
volumePrice String 最近成交数额
role Long maker,taker
price String 最新价(当订单状态为1或者2时为成交价格,其他为委托价格)
orderPrice String 委托价格
orderAmt String 委托数量
avgPrice String 平均成交价
accAmt String 累计成交数量
remainAmt String 未成交量(卖单为未成交数量,买单为未成交金额)
orderStatus Integer 订单状态
-1:已撤销
0:未成交
1: 部分成交
2:完全成交
4:撤单处理中
updateTime Long 订单更新时间

资产更新

当账户下资产余额变化时(增加、扣减、可用冻结、冻结释放)会推送此类事件

    {
      "action": "subscribe",
      "subscribe": "assetUpdate",
      "subscribeKey": "24d87a4xxxxxd04b78713f42643xxxxf4b6f6378xxxxx35836260"
    }

返回示例:

 {
     "data": {
         "asset": "114548.31881315",
         "assetCode": "usdt",
         "free": "97430.6739041",
         "freeze": "17117.64490905",
         "time": 1627300043270,
         "type": "ORDER_CREATE"
     },
     "SERVER": "V2",
     "type": "assetUpdate",
     "TS": "2021-07-26T19:48:03.548"
 }

请求参数

参数名 参数类型 必填 描述
action String 请求的动作类型:subscribe
subscribe String assetUpdate
subscribeKey String 通过REST接口/v2/subscribe/refresh_key.do获取

返回参数

参数名 参数类型 描述
asset String 总资产
assetCode String 资产代码
free String 可用余额
freeze String 冻结余额
time Long 变更时间
type String 变更类型

type变更类型:

类型 描述
DEPOSIT 充值
WITHDRAW 提现
ORDER_CREATE 订单创建
ORDER_DEAL 订单成交
ORDER_CANCEL 订单取消
shell