Skip to main content
GET
/
exchange
/
markets
List markets
curl --request GET \
  --url https://perp-api.phoenix.trade/exchange/markets
[
  {
    "assetId": 1,
    "baseLotsDecimals": 123,
    "fundingIntervalSeconds": 1,
    "fundingPeriodSeconds": 1,
    "isolatedOnly": true,
    "leverageTiers": [
      {
        "limitOrderRiskFactor": 123,
        "maxLeverage": 123,
        "maxSizeBaseLots": 1
      }
    ],
    "makerFee": 123,
    "marketPubkey": "<string>",
    "marketStatus": "uninitialized",
    "maxFundingRatePerInterval": 123,
    "maxLiquidationSizeBaseLots": 1,
    "openInterestCapBaseLots": 1,
    "riskFactors": {
      "backstop": 123,
      "cancelOrder": 123,
      "highRisk": 123,
      "maintenance": 123,
      "upnl": 123,
      "upnlForWithdrawals": 123
    },
    "splinePubkey": "<string>",
    "symbol": "<string>",
    "takerFee": 123,
    "tickSize": 1,
    "commodityMetadata": {
      "afterHoursRadius": "<string>",
      "isAfterHours": true,
      "isCommodity": true,
      "isReopen": true,
      "status": "active",
      "executionPriceBand": {
        "max": "<string>",
        "min": "<string>"
      },
      "lastIndexExpiryTimestamp": 1,
      "lastKnownIndexPrice": "<string>",
      "markPriceBand": {
        "max": "<string>",
        "min": "<string>"
      }
    },
    "maxFundingRatePerIntervalPercentage": 123
  }
]

Response

200 - application/json

Exchange market configurations

assetId
integer<int32>
required

Numeric asset identifier.

Required range: x >= 0
baseLotsDecimals
integer<int32>
required

Base-lot decimal exponent.

fundingIntervalSeconds
integer<int32>
required

Funding interval length in seconds.

Required range: x >= 0
fundingPeriodSeconds
integer<int32>
required

Funding period length in seconds.

Required range: x >= 0
isolatedOnly
boolean
required

Whether this market only supports isolated margin positions

leverageTiers
object[]
required

Configured leverage tiers.

makerFee
number<double>
required

Maker fee (percent).

marketPubkey
string
required

The orderbook account pubkey (base58 encoded)

marketStatus
enum<string>
required

Current market status.

Available options:
uninitialized,
active,
postOnly,
paused,
closed,
tombstoned
maxFundingRatePerInterval
integer<int64>
required

Maximum absolute funding rate per interval.

maxLiquidationSizeBaseLots
integer<int64>
required

Maximum size for a single liquidation (in base lots)

Required range: x >= 0
openInterestCapBaseLots
integer<int64>
required

Maximum open interest allowed for this market (in base lots)

Required range: x >= 0
riskFactors
object
required

Risk factors as percentages.

splinePubkey
string
required

The spline collection PDA (derived from market_pubkey)

symbol
string
required

Market symbol (for example, "SOL-PERP").

takerFee
number<double>
required

Taker fee (percent).

tickSize
integer<int64>
required

Tick size in quote lots per base lot per tick.

Required range: x >= 0
commodityMetadata
object

Commodity-specific metadata, present only for commodity markets.

maxFundingRatePerIntervalPercentage
number<double>

Maximum absolute funding rate per interval as a percentage of notional at the current mark price.