---
title: "The trade tape for one option contract by its OCC symbol, active or expired, newest first: time, price, size, exchange and condition. A cancelled print stays in the tape with `cancelled: true`, so read volume from the bars rather than a sum of prints. Defaults to the last 4 days; `startDate` and `endDate` set another window, and history begins in early 2024. When `truncated` is true, pass the oldest row's `time` as `endTime` to continue. Plus receives trades 15 minutes after they print. The Free plan covers end-of-day data only and receives 403. US listings only."
method: GET
path: "/v1/securities/{ticker}/options/contract/trades"
tags: ["Options"]
---

# The trade tape for one option contract by its OCC symbol, active or expired, newest first: time, price, size, exchange and condition. A cancelled print stays in the tape with \`cancelled: true\`, so read volume from the bars rather than a sum of prints. Defaults to the last 4 days; \`startDate\` and \`endDate\` set another window, and history begins in early 2024. When \`truncated\` is true, pass the oldest row's \`time\` as \`endTime\` to continue. Plus receives trades 15 minutes after they print. The Free plan covers end-of-day data only and receives 403. US listings only.

`GET /v1/securities/{ticker}/options/contract/trades`

## Request

- Base URL: `https://api.equibles.com`
- URL: `https://api.equibles.com/v1/securities/{ticker}/options/contract/trades`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/equibles/apis/equibles-api/docs/v1/securities/:ticker/options/contract/trades/get.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `ticker` string, required

## Query parameters

- `symbol` string
- `startDate` string
- `endDate` string
- `endTime` string
- `limit` integer

## Response `200`

OK

- OptionTradesResponse
  - `ticker` string, nullable
  - `startDate` string, date
  - `endDate` string, date
  - `returned` integer
  - `truncated` boolean: True when older trades exist in the window; pass the oldest row's `time` as `endTime` to continue.
  - `delayed` boolean: True on Plus, where trades younger than 15 minutes are withheld.
  - `contract` OptionContractReferenceDto
    - `occTicker` string, nullable
    - `contractType` string, nullable
    - `exerciseStyle` string, nullable
    - `strikePrice` number, double
    - `expirationDate` string, date
    - `sharesPerContract` integer
    - `active` boolean: False once the contract has expired or been retired.
    - `openInterest` integer, nullable
    - `openInterestDate` string, date, nullable
    - `lastClose` number, double, nullable
    - `lastCloseDate` string, date, nullable
  - `trades` OptionTradeDto[], nullable
    - `time` string, date-time: Source timestamp of the trade in UTC.
    - `price` number, double, nullable
    - `size` integer, nullable
    - `exchange` string, nullable: The exchange that reported the trade, or null when the source did not name it.
    - `condition` string, nullable: The source's trade condition, or null when it could not be named.
    - `cancelled` boolean, nullable: True when the print was cancelled, so read volume from the bars rather than a sum of prints. Null when the condition is not one the source lists.

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `404`: Not Found
- `503`: Service Unavailable

## Changes

- **2026-11-06** `666e06778588`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/equibles/apis/equibles-api/changes/v1/securities/:ticker/options/contract/trades/get.md)

---

[API](https://skmtc.dev/equibles/apis/equibles-api.md) - [All operations](https://skmtc.dev/equibles/apis/equibles-api/llms.txt) - [OpenAPI document](https://skmtc.dev/equibles/apis/equibles-api/revisions/713a3e840323?raw)
