optioncharts.io APIoptioncharts.io ↗
Access options chains, Greeks, expiration dates, flow data, and market trends for any ticker via the OptionCharts.io API. 7 endpoints, no scraping required.
curl -X GET 'https://api.parse.bot/scraper/9dc19de8-1782-4128-af13-1d0465e91e59/get_option_chain?ticker=SPY&expiration=Mar+20%2C+2026+%28w%29&option_type=both' \ -H 'X-API-Key: $PARSE_API_KEY'
Returns the full options chain (calls and puts) for a ticker symbol. Uses the nearest expiration date by default unless a specific expiration is provided. Results include strike price, bid/ask/mid prices, volume, open interest, implied volatility, and Greeks (Delta, Gamma, Theta, Vega).
| Param | Type | Description |
|---|---|---|
| tickerrequired | string | Stock ticker symbol (e.g., AAPL, SPY) |
| expiration | string | Expiration date to filter by, as shown in get_expiration_dates results |
| option_type | string | Option type filter: 'calls', 'puts', or 'both' |
{
"type": "object",
"fields": {
"data": "array of option contract objects with Strike, Last Price, Bid, Mid, Ask, Volume, Open Interest, Implied Volatility, Delta, Gamma, Theta, Vega",
"status": "string indicating success"
},
"sample": {
"data": [
{
"Ask": "20.50",
"Bid": "19.85",
"Mid": "20.18",
"Vega": "0.35",
"Delta": "0.55",
"Gamma": "0.0120",
"Theta": "-0.15",
"Strike": "280.00",
"Volume": "1,234",
"Last Price": "20.50",
"Open Interest": "5,678",
"Implied Volatility": "25.50%"
}
],
"status": "success"
}
}About the optioncharts.io API
The OptionCharts.io API exposes 7 endpoints covering options chains, expiration summaries, large-trade flow, and market activity for any US equity ticker. The get_option_chain endpoint returns per-strike contract data including bid, ask, mid, volume, open interest, implied volatility, and all four Greeks — Delta, Gamma, Theta, and Vega — for calls, puts, or both. Companion endpoints handle expiration-date discovery, ticker search, and cross-market flow monitoring.
Options Chain and Contract Data
The get_option_chain endpoint takes a ticker (required) and accepts optional expiration and option_type filters. When no expiration is provided, the nearest available date is used. Each contract object in the response includes Strike, Last Price, Bid, Mid, Ask, Volume, Open Interest, Implied Volatility, Delta, Gamma, Theta, and Vega. get_call_options_by_strike returns the same field set filtered to calls only, useful when you want to skip the option_type parameter in your request logic.
Expiration Dates and Summary Statistics
get_expiration_dates returns every available expiration for a ticker along with aggregate statistics per date: Volume Calls, Volume Puts, Volume Put-Call Ratio, Open Interest Calls, Open Interest Puts, Implied Volatility, Expected Move, and Max Pain. The expiration strings returned here are the correct format to pass back into get_option_chain or get_call_options_by_strike as the expiration parameter.
Market-Wide Activity and Flow
get_most_active_by_ticker returns a ranked list of symbols by total option volume across the market, including Call Volume, Put Volume, Volume Put-Call Ratio, and Avg Daily Volume %. The get_options_flow endpoint surfaces the largest individual trades across all tickers, with each record including Symbol, Contract, Type, Sentiment, Total Value, Total Size, Avg Price, and Underlying Price at Execution. These two endpoints require no input parameters.
Ticker Lookup and Overview
search_ticker accepts a free-text term — either a symbol fragment or company name — and returns matching symbol and name pairs. get_ticker_overview returns the company name, ticker, and current price for a given symbol, which is useful for confirming instrument identity before pulling chain data.
- Build an options screener that filters contracts by implied volatility and open interest using
get_option_chainresponse fields - Track max pain and expected move across all upcoming expirations using
get_expiration_datesaggregate statistics - Monitor unusual options activity by polling
get_options_flowfor large trades with sentiment labels - Identify the most traded tickers in the options market using
get_most_active_by_tickerput-call ratios and volume data - Resolve company names to ticker symbols before fetching chain data using
search_ticker - Display a ticker summary card with current price alongside Greeks from the nearest expiration chain
- Calculate put-call skew by comparing call and put volumes per expiration date returned by
get_expiration_dates
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does OptionCharts.io have an official developer API?+
What Greeks does `get_option_chain` return, and are they available for both calls and puts?+
option_type to 'calls', 'puts', or 'both' controls which side of the chain is included; the Greek fields are present regardless of which type is requested.What does `get_options_flow` include, and how does it differ from `get_most_active_by_ticker`?+
get_options_flow returns individual large trades with fields like Contract, Sentiment, Total Value, Total Size, and Underlying Price at Execution — it is trade-level data. get_most_active_by_ticker aggregates volume at the ticker level, showing which symbols are seeing the most options activity overall. Neither endpoint requires any input parameters.Can I filter options flow by ticker symbol or by a minimum trade size?+
get_options_flow currently returns the full cross-market flow feed with no ticker or size filter parameters. The API covers the fields needed to filter client-side: Symbol, Total Value, and Total Size are all present in each response record. You can fork this API on Parse and revise it to add server-side filter parameters for those fields.