The Expiries API returns the list of available expiry dates for an exchange + underlying, in ISO (YYYY-MM-DD) format. It lets you populate an expiry selector without fetching a full option chain — pass any returned date straight into the Option Chain API as the expiry parameter.
GET <Base URL>/market-data/1.0/watchlist/expiries?underlying=<underlying>&exchange=<exchange_segment>[&instrument_type=<type>]
Replace <Base URL> with the relevant Kotak environment base URL provided in response from the /tradeApiValidate API.
Key points about endpoint structure:
underlying and exchange are mandatory; instrument_type is optional.underlying: use pSymbolName from the instrument/scrip master file (e.g. NIFTY, RELIANCE).exchange are (string):
nse_fo (NSE F&O)bse_fo (BSE F&O)mcx_fo (MCX F&O)instrument_type (optional): option (default) or fut.| Name | Type | Description |
|---|---|---|
| Authorization | string | Token provided in your NEO API dashboard - use plain token |
| Content-Type | string | application/json |
Example Request:
curl --location --request GET '<Base URL>/market-data/1.0/watchlist/expiries?underlying=NIFTY&exchange=nse_fo' \
--header 'Content-Type: application/json' \
--header 'Authorization: xxxxx-your-api-token-xxxx'
Example Request (with optional instrument_type):
curl --location --request GET '<Base URL>/market-data/1.0/watchlist/expiries?underlying=CRUDEOIL&exchange=mcx_fo&instrument_type=fut' \
--header 'Content-Type: application/json' \
--header 'Authorization: xxxxx-your-api-token-xxxx'