| Crates.io | polyte-data |
| lib.rs | polyte-data |
| version | 0.4.0 |
| created_at | 2025-11-30 15:10:28.946701+00 |
| updated_at | 2026-01-05 05:24:37.108771+00 |
| description | Rust client library for Polymarket Data API |
| homepage | |
| repository | https://github.com/roushou/polyte |
| max_upload_size | |
| id | 1958347 |
| size | 86,194 |
Rust client library for Polymarket Data API.
The Data API provides access to Polymarket's data endpoints, including user positions, trades, holders, open interest, and live volume.
More information about this crate can be found in the crate documentation.
cargo add polyte-data
use polyte_data::DataApi;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let data = DataApi::new()?;
// Get positions for a user
let positions = data.user("0x1234567890123456789012345678901234567890")
.list_positions()
.limit(10)
.send()
.await?;
for position in positions {
println!("{}: size {}", position.title, position.size);
}
Ok(())
}
let traded = data.user("0x...")
.traded()
.await?;
println!("Total markets traded: {}", traded.total_traded);
let trades = data.trades()
.list()
.limit(10)
.send()
.await?;
for trade in trades {
println!("Trade: {} @ {}", trade.size, trade.price);
}
let holders = data.holders()
.get("token_id_here")
.send()
.await?;
println!("Total holders: {}", holders.len());
let open_interest = data.open_interest()
.get("condition_id_here")
.send()
.await?;
println!("Open interest: {}", open_interest.open_interest);
let volume = data.live_volume()
.get("clob_token_id_here")
.send()
.await?;
println!("Live volume: {}", volume.volume);
use polyte_data::api::builders::TimePeriod;
let rankings = data.builders()
.leaderboard()
.time_period(TimePeriod::Week)
.limit(10)
.send()
.await?;
for ranking in rankings {
println!("#{} {} - volume: {}", ranking.rank, ranking.builder, ranking.volume);
}
use polyte_data::api::builders::TimePeriod;
let volumes = data.builders()
.volume()
.time_period(TimePeriod::Month)
.send()
.await?;
for entry in volumes {
println!("{}: {} - {}", entry.dt, entry.builder, entry.volume);
}
This project is licensed under the MIT License.