GetOptionChain
Get all option contracts for an underlying asset, optionally filtered by expiry and type.
GET
GetOptionChainPublicReturns a list of option contracts for the specified underlying market. Use this to display option chains in a trading UI.
Request
| Parameter | Type | Description |
|---|---|---|
underlying_market_idrequired | uint32 | Market ID of the underlying (0 = BTC-PERP, 2 = ETH-PERP) |
expiry_filteroptional | uint64 | Filter by specific expiry timestamp (0 = all expiries) |
type_filteroptional | OptionType | 0 = all, 1 = calls only, 2 = puts onlyDefault: 0 |
Response
| Field | Type | Description |
|---|---|---|
calls | OptionContract[] | List of call option contracts |
puts | OptionContract[] | List of put option contracts |
expiries | uint64[] | 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
}