Crates.io | pacifica_rust_sdk |
lib.rs | pacifica_rust_sdk |
version | 0.1.1 |
created_at | 2025-09-21 20:37:29.500738+00 |
updated_at | 2025-09-21 23:07:58.713595+00 |
description | Rust SDK for pacifica.fi exchange |
homepage | |
repository | https://github.com/Neiroleptik/pacifica_rust_sdk |
max_upload_size | |
id | 1849163 |
size | 400,645 |
This is a community Rust SDK for the Pacifica exchange.
It provides both Asynchronous REST and WebSocket clients, utilities for tick/lot handling, signing, etc., and typed models for working with the API.
Add this SDK as a dependency in Cargo.toml
:
For the latest development version from GitHub:
[dependencies]
pacifica_rust_sdk = { git = "https://github.com/Neiroleptik/pacifica_rust_sdk.git", branch = "main" }
For the latest stable version on crates.io:
pacifica_rust_sdk = "x.y.z"
Note: The GitHub version may contain the latest features and fixes, but it could be unstable.
The crates.io version is stable and recommended for production use.
use pacifica_rust_sdk::common::errors::ExchangeError;
use pacifica_rust_sdk::rest::rest_client::RestClient;
use pacifica_rust_sdk::info::info_client::InfoClient;
use pacifica_rust_sdk::models::info::response::market::MarketModel;
#[tokio::main]
async fn main() -> Result<(), ExchangeError> {
// Create InfoClient for mainnet without WebSocket
let info = InfoClient::new(
true, // is_mainnet
false, // enable_ws
None, // api_key
).await?;
// Access market cache
let markets: &std::collections::HashMap<String, MarketModel> = &info.market_cache;
for (symbol, m) in markets {
println!("{}: {:?}", symbol, m);
}
Ok(())
}
If WebSocket is enabled, you can subscribe to channels and receive live updates.
rest
- REST client and HTTP utilitiesws
- WebSocket client and subscriptionsinfo
- information client for market metadatacommon
- errors, tick/lot utils, helpersmodels
- typed request/response structure