Get Equity Option
getInstrumentsEquityOptionsSymbol/instruments/equity-options/{symbol}Base URL: https://api.cert.tastyworks.com (Sandbox) · https://api.tastyworks.com (Production)
Returns a single equity option instrument for the given symbol in OCC symbology (e.g. `SPY 230731C00393000`). Remember to URL-encode the embedded spaces.
Code samples
curl -X GET 'https://api.cert.tastyworks.com/instruments/equity-options/FB 180629C00200000?active=true' \
-H 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
-H 'User-Agent: tastytrade-docs-example/1.0'import requests
url = "https://api.cert.tastyworks.com/instruments/equity-options/FB 180629C00200000?active=true"
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"User-Agent": "tastytrade-docs-example/1.0",
}
resp = requests.get(url, headers=headers)
print(resp.status_code, resp.json())const resp = await fetch("https://api.cert.tastyworks.com/instruments/equity-options/FB 180629C00200000?active=true", {
method: "GET",
headers: {
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"User-Agent": "tastytrade-docs-example/1.0",
},
})
const data = await resp.json()
console.log(resp.status, data)package main
import (
"net/http"
"io"
"fmt"
)
func main() {
req, _ := http.NewRequest("GET", "https://api.cert.tastyworks.com/instruments/equity-options/FB 180629C00200000?active=true", nil)
req.Header.Set("Authorization", "Bearer YOUR_ACCESS_TOKEN")
req.Header.Set("User-Agent", "tastytrade-docs-example/1.0")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
out, _ := io.ReadAll(resp.Body)
fmt.Println(resp.Status, string(out))
}import java.net.URI;
import java.net.http.*;
HttpClient client = HttpClient.newHttpClient();
HttpRequest req = HttpRequest.newBuilder()
.uri(URI.create("https://api.cert.tastyworks.com/instruments/equity-options/FB 180629C00200000?active=true"))
.header("Authorization", "Bearer YOUR_ACCESS_TOKEN")
.header("User-Agent", "tastytrade-docs-example/1.0")
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> resp = client.send(req, HttpResponse.BodyHandlers.ofString());
System.out.println(resp.statusCode() + " " + resp.body());Parameters
| Name | In | Type | Description |
|---|---|---|---|
| symbol* | path | string | The symbol of the equity option using OCC Symbology, i.e. `FB 180629C00200000` e.g. "FB 180629C00200000" |
| active | query | boolean | Whether an option is available for trading with the broker.
Terminology is somewhat misleading as this is generally used to filter non-standard / flex options out. e.g. true |
Responses
Example response
{
"data": {
"active": true,
"days-to-expiration": 1,
"exercise-style": "American",
"expiration-date": "2023-07-31",
"expiration-type": "Weekly",
"expires-at": "2023-07-31T20:15:00.000+00:00",
"halted-at": "2024-01-15T14:30:00.000Z",
"instrument-type": "Equity Option",
"is-closing-only": false,
"listed-market": "string",
"market-time-instrument-collection": "string",
"old-security-number": "string",
"option-chain-type": "Standard",
"option-type": "C",
"root-symbol": "SPY",
"settlement-type": "PM",
"shares-per-contract": 100,
"stops-trading-at": "2023-07-31T20:15:00.000+00:00",
"streamer-symbol": ".SPY230731C393",
"strike-price": "393.0",
"symbol": "SPY 230731C00393000",
"underlying-symbol": "SPY"
},
"context": "/instruments/equity-options/{symbol}"
}Schema
datarequiredobject (EquityOption)An equity option contract identified by its OCC symbol (e.g. `SPY 230731C00393000`).
activebooleanWhether the option is currently available for trading with the broker.
example:
truedays-to-expirationinteger <int32>Number of days remaining until the option expires.
example:
1exercise-stylestringExercise style of the option, e.g. `American` or `European`.
example:
"American"expiration-datestring <date>Calendar date on which the option expires (ISO-8601).
example:
"2023-07-31"expiration-typestringExpiration classification, e.g. `Regular`, `Weekly`, or `Quarterly`.
example:
"Weekly"expires-atstring <date-time>Exact timestamp at which the option expires (ISO-8601).
example:
"2023-07-31T20:15:00.000+00:00"halted-atstring <date-time>instrument-typestringInstrument type discriminator; always `Equity Option` for this model.
example:
"Equity Option"is-closing-onlybooleanWhether the option is restricted to closing transactions only.
example:
falselisted-marketstringmarket-time-instrument-collectionstringold-security-numberstringoption-chain-typestringType of option chain the contract belongs to, e.g. `Standard`.
example:
"Standard"option-typestringWhether the option is a call (`C`) or a put (`P`).
example:
"C"root-symbolstringRoot symbol of the option, typically the underlying ticker.
example:
"SPY"settlement-typestringSettlement type, e.g. `PM` or `AM`.
example:
"PM"shares-per-contractinteger <int32>Number of underlying shares deliverable per contract.
example:
100stops-trading-atstring <date-time>Timestamp at which the option stops trading (ISO-8601).
example:
"2023-07-31T20:15:00.000+00:00"streamer-symbolstringSymbol used to subscribe to market data on the DXLink streamer.
example:
".SPY230731C393"strike-pricestring <decimal>Strike price of the option. Decimal value serialized as a JSON string (e.g. "150.25").
example:
"393.0"symbolstringThe equity option symbol in OCC format.
example:
"SPY 230731C00393000"underlying-symbolstringTicker symbol of the underlying equity.
example:
"SPY"
contextrequiredstringexample:
"/instruments/equity-options/{symbol}"
Example response
{
"error": {
"code": "unauthorized",
"message": "No valid access token was provided; access tokens expire after 15 minutes."
}
}Schema
errorrequiredobjectcoderequiredstringMachine-readable error code (see the Error reference).
messagerequiredstringHuman-readable explanation.
errorsarray<object>{3 fields}Present for multi-error / validation failures; one entry per problem.
Example response
{
"error": {
"code": "string",
"message": "string",
"errors": [
{
"code": "string",
"message": "string",
"domain": "string"
}
]
}
}Schema
errorrequiredobjectcoderequiredstringMachine-readable error code (see the Error reference).
messagerequiredstringHuman-readable explanation.
errorsarray<object>{3 fields}Present for multi-error / validation failures; one entry per problem.
Example response
{
"error": {
"code": "string",
"message": "string",
"errors": [
{
"code": "string",
"message": "string",
"domain": "string"
}
]
}
}Schema
errorrequiredobjectcoderequiredstringMachine-readable error code (see the Error reference).
messagerequiredstringHuman-readable explanation.
errorsarray<object>{3 fields}Present for multi-error / validation failures; one entry per problem.
Related
- Rate-limit class:
read· idempotent — Rate limits & backoff - Error reference — codes, causes, and fixes
Agents: this page is also Markdown (with the embedded OpenAPI definition) — append .md or send Accept: text/markdown. Index at /llms.txt.