Skip to content

Events Reference

Every on-chain event is defined in contracts/sources/events.move and emitted via a typed emit_* wrapper (Sui requires the event struct to live in the emitting module). All event structs have copy, drop abilities. T is the phantom collateral coin type.

Market lifecycle events

EventEmitted byFields
MarketCreated<T>create_market / create_price_marketmarket_id, creator, question, outcomes, category, ends_at, creator_fee_bps
MarketResolved<T>resolve_market / resolve_market_pricemarket_id, winning_outcome, resolver, timestamp
DisputeRaised<T>raise_disputemarket_id, disputant, bond, timestamp
DisputeResolved<T>finalize_resolutionmarket_id, upheld, new_winning_outcome: Option<u64>
SharesRedeemed<T>redeem_sharesmarket_id, redeemer, collateral
CreatorSeedRefunded<T>refund_creator_seed / reclaim_abandoned_seedmarket_id, creator, amount

Trading events

EventEmitted byFields
SharesBought<T>buy_sharesmarket_id, trader, outcome, shares, collateral, price
SharesSold<T>sell_sharesmarket_id, trader, outcome, shares, collateral, price
LiquidityAdded<T>add_liquiditymarket_id, provider, lp_shares, collateral
LiquidityRemoved<T>remove_liquiditymarket_id, provider, lp_shares, collateral
FeesCollected<T>route_feesmarket_id, protocol_fee, creator_fee

Governance / treasury events

EventEmitted byFields
ParamsUpdatedgovernance::set_paramadmin, protocol_fee_bps, dispute_window_ms, dispute_bond_bps
TreasuryCreated<T>treasury::create_treasurycreator
TreasuryWithdrawn<T>treasury::withdrawto, amount

Order book (CLOB) events

EventEmitted byFields
OrderPlaced<T>place_buy_order / place_sell_ordermarket_id, order_id, owner, is_buy, outcome, price_bps, shares
OrderFilled<T>fill_pairmarket_id, taker_id, maker_id, outcome, shares, price_bps
OrderCancelled<T>cancel_ordermarket_id, order_id, owner, refund

LP incentive events

EventEmitted byFields
IncentiveFunded<T>create_vault / fund_vaultfunder, amount
IncentiveWithdrawn<T>withdraw_vaultto, amount
IncentiveClaimed<T>claimclaimer, amount
IncentivesConfigured<T>configure_incentivesmarket_id, enabled, rate_per_sec, admin

Price-backed market events

EventEmitted byFields
PriceFeedConfiguredprice_oracle::configuremarket_id, feed_id, reference_price, up_index, down_index, auto_resolve
PriceResolved(resolution flow)market_id, settlement_price, reference_price, winning_outcome, publish_time

Using events

Events are the primary signal for the backend indexer (app/api/graphql, lib/graphql-client) and for the portfolio/PnL computation in lib/pnl.ts. Subscribe via Sui GraphQL events queries filtered by package + eventModule + eventType.

Last updated:

OddsZero — Fully on-chain prediction markets on Sui.