GetOptionChain

Get all option contracts for an underlying asset, optionally filtered by expiry and type.

GETGetOptionChainPublic

Returns a list of option contracts for the specified underlying market. Use this to display option chains in a trading UI.

Request

ParameterTypeDescription
underlying_market_idrequireduint32Market ID of the underlying (0 = BTC-PERP, 2 = ETH-PERP)
expiry_filteroptionaluint64Filter by specific expiry timestamp (0 = all expiries)
type_filteroptionalOptionType0 = all, 1 = calls only, 2 = puts onlyDefault: 0

Response

FieldTypeDescription
callsOptionContract[]List of call option contracts
putsOptionContract[]List of put option contracts
expiriesuint64[]List of available expiry timestamps

OptionContract Schema

{
  contract_id: uint32,
  symbol: string,              // "BTC-28JAN26-100000-C"
  underlying_market_id: uint32,
  type: OptionType,            // CALL (0) or PUT (1)
  style: OptionStyle,          // EUROPEAN (0) or AMERICAN (1)
  settlement: OptionSettlement, // CASH (0) or PHYSICAL (1)
  strike_price: int64,         // Strike price (8 decimals)
  expiry_time: uint64,         // Expiration timestamp
  contract_size: int64,        // Size per contract (8 decimals)
  theo_price: int64,           // Theoretical price
  implied_vol: int64,          // Implied volatility (8 decimals)
  open_interest: int64,        // Total open contracts
  volume_24h: int64,           // 24h trading volume
}