Twelve Data makes it simple and intuitive to access the options data for the US symbols. Both sides: call and put are supported.

Step 1. Select option expiration dates

/options/expiration endpoint returns a listing of all available option expiration dates for a specific symbol. Here is an example for AAPL:

https://api.twelvedata.com/options/expiration?symbol=AAPL&apikey=your_api_key

{

"meta": {

"symbol": "AAPL",

"name": "Apple Inc",

"currency": "USD",

"exchange": "NASDAQ",

"exchange_timezone": "America/New_York"

},

"dates": [

"2021-11-05",

"2021-11-12",

"2021-11-19",

"2021-11-26",

"2021-12-03",

"2021-12-10",

"2021-12-17",

"2022-01-21",

"2022-02-18",

"2022-03-18",

"2022-04-14",

"2022-05-20",

"2022-06-17",

"2022-09-16",

"2023-01-20",

"2023-03-17",

"2023-06-16",

"2023-09-15",

"2024-01-19"

]

}

Step 2. Get the contract information

Once the expiration dates are known, it's time to request the contract information. /options/chain endpoint requires expiration_date or option_id (if known) parameters.

The output shows all listed puts, calls, their expiration, strike prices, and pricing information for a single underlying asset within a given maturity period.

https://api.twelvedata.com/options/chain?symbol=AAPL&expiration_date=2022-05-20&apikey=your_api_key

The output has been truncated for demonstrations purposes.

{

"meta": {

"symbol": "AAPL",

"name": "Apple Inc",

"currency": "USD",

"exchange": "NASDAQ",

"exchange_timezone": "America/New_York"

},

"calls": [

{

"contract_name": "AAPL Option Call 20-05-2022 150",

"option_id": "AAPL220520C00150000",

"last_trade_date": "2021-10-29 15:51:56",

"strike": 150,

"last_price": 12.2,

"bid": 0,

"ask": 0,

"change": 0,

"percent_change": 0,

"volume": 1179,

"open_interest": 0,

"implied_volatility": 0.0004982763671875,

"in_the_money": false

}

],

"puts": [

{

"contract_name": "AAPL Option Put 20-05-2022 140",

"option_id": "AAPL220520P00140000",

"last_trade_date": "2021-10-29 15:29:24",

"strike": 140,

"last_price": 8.02,

"bid": 0,

"ask": 0,

"change": 0,

"percent_change": 0,

"volume": 426,

"open_interest": 0,

"implied_volatility": 0.015634843750000002,

"in_the_money": false

}

]

}

Options are available starting with the Pro plan and can be accessed only via API.

Relevant documentation

Did this answer your question?