Contracts
Look up options contracts in bulk or fetch a single contract by its options ticker. Results include contract type, exercise style, expiration, strike, and related reference fields.
Example Endpoint
/v1/options/contracts/?underlying_ticker=NFLX&limit=10Related guides: OCC Option Symbol Format Explained and Option Expiration Date Filters
Endpoints
GET /v1/options/contracts
GET /v1/options/contracts/{options_ticker}
List contracts
Returns a reference index of options contracts. You can scan the full universe or narrow results with filters (underlying, expiration, strike, contract type, and more). By default, expired contracts are excluded. A single contract is loaded with GET /v1/options/contracts/{options_ticker}/. The list URL does not accept a ticker query parameter (requests that include it receive 400).
Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
underlying_ticker | string | No | Limit to contracts for this underlying equity ticker (for example NFLX). |
contract_type | string | No | Filter by contract type (for example call or put). |
expiration_date | string | No | Filter by expiration, format YYYY-MM-DD. |
as_of | string | No | Treat contracts as of this calendar date, format YYYY-MM-DD. Defaults to today when omitted. |
strike_price | number | No | Filter by exact strike price. |
expired | boolean | No | Include expired contracts when true. Default is false. |
underlying_ticker.gte | string | No | Range filter: underlying ticker greater than or equal. |
underlying_ticker.gt | string | No | Range filter: underlying ticker greater than. |
underlying_ticker.lte | string | No | Range filter: underlying ticker less than or equal. |
underlying_ticker.lt | string | No | Range filter: underlying ticker less than. |
expiration_date.gte | string | No | Range filter: expiration on or after this date (YYYY-MM-DD). |
expiration_date.gt | string | No | Range filter: expiration after this date. |
expiration_date.lte | string | No | Range filter: expiration on or before this date. |
expiration_date.lt | string | No | Range filter: expiration before this date. |
strike_price.gte | number | No | Range filter: strike greater than or equal. |
strike_price.gt | number | No | Range filter: strike greater than. |
strike_price.lte | number | No | Range filter: strike less than or equal. |
strike_price.lt | number | No | Range filter: strike less than. |
sort | string | No | Field name used for ordering. |
order | string | No | Sort direction for the sort field. |
limit | integer | No | Maximum number of results per request. Default is 10, maximum is 1000. |
page | string | No | Pagination continuation. When next_url is present, request that full URL (recommended), or call this endpoint with the page query string from next_url. |
Pagination
Use limit (up to 1000) together with sort, order, and filters such as expiration or strike ranges to narrow results. When more rows exist, the response includes next_url: a complete URL for the next page. Request it with the same API key and repeat until next_url is absent.
Response (list)
| Field | Type | Description |
|---|---|---|
status | string | Outcome of the request (for example OK). |
request_id | string | Identifier for this request (assigned by CuteMarkets). |
results | array | Contract objects matching the query. |
next_url | string | Present when another page of results exists. Full URL for the next request. |
Each element of results may include:
| Field | Type | Description |
|---|---|---|
ticker | string | Options contract ticker. |
underlying_ticker | string | Underlying symbol. |
contract_type | string | Typically call, put, or rarely other. |
exercise_style | string | One of american, european, or bermudan. |
expiration_date | string | Expiration date, YYYY-MM-DD. |
strike_price | number | Strike price. |
shares_per_contract | number | Contract size in shares. |
primary_exchange | string | MIC code of the primary listing exchange. |
cfi | string | Six-letter CFI code (ISO 10962). |
correction | integer | Correction number for this contract record, when present. |
additional_underlyings | array | Optional deliverables or extra underlyings (for example after corporate actions). Objects may include underlying, type, and amount. |
Example request (list)
curl \
"https://api.cutemarkets.com/v1/options/contracts/?underlying_ticker=NFLX&limit=10" \
-H "Authorization: Bearer YOUR_API_KEY"
Sample response (list)
{
"results": [
{
"cfi": "OCASPS",
"contract_type": "call",
"exercise_style": "american",
"expiration_date": "2026-04-02",
"primary_exchange": "BATO",
"shares_per_contract": 100,
"strike_price": 40,
"ticker": "O:NFLX260402C00040000",
"underlying_ticker": "NFLX"
},
{
"cfi": "OCASPS",
"contract_type": "call",
"exercise_style": "american",
"expiration_date": "2026-04-02",
"primary_exchange": "BATO",
"shares_per_contract": 100,
"strike_price": 45,
"ticker": "O:NFLX260402C00045000",
"underlying_ticker": "NFLX"
}
],
"status": "OK",
"request_id": "cm_6e2beadb22f8498885af015fde6bfab2"
}
Contract detail
Returns reference data for one options contract: type (call/put), exercise style, expiration, strike, shares per contract, underlying symbol, primary exchange, and related metadata. Use it to confirm contract specifications, align chain or strategy logic, or integrate contract definitions into tooling.
Example Endpoint
/v1/options/contracts/O:NFLX260402C00075000/Endpoint
GET /v1/options/contracts/{options_ticker}
Path parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
options_ticker | string | Yes | Options contract ticker in full form (for example O:NFLX260402C00075000). The path segment is the contract identifier; it is not repeated as a query parameter. |
Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
as_of | string | No | Return the contract as it was defined on this calendar date, format YYYY-MM-DD. When omitted, defaults to today. |
Response (detail)
| Field | Type | Description |
|---|---|---|
status | string | Outcome of the request (for example OK). |
request_id | string | Unique identifier for this request, assigned by CuteMarkets. |
results | object | The contract record for the requested ticker. |
Fields on results:
| Field | Type | Description |
|---|---|---|
ticker | string | Options contract ticker. |
underlying_ticker | string | Underlying equity symbol. |
contract_type | string | Typically call, put, or rarely other. |
exercise_style | string | One of american, european, or bermudan. |
expiration_date | string | Expiration date, YYYY-MM-DD. |
strike_price | number | Strike price. |
shares_per_contract | number | Shares represented per contract. |
primary_exchange | string | MIC code of the primary listing exchange. |
cfi | string | Six-letter CFI code (ISO 10962). |
correction | integer | Correction revision for this contract record, when present. |
additional_underlyings | array | Optional. Extra deliverables or underlyings (for example after splits or mergers). Objects may include underlying, type, and amount. See the Options Industry Council FAQ on corporate actions for context. |
Example request (detail)
curl \
"https://api.cutemarkets.com/v1/options/contracts/O:NFLX260402C00075000/" \
-H "Authorization: Bearer YOUR_API_KEY"
Optional historical as-of:
curl \
"https://api.cutemarkets.com/v1/options/contracts/O:NFLX260402C00075000/?as_of=2026-01-15" \
-H "Authorization: Bearer YOUR_API_KEY"
Sample response (detail)
{
"results": {
"cfi": "OCASPS",
"contract_type": "call",
"exercise_style": "american",
"expiration_date": "2026-04-02",
"primary_exchange": "BATO",
"shares_per_contract": 100,
"strike_price": 75,
"ticker": "O:NFLX260402C00075000",
"underlying_ticker": "NFLX"
},
"status": "OK",
"request_id": "cm_dae7973c238245a5bf0525814f03e3aa"
}
Some contracts include additional_underlyings when deliverables are not a single equity only, for example after mergers or spinoffs:
{
"results": {
"additional_underlyings": [
{ "amount": 44, "type": "equity", "underlying": "VMW" },
{ "amount": 6.53, "type": "currency", "underlying": "USD" }
],
"cfi": "OCASPS",
"contract_type": "call",
"exercise_style": "american",
"expiration_date": "2021-11-19",
"primary_exchange": "BATO",
"shares_per_contract": 100,
"strike_price": 85,
"ticker": "O:AAPL211119C00085000",
"underlying_ticker": "AAPL"
},
"status": "OK",
"request_id": "cm_9f3e2d1c0b4a5e6d7c8b9a0f1e2d3c4b"
}