API Documentation

Programmatic access to dealer exposure surfaces for SPY and QQQ 0DTE options.

Authentication

All API requests require an API key. You can generate one from your Account page.

Pass your key using the X-API-Key header:

X-API-Key: vannacharm_live_YOUR_KEY

API access requires a premium subscription.

Endpoints

GET/api/getMinuteSurfaces

Retrieve minute-by-minute dealer exposure surfaces for a given symbol and trading date.

Parameters

NameTypeRequiredDescription
symbolstringYesSPY or QQQ
trade_datestringYesYYYY-MM-DD format

Response

Returns up to 390 minute surface objects (one per minute of Regular Trading Hours, 9:30 AM - 4:00 PM ET).

Each object contains:

  • session_minute — 0-389 (minute offset from 9:30 AM ET)
  • spot — underlying price at that minute
  • vix — VIX level at that minute
  • surfaces_jsonb — object containing four surface arrays: gamma, vanna, charm, and iv

Shape of surfaces_jsonb:

{
  "gamma": [
    { "strike": 560, "call": 1250000, "put": -980000, "net": 270000 },
    { "strike": 565, "call": 890000, "put": -1100000, "net": -210000 },
    ...
  ],
  "vanna": [
    { "strike": 560, "call": 45000, "put": -32000, "net": 13000 },
    ...
  ],
  "charm": [
    { "strike": 560, "call": 12000, "put": -8500, "net": 3500 },
    ...
  ],
  "iv": [
    { "strike": 560, "call": 0.18, "put": 0.21, "net": 0.195 },
    ...
  ]
}

Each point in a surface array has:

  • strike — the strike price
  • call — dealer exposure from call contracts at this strike
  • put — dealer exposure from put contracts at this strike
  • net — combined dealer exposure (call + put) at this strike

Code Examples

Use the official floe (TypeScript) and floe-go (Go), and floe-py (Python) client libraries for type-safe access, or call the REST API directly with curl and vanilla Python.

curl --compressed -H "X-API-Key: vannacharm_live_YOUR_KEY" \
  "https://vannacharm.com/api/getMinuteSurfaces?symbol=SPY&trade_date=2026-03-10"

Client Libraries

Use our official client libraries for type-safe access to the VannaCharm API.

TypeScript / JavaScript

npm install @fullstackcraftllc/floe

Full Black-Scholes pricing, Greeks calculation, IV surfaces, and API client.

View floe documentation →

Go

go get github.com/FullStackCraft/floe-go

Native Go implementation with identical feature set.

View floe-go documentation →

Python

pip install floe-py

Zero-dependency Python implementation with the same analytics and API client coverage.

View floe-py documentation →

Data Coverage

Symbols
SPY, QQQ
Start Date
2022-05-02
Resolution
1 Minute
Type
0DTE