list_options
Retrieve available option contracts for a specified symbol using filters for expiration dates, option type, and strike price range to identify specific trading instruments.
Instructions
List available options. Retrieve list of available option contracts for a given symbol. Supports optional filtering by expiration date range and option type. Use the /v3/symbols/quotes endpoint with the returned option codes to get last price and volume (e.g., codes=OPRA:AAPL270617C230.0,OPRA:AAPL270617C260.0, up to 10 codes per request). → Returns {last_update: number, last_price?: number, codes: string[]}. Supports optional filters: expiration_min, expiration_max, type (call/put), range (strike % around last_price). last_price is included when range is provided. Next: use get_options_expiration (filter by date) or get_options_strike (filter by strike) to get chain with Greeks. To get last price and volume of specific option contracts, use get_quotes with the option codes (e.g., codes=OPRA:AAPL270617C230.0,OPRA:AAPL270617C260.0, up to 10 codes).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | (Required) Symbol code in Exchange:Symbol format (e.g., NASDAQ:AAPL). Use search_symbols to find the correct code. | |
| expiration_min | No | (Optional) Minimum expiration date filter. Only return options expiring on or after this date. | |
| expiration_max | No | (Optional) Maximum expiration date filter. Only return options expiring on or before this date. | |
| type | No | (Optional) Filter by option type. | |
| range | No | (Optional) Strike price range as a percentage of the current underlying price. For example, range=10 returns only options with strikes within ±10% of the current price. | |
| filter | No | (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.org for syntax. |