Polymarket.Schemas.NewMarketEvent (Polymarket v0.1.1)

Copy Markdown View Source

New market event. Announces a freshly created market on the websocket feed.

Summary

Functions

Builds a NewMarketEvent from a decoded (atom-keyed) websocket message, coercing each value to its field type. Returns {:error, {:missing_fields, fields}} when a required field is absent.

Types

t()

@type t() :: %Polymarket.Schemas.NewMarketEvent{
  active: boolean() | nil,
  assets_ids: [String.t()] | nil,
  clob_token_ids: [String.t()] | nil,
  condition_id: String.t() | nil,
  description: String.t() | nil,
  event_message: Polymarket.Schemas.EventMessage.t() | nil,
  event_type: String.t() | nil,
  fee_schedule: Polymarket.Schemas.FeeSchedule.t() | nil,
  fees_enabled: boolean() | nil,
  game_start_time: String.t() | nil,
  group_item_title: String.t() | nil,
  id: String.t() | nil,
  line: String.t() | nil,
  market: String.t() | nil,
  order_price_min_tick_size: float() | nil,
  outcomes: [String.t()] | nil,
  question: String.t() | nil,
  slug: String.t() | nil,
  sports_market_type: String.t() | nil,
  tags: [String.t()] | nil,
  taker_base_fee: integer() | nil,
  timestamp: integer() | nil
}

Functions

from_attrs(attrs)

@spec from_attrs(map()) :: {:ok, t()} | {:error, {:missing_fields, [atom()]}}

Builds a NewMarketEvent from a decoded (atom-keyed) websocket message, coercing each value to its field type. Returns {:error, {:missing_fields, fields}} when a required field is absent.