Market-wide endpoints: the bulk our institutional data feed-powered screener, quick public screeners, the market overview, and the (temporarily disabled) legacy screener and vol-surface-monitor routes.
These endpoints use session-cookie auth (the platform UI). For
programmatic access with a long-lived API token, see the Bearer-token surface on the
MCP / Claude integration page.
Market overview
Feature key: market_overview (Premium).
GET/api/market_overview
Premiummarket_overview
Bulk market overview from /cores: sector heatmap, top movers, earnings calendar, with live index prices merged in on a 60-second cache.
# log in first and reuse the cookie jar (see Authentication)
curl -b cookies.txt "https://apexvol.com/api/market_overview"
import requests
s = requests.Session()
# log in to populate the session cookie (see Authentication)
r = s.get("https://apexvol.com/api/market_overview")
print(r.json())
# With the apexvol-mcp server connected to Claude, just ask:
"Screen the market for high IV-rank stocks."
# Claude routes the request to the matching MCP tool — no HTTP required.
Bulk screener (/api/screener)
Feature key: screener (Premium). Runs on 1–2 bulk our institutional data feed calls.
GET/api/screener/screens
Premiumscreener
Lists available screen types with names and descriptions.
# log in first and reuse the cookie jar (see Authentication)
curl -b cookies.txt "https://apexvol.com/api/screener/screens"
import requests
s = requests.Session()
# log in to populate the session cookie (see Authentication)
r = s.get("https://apexvol.com/api/screener/screens")
print(r.json())
# With the apexvol-mcp server connected to Claude, just ask:
"Screen the market for high IV-rank stocks."
# Claude routes the request to the matching MCP tool — no HTTP required.
GET/api/screener/run/<screen_type>
Premiumscreener
Runs a named screen (IV rank, VRP, skew, earnings, …) with optional threshold overrides and market-cap / liquidity / earnings-window filters.
# log in first and reuse the cookie jar (see Authentication)
curl -b cookies.txt "https://apexvol.com/api/screener/run/example"
import requests
s = requests.Session()
# log in to populate the session cookie (see Authentication)
r = s.get("https://apexvol.com/api/screener/run/example")
print(r.json())
# With the apexvol-mcp server connected to Claude, just ask:
"Screen the market for high IV-rank stocks."
# Claude routes the request to the matching MCP tool — no HTTP required.
GET/api/screener/live-prices
Premiumscreener
Lightweight batched live prices used to patch stale closing prices after the table renders. {prices: {TICKER: price}}.
Parameters
tickers (comma-separated, max 200; required)
# log in first and reuse the cookie jar (see Authentication)
curl -b cookies.txt "https://apexvol.com/api/screener/live-prices?ticker=AAPL"
import requests
s = requests.Session()
# log in to populate the session cookie (see Authentication)
r = s.get("https://apexvol.com/api/screener/live-prices", params={"ticker": "AAPL"})
print(r.json())
# With the apexvol-mcp server connected to Claude, just ask:
"Screen the market for high IV-rank stocks."
# Claude routes the request to the matching MCP tool — no HTTP required.
Quick screeners (no tier gate)
Defined in the IV module; available to any visitor (rate-limited).
# log in first and reuse the cookie jar (see Authentication)
curl -b cookies.txt "https://apexvol.com/api/screener/unusual-volume"
import requests
s = requests.Session()
# log in to populate the session cookie (see Authentication)
r = s.get("https://apexvol.com/api/screener/unusual-volume")
print(r.json())
# With the apexvol-mcp server connected to Claude, just ask:
"Screen the market for high IV-rank stocks."
# Claude routes the request to the matching MCP tool — no HTTP required.
GET/api/screener/iv-extremes
Optional loginRate: 100/min
IV extremes screen (very high / very low IV).
# log in first and reuse the cookie jar (see Authentication)
curl -b cookies.txt "https://apexvol.com/api/screener/iv-extremes"
import requests
s = requests.Session()
# log in to populate the session cookie (see Authentication)
r = s.get("https://apexvol.com/api/screener/iv-extremes")
print(r.json())
# With the apexvol-mcp server connected to Claude, just ask:
"Screen the market for high IV-rank stocks."
# Claude routes the request to the matching MCP tool — no HTTP required.
# log in first and reuse the cookie jar (see Authentication)
curl -b cookies.txt "https://apexvol.com/api/screener/high-theta"
import requests
s = requests.Session()
# log in to populate the session cookie (see Authentication)
r = s.get("https://apexvol.com/api/screener/high-theta")
print(r.json())
# With the apexvol-mcp server connected to Claude, just ask:
"Screen the market for high IV-rank stocks."
# Claude routes the request to the matching MCP tool — no HTTP required.
Temporarily disabled
These return 503 with an explanatory message while being optimized.
GET/api/vol-surface-monitor
Provol_surface_monitor[Disabled — 503]
S&P 100 vol-surface monitor.
# log in first and reuse the cookie jar (see Authentication)
curl -b cookies.txt "https://apexvol.com/api/vol-surface-monitor"
import requests
s = requests.Session()
# log in to populate the session cookie (see Authentication)
r = s.get("https://apexvol.com/api/vol-surface-monitor")
print(r.json())
# With the apexvol-mcp server connected to Claude, just ask:
"Screen the market for high IV-rank stocks."
# Claude routes the request to the matching MCP tool — no HTTP required.
GET/api/vol-surface-monitor/batch
Provol_surface_monitor[Disabled — 503]
Batch variant.
# log in first and reuse the cookie jar (see Authentication)
curl -b cookies.txt "https://apexvol.com/api/vol-surface-monitor/batch"
import requests
s = requests.Session()
# log in to populate the session cookie (see Authentication)
r = s.get("https://apexvol.com/api/vol-surface-monitor/batch")
print(r.json())
# With the apexvol-mcp server connected to Claude, just ask:
"Screen the market for high IV-rank stocks."
# Claude routes the request to the matching MCP tool — no HTTP required.
POST/api/vol-surface-monitor/summary
Provol_surface_monitor[Disabled — 503]
Summary variant.
# fetch a CSRF token, then POST with it
TOKEN=$(curl -s -b cookies.txt https://apexvol.com/api/csrf-token | jq -r .token)
curl -b cookies.txt -X POST "https://apexvol.com/api/vol-surface-monitor/summary" \
-H "Content-Type: application/json" -H "X-CSRFToken: $TOKEN" \
-d '{ "ticker": "AAPL" }'
import requests
s = requests.Session()
# log in first, then include the CSRF token on writes
token = s.get("https://apexvol.com/api/csrf-token").json()["token"]
r = s.post("https://apexvol.com/api/vol-surface-monitor/summary",
headers={"X-CSRFToken": token}, json={"ticker": "AAPL"})
print(r.json())
# With the apexvol-mcp server connected to Claude, just ask:
"Screen the market for high IV-rank stocks."
# Claude routes the request to the matching MCP tool — no HTTP required.
GET/api/screener (legacy)
Premiumscreener[Disabled — 503]
Legacy screener route.
# log in first and reuse the cookie jar (see Authentication)
curl -b cookies.txt "https://apexvol.com/api/screener (legacy)"
import requests
s = requests.Session()
# log in to populate the session cookie (see Authentication)
r = s.get("https://apexvol.com/api/screener (legacy)")
print(r.json())
# With the apexvol-mcp server connected to Claude, just ask:
"Screen the market for high IV-rank stocks."
# Claude routes the request to the matching MCP tool — no HTTP required.
GET/api/screener/search
Premiumscreener[Disabled — 503]
Legacy screener search.
# log in first and reuse the cookie jar (see Authentication)
curl -b cookies.txt "https://apexvol.com/api/screener/search"
import requests
s = requests.Session()
# log in to populate the session cookie (see Authentication)
r = s.get("https://apexvol.com/api/screener/search")
print(r.json())
# With the apexvol-mcp server connected to Claude, just ask:
"Screen the market for high IV-rank stocks."
# Claude routes the request to the matching MCP tool — no HTTP required.
GET/api/screener/<filter_type>
Premiumscreener[Disabled — 503]
Legacy screener filters.
# log in first and reuse the cookie jar (see Authentication)
curl -b cookies.txt "https://apexvol.com/api/screener/example"
import requests
s = requests.Session()
# log in to populate the session cookie (see Authentication)
r = s.get("https://apexvol.com/api/screener/example")
print(r.json())
# With the apexvol-mcp server connected to Claude, just ask:
"Screen the market for high IV-rank stocks."
# Claude routes the request to the matching MCP tool — no HTTP required.