Options

IV rank + percentile of current ATM IV vs the snapshot history

Changed on

Ranks the CURRENT nearest-expiry ATM IV against the symbol's own dated snapshot history, so the consumer no longer has to accumulate and store that history client-side. window counts OBSERVATIONS (dated snapshots that yielded a gated ATM IV), default 252 - the annual convention - but the dated store retains 90 days, so observations_found discloses what the rank actually rested on. iv_rank is min-max scaled (null when the window's range is degenerate); iv_percentile is the share of observations at or below current. Fewer than 2 observations is a 503 insufficient_history, never a rank fabricated from one point. Error codes match /snapshot.

get/api/v1/options/{symbol}/iv-rank

Request

  • Base URL
    https://sugra.ai
  • Auth
    API key in header x-api-key

Path parameters

symbolstring required

Underlier ticker.

Example:SPY

Query parameters

windowinteger

Window size in observations (30..504, default 252). Bounded in practice by the 90-day dated-snapshot retention; observations_found reports the reality.

Response

IV rank payload.

Example response

{
  "data": {
    "symbol": "SPY"
  },
  "meta": {
    "endpoint": "/api/v1/fred/us/cpi",
    "data_time": "2026-04-16T14:30:00Z",
    "response_time": "2026-04-16T14:30:12Z",
    "provider": "Sugra API v1.0.1",
    "data_age_days": 8.532,
    "source": "sugra_crypto",
    "attribution": "Short interest and Reg SHO daily short volume data is owned by and sourced from FINRA (Financial Industry Regulatory Authority).",
    "source_url": "https://fred.stlouisfed.org/series/UNRATE",
    "citation": "Federal Reserve Bank of St. Louis (FRED) - Unemployment Rate (UNRATE) - https://fred.stlouisfed.org/series/UNRATE - retrieved 2026-11-02",
    "fallback_chain": [
      "sugra_crypto",
      "sugra_finance"
    ],
    "stale_since": "2026-09-08T12:00:00Z",
    "period": "2026-Q1",
    "notes": "the UKMTO report behind these counts is dated 2026-08-21 and is 11 days old"
  }
}

Changes

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • breaking

      added subschema #1 to the response body oneOf list for the response status

    • breaking

      the response's body type changed from object to no type for status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    This list may be incomplete.