Skip to main content

Pydantic Models

All event types are Pydantic v2 models with full IDE support:
from polynode.types.events import (
    SettlementEvent,
    TradeEvent,
    StatusUpdateEvent,
    BlockEvent,
    PositionChangeEvent,
    DepositEvent,
    PositionSplitEvent,
    PositionMergeEvent,
    OracleEvent,
    PriceFeedEvent,
    PolyNodeEvent,          # discriminated union of all events
)

from polynode.types.orderbook import (
    OrderbookLevel,
    BookSnapshot,
    BookUpdate,
    PriceChange,
)

from polynode.types.rest import (
    StatusResponse,
    MarketsResponse,
    MarketSummary,
    CandlesResponse,
    SettlementsResponse,
    WalletResponse,
    OrderbookResponse,
    LeaderboardResponse,
    TrendingResponse,
    TraderProfile,
)
The PolyNodeEvent union uses Pydantic’s discriminated union on event_type:
from pydantic import TypeAdapter

adapter = TypeAdapter(PolyNodeEvent)
event = adapter.validate_python({"event_type": "settlement", ...})
# Returns a SettlementEvent instance