API Documentation

Programmatic access to screened options strategy data across 15 strategies.

API access is included with direct Option Screener Premium subscriptions and the Trader Bundle.

Authentication

Pass the key generated on your Account page in the X-API-Key header.

X-API-Key: optionscreener_live_YOUR_KEY

Endpoint

GET/api/getOptionsData

Retrieve screened contracts for one strategy with optional filters, sorting, and pagination.

Base URL:
https://option-screener.com/api
Rate limit:
60 requests per 60 seconds, aggregated by IP address and domain

Option Chains and Ticker Retrieval

The API does not return a raw, exhaustive exchange option chain. It returns the contracts and multi-leg combinations produced by a selected Option Screener strategy.

For a strategy-oriented, chain-like view, query an exact symbol with ticker=AAPL, request up to 500 records per page, and continue until you have collected the reported total. Repeat for each relevant strategy, then group records by expiration, strike, call/put type, and contract or leg identifiers.

https://option-screener.com/api/getOptionsData?strategy=CC&ticker=AAPL&page=1&page_size=500&order_by=expiration_date&order_direction=asc

Strategies

CodeStrategyCategory
CCCovered CallWheel
CSPCash-Secured PutWheel
LCLong CallLong
LPLong PutLong
CDSCall Debit SpreadSpreads
CCSCall Credit SpreadSpreads
PDSPut Debit SpreadSpreads
PCSPut Credit SpreadSpreads
LSTRADLong StraddleVolatility
LSTRANGLELong StrangleVolatility
LCCSLong Call CalendarCalendar
LPCSLong Put CalendarCalendar
SCCSShort Call CalendarCalendar
SPCSShort Put CalendarCalendar
LEAPSLEAPSLEAPS

Query Parameters

Only strategy is required. Exact ticker and partial search filters cannot be combined.

NameTypeRequiredDescription
strategystringYesOne of: CC, CSP, LC, LP, CDS, CCS, PDS, PCS, LSTRAD, LSTRANGLE, LCCS, LPCS, SCCS, SPCS, LEAPS
tickerstringNoCase-insensitive exact ticker match, such as AAPL
searchstringNoCase-insensitive partial ticker match; cannot be combined with ticker
min_score / max_scorenumberNoScore; single, spread, volatility, calendar strategies.
min_stock_price / max_stock_pricenumberNoStock Price; single, spread, volatility, calendar strategies.
min_max_loss / max_max_lossnumberNoMax Loss; single, spread, volatility, calendar strategies.
min_pl / max_plnumberNoP/L; single, spread, volatility, calendar strategies. Percentage points: 28.5 means 28.5%.
min_market_cap / max_market_capnumberNoMarket Cap (Billions); single, spread, volatility, calendar strategies. US dollars.
min_spread_percent / max_spread_percentnumberNoBid/Ask Spread; single, spread, volatility, calendar strategies. Ratio: 0.032 means 3.2%.
min_strike / max_strikenumberNoStrike Price; single, calendar strategies.
min_iv / max_ivnumberNoImplied Volatility; single strategies. Percentage points: 28.5 means 28.5%.
min_delta / max_deltanumberNoDelta; single strategies. Signed decimal delta.
min_volume / max_volumenumberNoVolume; single strategies.
min_open_interest / max_open_interestnumberNoOpen Interest; single strategies.
min_bid / max_bidnumberNoBid; single strategies.
min_ask / max_asknumberNoAsk; single strategies.
min_days_to_expiration / max_days_to_expirationnumberNoDays to Expiration; single, spread, volatility strategies.
min_max_profit / max_max_profitnumberNoMax Profit; single, spread strategies.
min_delta_pop / max_delta_popnumberNoProbability of Profit; single, spread strategies. Percentage points: 28.5 means 28.5%.
min_annualized_return / max_annualized_returnnumberNoAnnualized Return; single, spread strategies. Percentage points: 28.5 means 28.5%.
min_beta / max_betanumberNoBeta; single, spread strategies.
min_price_to_earnings / max_price_to_earningsnumberNoPrice/Earnings; single, spread strategies.
min_combined_delta / max_combined_deltanumberNoCombined Delta; spread, volatility, calendar strategies. Signed decimal delta.
min_long_leg_bid / max_long_leg_bidnumberNoLong Leg Bid; spread strategies.
min_long_leg_ask / max_long_leg_asknumberNoLong Leg Ask; spread strategies.
min_long_leg_delta / max_long_leg_deltanumberNoLong Leg Delta; spread strategies. Signed decimal delta.
min_long_leg_iv / max_long_leg_ivnumberNoLong Leg IV; spread strategies. Percentage points: 28.5 means 28.5%.
min_long_leg_oi / max_long_leg_oinumberNoLong Leg Open Interest; spread strategies.
min_short_leg_bid / max_short_leg_bidnumberNoShort Leg Bid; spread strategies.
min_short_leg_ask / max_short_leg_asknumberNoShort Leg Ask; spread strategies.
min_short_leg_delta / max_short_leg_deltanumberNoShort Leg Delta; spread strategies. Signed decimal delta.
min_short_leg_iv / max_short_leg_ivnumberNoShort Leg IV; spread strategies. Percentage points: 28.5 means 28.5%.
min_short_leg_oi / max_short_leg_oinumberNoShort Leg Open Interest; spread strategies.
min_call_bid / max_call_bidnumberNoCall Leg Bid; volatility strategies.
min_call_ask / max_call_asknumberNoCall Leg Ask; volatility strategies.
min_call_delta / max_call_deltanumberNoCall Leg Delta; volatility strategies. Signed decimal delta.
min_call_iv / max_call_ivnumberNoCall Leg IV; volatility strategies. Percentage points: 28.5 means 28.5%.
min_call_oi / max_call_oinumberNoCall Leg Open Interest; volatility strategies.
min_put_bid / max_put_bidnumberNoPut Leg Bid; volatility strategies.
min_put_ask / max_put_asknumberNoPut Leg Ask; volatility strategies.
min_put_delta / max_put_deltanumberNoPut Leg Delta; volatility strategies. Signed decimal delta.
min_put_iv / max_put_ivnumberNoPut Leg IV; volatility strategies. Percentage points: 28.5 means 28.5%.
min_put_oi / max_put_oinumberNoPut Leg Open Interest; volatility strategies.
min_near_leg_bid / max_near_leg_bidnumberNoNear Leg Bid; calendar strategies.
min_near_leg_ask / max_near_leg_asknumberNoNear Leg Ask; calendar strategies.
min_near_leg_delta / max_near_leg_deltanumberNoNear Leg Delta; calendar strategies. Signed decimal delta.
min_near_leg_iv / max_near_leg_ivnumberNoNear Leg IV; calendar strategies. Percentage points: 28.5 means 28.5%.
min_near_leg_oi / max_near_leg_oinumberNoNear Leg Open Interest; calendar strategies.
min_far_leg_bid / max_far_leg_bidnumberNoFar Leg Bid; calendar strategies.
min_far_leg_ask / max_far_leg_asknumberNoFar Leg Ask; calendar strategies.
min_far_leg_delta / max_far_leg_deltanumberNoFar Leg Delta; calendar strategies. Signed decimal delta.
min_far_leg_iv / max_far_leg_ivnumberNoFar Leg IV; calendar strategies. Percentage points: 28.5 means 28.5%.
min_far_leg_oi / max_far_leg_oinumberNoFar Leg Open Interest; calendar strategies.
min_long_strike / max_long_strikenumberNoLong Strike; spread strategies.
min_short_strike / max_short_strikenumberNoShort Strike; spread strategies.
min_call_strike / max_call_strikenumberNoCall Strike; volatility strategies.
min_put_strike / max_put_strikenumberNoPut Strike; volatility strategies.
min_spread_width / max_spread_widthnumberNoSpread Width; spread strategies.
min_near_dte / max_near_dtenumberNoNear DTE; calendar strategies.
min_far_dte / max_far_dtenumberNoFar DTE; calendar strategies.
min_dte / max_dte, min_oi / max_oi, min_pe / max_pe, min_pop / max_pop, min_pl_percent / max_pl_percentnumberNoCompatibility aliases for days_to_expiration, open_interest, price_to_earnings, delta_pop, and pl; same strategy restrictions and units apply.
sector / industry / country / exchange / indexstringNoComma-separated values to include
exclude_sector / exclude_industry / exclude_country / exclude_exchange / exclude_indexstringNoComma-separated values to exclude
order_bystringNoResponse column used for sorting; defaults to score
order_directionstringNoasc or desc; defaults to desc
pageintegerNoOne-based page number; defaults to 1
page_sizeintegerNoResults per page; defaults to 50 and values above 500 are capped at 500

Response

Successful responses use JSON, with gzip when accepted by the client. Totals up to 1,000 are exact; larger totals are estimates. Continue paging while has_more is true, keeping filters and sorting unchanged.

{
  "success": true,
  "data": [
    {
      "ticker": "AAPL",
      "option_id": "example-contract-id",
      "strategy": "CC",
      "expiration_date": "2026-07-17T00:00:00Z",
      "strike": 210,
      "put_call": "C",
      "bid": 3.10,
      "ask": 3.25,
      "mark": 3.18,
      "iv": 28.5,
      "delta": 0.31,
      "open_interest": 8400,
      "volume": 1250,
      "score": 92
    }
  ],
  "total": 1842,
  "total_is_estimated": true,
  "has_more": true,
  "page": 1,
  "page_size": 500
}
FieldsDescription
tickerUnderlying symbol
option_id / full_contract_nameContract identifiers
strategy / option_legsStrategy code and multi-leg definition when applicable
expiration_date / days_to_expirationExpiration timestamp and DTE
strike / put_callStrike and call/put type
bid / ask / last / markContract pricing
volume / open_interestContract activity and liquidity
iv / delta / gamma / theta / vega / rhoImplied volatility and Greeks
score / liquidity_percentOption Screener ranking metrics
max_profit / max_loss / pl / delta_pop / annualized_returnStrategy risk and return metrics when applicable
stock_price / market_cap / beta / price_to_earningsUnderlying market and fundamental data
sector / industry / country / exchange / indexUnderlying classifications

Examples and Official Clients

The examples retrieve covered-call results for AAPL in expiration order.

curl --compressed \
  -H "X-API-Key: optionscreener_live_YOUR_KEY" \
  "https://option-screener.com/api/getOptionsData?strategy=CC&ticker=AAPL&page=1&page_size=500&order_by=expiration_date&order_direction=asc"

Errors

Error responses use {"success":false,"error":"message"}.

StatusMeaningDescription
400Bad RequestA required parameter is missing or a supplied value is invalid
401UnauthorizedThe API key is missing or invalid
403ForbiddenThe API key is valid but its API entitlement is inactive
429Too Many RequestsThe 60-request rate limit was exceeded
503Service UnavailableUpstream data request failed or timed out; retry the same request
500Internal Server ErrorThe request could not be completed by the service

Ready to get started?

Generate your API key from the Account page and start querying screened data.

Get Your API Key