okv5 API常见问题

发起请求
所有REST请求头都必须包含以下内容:(公共数据不需要)

OK-ACCESS-KEY字符串类型的APIKey。

OK-ACCESS-SIGN使用HMAC SHA256哈希函数获得哈希值,再使用Base-64编码(请参阅签名)。

OK-ACCESS-TIMESTAMP发起请求的时间(UTC),如:2020-12-08T09:08:57.715Z

OK-ACCESS-PASSPHRASE您在创建API密钥时指定的Passphrase。

所有请求都应该含有application/json类型内容,并且是有效的JSON。

签名
生成签名

OK-ACCESS-SIGN的请求头是对timestamp + method + requestPath + body字符串(+表示字符串连接),以及SecretKey,使用HMAC SHA256方法加密,通过Base-64编码输出而得到的。

如:sign=CryptoJS.enc.Base64.Stringify(CryptoJS.HmacSHA256(timestamp + ‘GET’ + ‘/users/self/verify’, SecretKey))

其中,timestamp的值与OK-ACCESS-TIMESTAMP请求头相同,为ISO格式,如2020-12-08T09:08:57.715Z。

method是请求方法,字母全部大写:GET/POST。

requestPath是请求接口路径。如:/api/v5/account/balance

body是指请求主体的字符串,如果请求没有主体(通常为GET请求)则body可省略。如:{“instId”:“BTC-USDT”,“lever”:“5”,“mgnMode”:“isolated”}

SecretKey为用户申请APIKey时所生成。如:22582BD0CFF14C41EDBF1AB98506286D

一、返回Bad Request

通过HTTP请求GET /api/v5/market/history-candles
获取历史数据
instId=BTC-USDT-210924
bar=5m
after=2021-08-03T01:14:22.934Z
max_len=100
返回:{‘code’: ‘-1’, ‘msg’: ‘Bad Request’, ‘data’: None}

原因:
时间戳格式错误
after String 否 请求此时间戳之前(更旧的数据)的分页内容,传的值为对应接口的ts
其中:ts String 成交明细产生时间,Unix 时间戳的毫秒数格式,如 1597026383085
修改即可
after=1597026383085

二、GET/POST方法签名
OK-ACCESS-SIGN的请求头是对timestamp + method + requestPath + body字符串(+表示字符串连接),以及SecretKey,使用HMAC SHA256方法加密,通过Base-64编码输出而得到的。
GET方法签名:
参数写在requestPath 里,?&分隔,没有body
/api/v5/trade/order?ordId=2510789768709120&instId=BTC-USDT

POST方法签名:
body是指请求主体的字符串,如果请求没有主体(通常为GET请求)则body可省略。如:{“instId”:“BTC-USDT”,“lever”:“5”,“mgnMode”:“isolated”}
即requestPath 不带参数,参数直接写成body的字符串
dict转字符串:json.dump(body)(不用去掉空格,如果去掉空格,下面请求data也要去掉空格)
同时POST请求的data,也要写成字符串格式(binan是直接传dict格式)
self.client.post(url, headers=headers, data=json.dumps(kwargs))
三、OK_ACCESS_KEY为空
{‘msg’: “Request header “OK_ACCESS_KEY“ can’t be empty.”, ‘code’: ‘50103’}
问题:请求头"OK_ACCESS_KEY"不能为空
必须用apikey才能获取的数据,private:1
‘get_trade_fee’: {‘url’: ‘/api/v5/account/trade-fee’, ‘method’: ‘get’, ‘private’: 1},

四、asset_withdrawal转账提示需要withdrawal地址
{‘code’: ‘58203’, ‘data’: [], ‘msg’: ‘Please add a withdrawal address.’} asset_withdrawal
ok内部账号,A向B转账
B要在A的地址簿里,而且必须是免验证
如果在地址簿,但需要验证,弹出:
{‘code’: ‘58207’, ‘data’: [], ‘msg’: ‘Withdrawal failed due to address error’} asset_withdrawal

五、同一个账户下,全仓逐仓都开仓过
getget_account_positions获取持仓时
即使逐仓已经平了
还是会一直显示
不要手贱,
全仓仓位排在逐仓仓位后面,过24小时看看会不会消失
s090账号
在这里插入图片描述

通用类

错误提示HTTP 状态码错误码title 4
操作成功2000
操作全部失败2001
批量操作部分成功2002
body不能为空40050000
撮合引擎正在升级,请稍后重试50350001
非法的json数据40050002
接口请求超时(不代表请求成功或者失败,请检查请求结果)50450004
接口已下线或无法使用41050005
无效的Content_Type,请使用"application/json"格式40050006
用户被冻结20050007
用户不存在20050008
用户处于爆仓冻结20050009
用户ID为空20050010
用户请求频率过快,超过该接口允许的限额42950011
用户状态无效20050012
当前系统繁忙,请稍后重试42950013
必填参数{0}不能为空40050014
参数{0}和{1}不能同时为空40050015
参数{0}和{1}不匹配40050016
当前仓位处于ADL冻结中,无法进行相关操作20050017
{0}币种处于ADL冻结中,无法进行相关操作20050018
当前账户处于ADL冻结中,无法进行相关操作20050019
当前仓位处于强平冻结中,无法进行相关操作20050020
{0}币种处于强平冻结中,无法进行相关操作20050021
当前账户处于强平冻结中,无法进行相关操作20050022
资金费冻结,无法进行相关操作20050023
参数{0}和{1}不能同时存在20050024
参数{0}传值个数超过最大限制{1}20050025
系统错误50050026
当前账户已被限制交易20050027
账户异常无法下单20050028
你的账户已经触发风控体系,禁止该标的{0}交易,请联系客服进行处理20050029

API类

错误提示HTTP 状态码错误码错误提示
Api 已被冻结,请联系客服处理40050100Api 已被冻结,请联系客服处理
APIKey 与当前环境不匹配40150101APIKey 与当前环境不匹配
请求时间戳过期40150102请求时间戳过期
请求头"OK_ACCESS_KEY"不能为空40150103请求头"OK_ACCESS_KEY"不能为空
请求头"OK_ACCESS_PASSPHRASE"不能为空40150104请求头"OK_ACCESS_PASSPHRASE"不能为空
请求头"OK_ACCESS_PASSPHRASE"错误40150105请求头"OK_ACCESS_PASSPHRASE"错误
请求头"OK_ACCESS_SIGN"不能为空40150106请求头"OK_ACCESS_SIGN"不能为空
请求头"OK_ACCESS_TIMESTAMP"不能为空40150107请求头"OK_ACCESS_TIMESTAMP"不能为空
券商ID不存在40150108券商ID不存在
券商域名不存在40150109券商域名不存在
无效的ip40150110无效的ip
无效的OK_ACCESS_KEY40150111无效的OK_ACCESS_KEY
无效的OK_ACCESS_TIMESTAMP40150112无效的OK_ACCESS_TIMESTAMP
无效的签名40150113无效的签名
无效的授权40150114无效的授权
无效的请求类型40550115无效的请求类型
错误提示HTTP 状态码错误码错误提示
Api 已被冻结,请联系客服处理40050100Api 已被冻结,请联系客服处理
APIKey 与当前环境不匹配40150101APIKey 与当前环境不匹配
请求时间戳过期40150102请求时间戳过期
请求头"OK_ACCESS_KEY"不能为空40150103请求头"OK_ACCESS_KEY"不能为空
请求头"OK_ACCESS_PASSPHRASE"不能为空40150104请求头"OK_ACCESS_PASSPHRASE"不能为空
请求头"OK_ACCESS_PASSPHRASE"错误40150105请求头"OK_ACCESS_PASSPHRASE"错误
请求头"OK_ACCESS_SIGN"不能为空40150106请求头"OK_ACCESS_SIGN"不能为空
请求头"OK_ACCESS_TIMESTAMP"不能为空40150107请求头"OK_ACCESS_TIMESTAMP"不能为空
券商ID不存在40150108券商ID不存在
券商域名不存在40150109券商域名不存在
无效的ip40150110无效的ip
无效的OK_ACCESS_KEY40150111无效的OK_ACCESS_KEY
无效的OK_ACCESS_TIMESTAMP40150112无效的OK_ACCESS_TIMESTAMP
无效的签名40150113无效的签名
无效的授权40150114无效的授权
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

779醒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值