GET/v1/options/quotes/{optionSymbol}
Get single option contract quote
Returns option pricing, Greeks, volume, and open interest for an OCC contract symbol.
Endpoint Usage & Plan Rules
Plan Access
Included in Basic
Active subscription
Result Clamping
Not Clamped
Full response returned
Parameters
Required Parameters
| Name | Type | Location | Description |
|---|---|---|---|
| optionSymbol | string | path | Full OCC option contract symbol. Missing symbol returns 400 missing_symbol. |
Request Examples
curl -s -H "Authorization: Bearer $WSO_API_KEY" \
"https://api.wheelstrategyoptions.com/v1/options/quotes/SPY270917C00800000"Try it
GET/v1/options/quotes/{optionSymbol}
Included in BasicAdd your API key to send.
Response
Send a request to see the live response, its status, timing, and rate-limit headers.
Response Attributes (200 OK)
| Field | Type | Nullable | Description |
|---|---|---|---|
| optionSymbol | string | No | Standard OCC option symbology (e.g. `SPY270917C00800000`). |
| underlying | string | No | Underlying equity ticker symbol. |
| expiration | string | No | Contract expiration date in YYYY-MM-DD format. |
| strike | number | No | Option strike price in USD. |
| side | string | No | Contract side ('call' or 'put'). |
| bid | number | Yes | Best bid price in USD. |
| ask | number | Yes | Best ask price in USD. |
| mid | number | Yes | Midpoint between bid and ask in USD. |
| last | number | Yes | Last traded contract price in USD. |
| volume | integer | Yes | Total trading volume in contracts during the current trading session. |
| openInterest | integer | Yes | Total open interest contracts from previous market session settlement. |
| iv | number | Yes | Implied volatility expressed as a percentage (e.g. 28.5% is returned as 28.5). |
| delta | number | Yes | Option delta sensitivity (-1.0 to 1.0). |
| gamma | number | Yes | Option gamma sensitivity. |
| theta | number | Yes | Option theta sensitivity representing expected 1-day premium decay in USD. |
| vega | number | Yes | Option vega sensitivity representing premium change per 1% move in implied volatility. |
| rho | number | Yes | Option rho sensitivity. |
| underlyingPrice | number | Yes | Underlying equity spot price in USD at the time of quote calculation. |
| spreadPercent | number | Yes | Bid-ask spread expressed as percentage of midpoint: (ask - bid) / mid * 100 without ABS; null when ask < bid (inverted market). |
| dte | integer | No | Days to expiration calculated relative to current calendar date. |
| asOf | string | Yes | ISO 8601 UTC timestamp of contract quote calculation. |
Response Example
json
{
"optionSymbol": "AAPL261009C00110000",
"underlying": "AAPL",
"expiration": "2026-10-09",
"strike": 110,
"side": "call",
"bid": 228.75,
"ask": 231.55,
"mid": 230.15,
"last": 224.9,
"volume": 0,
"openInterest": 1,
"iv": 383.07,
"delta": 1,
"gamma": 0,
"theta": 0,
"vega": 0,
"rho": 0.003015,
"underlyingPrice": 340.6,
"spreadPercent": 1.22,
"dte": 0,
"asOf": "2026-10-09T00:15:46.697984Z"
}Error Responses
| Status | Description |
|---|---|
| 400 | Bad Request. The request body, query parameters, or path values violated validation constraints. |
| 401 | Unauthorized. Missing, malformed, or invalid API key credential. |
| 403 | Forbidden. Rejection reasons: `subscription_required` (no subscription record), `subscription_inactive` (subscription not active), `trial_ended` (trial has expired), `wrong_credential_type`, `origin_forbidden` (origin authentication failed). |
| 404 | Not Found. Requested resource, ticker symbol, or option contract does not exist. |
| 405 | Method Not Allowed. Returned with an `Allow` header when an unsupported HTTP method is used. Error code: `method_not_allowed`. (HEAD is served on all GET routes and counts against the rate limit like GET.) |
| 429 | Too Many Requests. Rejection reasons: `rate_limited` (per-minute limit), `too_many_concurrent_requests` (in-flight cap), `too_many_auth_failures`. |
| 500 | Internal Server Error. Unhandled internal server or database error. |
| 503 | Service Unavailable. Backing database, cache, or external provider connection unavailable. |