Crate polyte_clob

Crate polyte_clob 

Source
Expand description

§polyte-clob

Rust client library for Polymarket CLOB (Centralized Limit Order Book) API.

§Features

  • Order creation, signing, and posting with EIP-712
  • Market data and order book retrieval
  • Account balance and trade history
  • HMAC-based L2 authentication
  • Type-safe API with idiomatic Rust patterns

§Example

use polyte_clob::{Account, Chain, ClobBuilder, CreateOrderParams, OrderSide};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    // Load account from environment variables
    let account = Account::from_env()?;

    // Create CLOB client
    let clob = ClobBuilder::new(account)
        .chain(Chain::PolygonMainnet)
        .build()?;

    // Place an order
    let params = CreateOrderParams {
        token_id: "token_id".to_string(),
        price: 0.52,
        size: 100.0,
        side: OrderSide::Buy,
        expiration: None,
    };

    let response = clob.place_order(&params).await?;
    println!("Order ID: {:?}", response.order_id);

    Ok(())
}

Re-exports§

pub use account::Account;
pub use account::AccountConfig;
pub use account::Credentials;
pub use account::Signer;
pub use account::Wallet;
pub use api::account::BalanceAllowanceResponse;
pub use api::account::Trade;
pub use api::markets::ListMarketsResponse;
pub use api::markets::Market;
pub use api::markets::MarketToken;
pub use api::markets::MidpointResponse;
pub use api::markets::OrderBook;
pub use api::markets::OrderLevel;
pub use api::markets::PriceResponse;
pub use api::orders::CancelResponse;
pub use api::orders::OpenOrder;
pub use api::orders::OrderResponse;
pub use client::Clob;
pub use client::ClobBuilder;
pub use client::CreateOrderParams;
pub use core::chain::Chain;
pub use core::chain::Contracts;
pub use error::ClobError;
pub use error::Result;
pub use types::Order;
pub use types::OrderKind;
pub use types::OrderSide;
pub use types::SignatureType;
pub use types::SignedOrder;
pub use types::TickSize;

Modules§

account
Account module for credential management and signing operations.
api
API namespace modules for organizing CLOB operations
client
core
error
request
types
utils
ws
WebSocket client for real-time Polymarket CLOB updates.