Get Future
getInstrumentsFuturesSymbol/instruments/futures/{symbol}Base URL: https://api.cert.tastyworks.com (Sandbox) · https://api.tastyworks.com (Production)
Returns a single outright future for the given symbol (e.g. `/ESU3`). The leading forward slash is optional; URL-encode it (`%2F`) when present in the path.
Code samples
curl -X GET 'https://api.cert.tastyworks.com/instruments/futures/ESZ9' \
-H 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
-H 'User-Agent: tastytrade-docs-example/1.0'import requests
url = "https://api.cert.tastyworks.com/instruments/futures/ESZ9"
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/futures/ESZ9", {
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/futures/ESZ9", 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/futures/ESZ9"))
.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 future, i.e. `ESZ9`. Leading forward slash is not required. e.g. "ESZ9" |
Responses
Example response
{
"data": {
"active": true,
"active-month": true,
"back-month-first-calendar-symbol": true,
"closing-only-date": "2024-01-15",
"contract-size": "50.0",
"display-factor": "0.01",
"exchange": "CME",
"exchange-data": {},
"expiration-date": "2023-09-15",
"expires-at": "2023-09-15T13:30:00.000+00:00",
"first-notice-date": "2024-01-15",
"product-group": "CME_ES",
"is-closing-only": false,
"last-trade-date": "2023-09-15",
"main-fraction": "string",
"next-active-month": false,
"notional-multiplier": "50.0",
"product-code": "ES",
"roll-target-symbol": "/ESZ3",
"security-id": "abc123",
"stops-trading-at": "2023-09-15T13:30:00.000+00:00",
"streamer-exchange-code": "XCME",
"streamer-symbol": "/ESU23:XCME",
"sub-fraction": "string",
"symbol": "/ESU3",
"tick-size": "0.25",
"is-tradeable": true,
"true-underlying-symbol": "AAPL",
"future-etf-equivalent": {
"share-quantity": 100,
"symbol": "AAPL"
},
"future-product": {
"active-months": "string",
"back-month-first-calendar-symbol": true,
"base-tick": 0,
"cash-settled": true,
"code": "string",
"contract-limit": 0,
"description": "string",
"display-factor": "string",
"exchange": "string",
"first-notice": true,
"listed-months": "string",
"market-sector": "string",
"notional-multiplier": "string",
"price-format": "100.00",
"product-subtype": "string",
"product-type": "string",
"security-group": "string",
"small-notional": true,
"streamer-exchange-code": "string",
"sub-tick": 0,
"supported": true,
"root-symbol": "AAPL",
"tick-size": "string",
"true-underlying-code": "string",
"underlying-description": "string",
"underlying-identifier": "string"
},
"option-tick-sizes": [
{
"value": "0.05",
"threshold": "5.0"
},
{
"value": "0.25"
}
],
"spread-tick-sizes": [
{
"value": "0.05",
"symbol": "/ESH4"
},
{
"value": "0.05",
"symbol": "/ESZ3"
}
],
"tick-sizes": [
{
"value": "0.25"
}
]
},
"context": "/instruments/futures/{symbol}"
}Schema
datarequiredobject (Future)An outright futures contract (e.g. `/ESU3`). Includes the associated product metadata nested under `future-product`.
activebooleanWhether the contract is currently active.
example:
trueactive-monthbooleanWhether this contract is in the currently active (front) month.
example:
trueback-month-first-calendar-symbolbooleanclosing-only-datestring <date>contract-sizestring <decimal>Size of the contract in underlying units. Decimal value serialized as a JSON string (e.g. "150.25").
example:
"50.0"display-factorstring <decimal>Factor applied to convert raw prices to display prices. Decimal value serialized as a JSON string (e.g. "150.25").
example:
"0.01"exchangestringExchange on which the future trades.
example:
"CME"exchange-dataobjectexpiration-datestring <date>Calendar date on which the contract expires (ISO-8601).
example:
"2023-09-15"expires-atstring <date-time>Exact timestamp at which the contract expires (ISO-8601).
example:
"2023-09-15T13:30:00.000+00:00"first-notice-datestring <date>product-groupstringInternal grouping identifier for the product.
example:
"CME_ES"is-closing-onlybooleanWhether the contract is restricted to closing transactions only.
example:
falselast-trade-datestring <date>Last date on which the contract may be traded (ISO-8601).
example:
"2023-09-15"main-fractionstring <decimal>Decimal value serialized as a JSON string (e.g. "150.25").
next-active-monthbooleanWhether this contract is the next active month.
example:
falsenotional-multiplierstring <decimal>Multiplier used to compute notional value from price. Decimal value serialized as a JSON string (e.g. "150.25").
example:
"50.0"product-codestringProduct code of the future (e.g. `ES`).
example:
"ES"roll-target-symbolstringSymbol of the contract this one rolls into.
example:
"/ESZ3"security-idstringstops-trading-atstring <date-time>Timestamp at which the contract stops trading (ISO-8601).
example:
"2023-09-15T13:30:00.000+00:00"streamer-exchange-codestringExchange code used by the DXLink streamer.
example:
"XCME"streamer-symbolstringSymbol used to subscribe to market data on the DXLink streamer.
example:
"/ESU23:XCME"sub-fractionstring <decimal>Decimal value serialized as a JSON string (e.g. "150.25").
symbolstringThe future contract symbol, beginning with a forward slash (e.g. `/ESU3`).
example:
"/ESU3"tick-sizestring <decimal>Minimum price increment for the contract. Decimal value serialized as a JSON string (e.g. "150.25").
example:
"0.25"is-tradeablebooleanWhether the contract is currently tradeable.
example:
truetrue-underlying-symbolstringfuture-etf-equivalentobject{2 fields}future-productobject{26 fields}option-tick-sizesarray<object>{3 fields}Tick sizes for options on the contract.
example:
[{"value":"0.05","threshold":"5.0"},{"value":"0.25"}]spread-tick-sizesarray<object>{3 fields}Tick sizes for spreads on the contract; entries may be scoped to a `symbol`.
example:
[{"value":"0.05","symbol":"/ESH4"},{"value":"0.05","symbol":"/ESZ3"}]tick-sizesarray<object>{3 fields}Tick sizes for the contract.
example:
[{"value":"0.25"}]
contextrequiredstringexample:
"/instruments/futures/{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.