1 个不稳定版本
0.2.0 | 2022年6月13日 |
---|
#27 in #pagination
140KB
3.5K SLoC
gmo-coin-rs
使用 Rust 编写的 GMOCoin API 的客户端库。
实现情况
-
公共 API
-
私有 API
已实现
-
公共 WebSocket API
-
私有 WebSocket API
尚未实现
使用方法
examples
中大致有说明。
注意事项
API 密钥和 API 秘密
API 密钥和 API 秘密从环境变量 GMO_COIN_API_KEY
和 GMO_COIN_API_SECRET
中读取。 在执行之前,需要设置这些环境变量。
订单 ID、成交 ID、订单 ID 的数据类型
这些数据类型为字符串。
属性命名规则
GMOCoin API 中属性使用驼峰式命名法(例如:orderId
),但此库遵循 Rust 习惯,使用蛇形命名法(例如:order_id
)进行命名。
响应中不存在属性时的默认值
通常,订单信息获取 API 返回以下形式的响应。
{
"status": 0,
"data": {
"list": [
{
"orderId": 223456789,
"rootOrderId": 223456789,
"symbol": "BTC_JPY",
"side": "BUY",
"orderType": "NORMAL",
"executionType": "LIMIT",
"settleType": "OPEN",
"size": "0.02",
"executedSize": "0.02",
"price": "1430001",
"losscutPrice": "0",
"status": "EXECUTED",
"timeInForce": "FAS",
"timestamp": "2020-10-14T20:18:59.343Z"
}
]
},
"responsetime": "2019-03-19T02:15:06.059Z"
}
但是,如果订单 ID 不正确,则返回以下形式的响应。
{
"status": 0,
"data": {},
"responsetime": "2019-03-19T02:15:06.059Z"
}
比较各个响应,可以发现 list
属性是否存在。
因此,在某些情况下,响应中可能不存在属性。 此库在属性不存在时使用默认值。 下表列出了每个属性的默认值。
数组类型的属性
使用默认值作为元素 0 的数组。
分页信息(分页)
使用获取页面数 0 和获取条数 0 作为默认值。
取消类别
使用 NONE
作为默认值。
返回错误响应
可能由于某种原因返回错误响应。 错误响应的格式如下。
{
"status": ステータスコード,
"messages": {
"message_code": エラーコード,
"message_string": エラー内容
}
}
如果返回错误响应,则各 API 的返回值 Result<T, E>
的 E
部分返回 error::Error::APIError
这种值。
依赖关系
~12–28MB
~494K SLoC