Skip to main content
GET
/
expirations
/
{exchange}
/
{coin}
curl https://api.gammaflip.io/api/v1/expirations/all/BTC \
  -H "X-API-Key: gex_sk_your_key_here"
{
  "data": {
    "expirations": [
      "18APR26",
      "25APR26",
      "02MAY26",
      "09MAY26",
      "27JUN26",
      "26SEP26"
    ]
  },
  "meta": {
    "timestamp": "2026-04-14T10:00:00+00:00",
    "exchange": "all",
    "coin": "BTC",
    "rate_limit": {
      "limit": 500,
      "remaining": 497,
      "reset": "2026-04-15T00:00:00+00:00"
    }
  }
}

Path parameters

exchange
string
required
Exchange name: bybit, deribit, okx, or all (cross-exchange union).
coin
string
required
Base coin symbol (uppercase). Use /coins to see what’s available.

Response

data.expirations
array
Array of expiration date strings in DDMMMYY format (e.g., 25APR26), sorted chronologically. Already-expired dates are filtered out (expiration is 08:00 UTC with a 1-hour grace period).
meta.exchange
string
The exchange you queried (echoed back).
meta.coin
string
The coin you queried (echoed back).

Errors

400 invalid_exchange
error
Exchange name isn’t recognized. Use /exchanges to list valid values.
curl https://api.gammaflip.io/api/v1/expirations/all/BTC \
  -H "X-API-Key: gex_sk_your_key_here"
{
  "data": {
    "expirations": [
      "18APR26",
      "25APR26",
      "02MAY26",
      "09MAY26",
      "27JUN26",
      "26SEP26"
    ]
  },
  "meta": {
    "timestamp": "2026-04-14T10:00:00+00:00",
    "exchange": "all",
    "coin": "BTC",
    "rate_limit": {
      "limit": 500,
      "remaining": 497,
      "reset": "2026-04-15T00:00:00+00:00"
    }
  }
}