1 个不稳定版本
0.1.0 | 2022 年 8 月 14 日 |
---|
#1 in #luno
19KB
462 行
Luno API 客户端(封装器)
https://www.luno.com/en/developers/api
身份验证
某些 API 调用需要您的应用程序进行身份验证。这是通过与您的账户关联的 API 密钥完成的。您可以通过访问设置页面上的 API 密钥部分来创建 API 密钥。
API 密钥由密钥 ID 和密钥秘密组成。例如,cnz2yjswbv3jd(密钥 ID)和 0hydMZDb9HRR3Qq-iqALwZtXLkbLR4fWxtDZvkB9h4I(密钥秘密)。
API 请求通过使用密钥 ID 作为用户名和密钥秘密作为密码的 HTTP 基本身份验证进行身份验证。缺少、错误或已吊销的密钥会导致返回错误 401。
当创建 API 密钥时,它会获得一组权限。密钥只能用于调用允许的 API 函数。
用法
依赖项
- reqwest
- serde
- serde_json
- tokio
配置
- 从 luno.com 获取您的 API 密钥和秘密
- 在您的项目路由中创建 .env 文件,并进行配置:
API_KEY=myapikey
API_SECRET=myapisecret
- 将 Luno 客户端导入到您的项目中并初始化
use luno_rust_api::Luno;
#[tokio::test] // any other async runtime can be used, not limited to tokio
async fn test_luno_async() {
dotenv::dotenv().ok();
let key = env::var("API_KEY").expect("Api Key doesn't exist yet, please add");
let secret = env::var("API_SECRET").expect("Api Key Secret doesn't exist yet, please add");
let luno = Luno::init(key, secret).await;
let tickers = luno.get_all_balance().await;
println!("{:#?}", json!(tickers.as_ref().unwrap())); // data can be serialized to json)
assert_eq!(true, tickers.is_ok());
}
可用方法(将陆续添加更多,直到完成)
- create_account()
- get_all_balance()
- get_ticker(pair:
"XBTNGN"
) - get_all_tickers()
- get_full_order_book(pair:
"XBTNGN"
) - get_top_order_book(pair:
"XBTNGN"
)
贡献
让我们变得更好 :)
依赖项
~6–18MB
~270K SLoC