Skip to main content

Crate bybit_api

Crate bybit_api 

Source
Expand description

§Bybit API

A Rust SDK for the Bybit V5 API.

§Features

  • Async-first design with tokio
  • Type-safe request/response models
  • Zero-panic error handling
  • Support for REST API and WebSocket

§Quick Start

use bybit_api::{BybitClient, Category};

#[tokio::main]
async fn main() -> bybit_api::Result<()> {
    // Create a client for testnet
    let client = BybitClient::testnet("your_api_key", "your_api_secret")?;

    // Get tickers
    let tickers = client.get_tickers(Category::Linear, Some("BTCUSDT")).await?;
    println!("{:?}", tickers);

    Ok(())
}

Modules§

account
Account models.
api
API endpoint implementations.
asset
Asset models.
market
Market data models.
position
Position models.
trade
Trade models for orders.
websocket
WebSocket client for Bybit streaming API.

Structs§

BybitClient
Bybit HTTP API client.
ClientConfig
Configuration for the Bybit HTTP client.
ClientConfigBuilder
Builder for ClientConfig.
FundingHistory
Funding rate history response.
FundingRecord
Single funding record.
InstrumentInfo
Single instrument info.
InstrumentsInfo
Instruments info response.
Kline
Parsed kline data.
Klines
Kline response.
LeverageFilter
Leverage filter.
LotSizeFilter
Lot size filter.
OpenInterest
Open interest response.
OpenInterestRecord
Single open interest record.
Orderbook
Orderbook response.
PriceFilter
Price filter.
RecentTrades
Recent trades response.
RiskLimit
Single risk limit.
RiskLimits
Risk limit response.
ServerTime
Server time response.
Ticker
Single ticker.
Tickers
Tickers response.
Trade
Single trade.
WsConfig
Configuration for WebSocket client.

Enums§

AccountType
Account type.
BybitError
The main error type for the Bybit API client.
Category
Product category.
Interval
Kline interval.
MarginMode
Margin mode.
OrderStatus
Order status.
OrderType
Order type.
PositionIdx
Position side.
PositionMode
Position mode.
Side
Order side.
TimeInForce
Time in force.
TpSlMode
TP/SL mode.
TriggerBy
Trigger price type.

Constants§

DEFAULT_RECV_WINDOW
Default receive window in milliseconds
DEFAULT_TIMEOUT_SECS
Default request timeout in seconds
DEFAULT_WS_PING_INTERVAL
Default WebSocket ping interval in seconds
DEMO
Demo trading environment
DEMO_WS_PRIVATE
Private channel (demo)
DEMO_WS_TRADE
Trade channel (demo)
HEADER_API_KEY
API key header
HEADER_RECV_WINDOW
Receive window header
HEADER_SIGN
Signature header
HEADER_SIGN_TYPE
Sign type header
HEADER_TIMESTAMP
Timestamp header
HONGKONG
Hong Kong
KAZAKHSTAN
Kazakhstan
MAINNET
Mainnet REST API
MAINNET_BYTICK
Mainnet alternative (bytick)
MAINNET_WS_PRIVATE
Private channel (mainnet)
MAINNET_WS_PUBLIC_INVERSE
Inverse public channel (mainnet)
MAINNET_WS_PUBLIC_LINEAR
Linear public channel (mainnet)
MAINNET_WS_PUBLIC_OPTION
Option public channel (mainnet)
MAINNET_WS_PUBLIC_SPOT
Spot public channel (mainnet)
MAINNET_WS_PUBLIC_SPREAD
Spread public channel (mainnet)
MAINNET_WS_TRADE
Trade channel (mainnet)
NETHERLANDS
Netherlands
TESTNET
Testnet REST API
TESTNET_WS_PRIVATE
Private channel (testnet)
TESTNET_WS_PUBLIC_INVERSE
Inverse public channel (testnet)
TESTNET_WS_PUBLIC_LINEAR
Linear public channel (testnet)
TESTNET_WS_PUBLIC_OPTION
Option public channel (testnet)
TESTNET_WS_PUBLIC_SPOT
Spot public channel (testnet)
TESTNET_WS_PUBLIC_SPREAD
Spread public channel (testnet)
TESTNET_WS_TRADE
Trade channel (testnet)
TURKEY
Turkey

Type Aliases§

Result
Result type alias for Bybit operations