---
title: "Get Premium Surface"
method: GET
path: "/api/gex/premium_surface"
tags: ["GEX", "Beta"]
---

# Get Premium Surface

`GET /api/gex/premium_surface`

## Request

- Base URL: `https://api.zerogex.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.zerogex.io/api/gex/premium_surface`
- Auth: HTTP bearer

Return the options premium (extrinsic-value) surface for one option type.

**Beta** — contract may change. x = strike, y = expiration, z = extrinsic
(premium − intrinsic, clamped at 0).

## Query parameters

- `symbol` string: Underlying symbol (e.g. SPY)
- `option_type` 'C' | 'P': Option type: C (call) or P (put)
- `dte_max` integer: Max days to expiration to include
- `strike_count` integer: Number of strikes centered on spot

## Response `200`

Successful Response

- PremiumSurfaceResponse
  - `symbol` string, required
  - `option_type` 'C' | 'P', required
  - `spot_price` number, required
  - `timestamp` string, date-time, required
  - `expirations` string[], required
  - `strikes` number[], required
  - `surface` SrcApiRoutersPremiumSurfaceExpirationSlice[], required
    - `expiration` string, date, required
    - `dte` integer, required
    - `strikes` StrikePremium[], required
      - `strike` number, required
      - `premium` number, nullable
      - `intrinsic` number, nullable
      - `extrinsic` number, nullable
  - `available_max_dte` integer, required
  - `available_strike_count` integer, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/zerogex/apis/zerogex-api.md) · [All operations](https://skmtc.dev/zerogex/apis/zerogex-api/llms.txt) · [OpenAPI document](https://skmtc.dev/zerogex/apis/zerogex-api/revisions/753b26bf0592?raw)
