---
title: "Search Strikes For An Underlier"
method: GET
path: "/iserver/secdef/strikes"
tags: ["tradingContracts"]
---

# Search Strikes For An Underlier

`GET /iserver/secdef/strikes`

Returns lists of valid strikes for options contracts on a given underlier, for all currently trading expirations. The /iserver/secdef/search endpoint must be called prior for the underlying. Otherwise empty arrays will return for "puts" and "calls".

## Query parameters

- `conid` string, required
- `sectype` 'OPT' | 'FOP' | 'WAR', required — Security type of the requested contract of interest. Valid asset classes are: * `FOP` - Futures Option * `OPT` - Option * `WAR` - Warrant
- `month` string, required
- `exchange` string

## Response `200`

Successful response containing a contract's security definition.

- TradingContractsGetContractStrikesResponse200
  - `call` number[] — Array containing a series of comma separated values representing potential call strikes for the instrument.
  - `put` number[] — Array containing a series of comma separated values representing potential put strikes for the instrument.

## Other responses

- `400` — Missing, empty, non-numeric, or out-of-range parameter. The `error` field is always prefixed with `Bad Request:`.
- `401` — Missing, invalid, or unparseable Authorization token.
- `500` — internal server error, returned when incoming request cannot be processed. It can sometimes include subset of bad requests. For example, wrong accountId passed and it can only be detected later in handling request. Error contains reason of the problem.
- `503` — service is unavailable. For example if request takes more than 10s due to some internal service unavailability, request aborted and this status returned

---

[API](https://skmtc.net/interactivebrokers/apis/api-reference.md) · [All operations](https://skmtc.net/interactivebrokers/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/interactivebrokers/api-reference/revisions/67f9f562c2c6/schema)
