Showing options chains

When an investor wants to purchase an options contract, typically you'll start by showing a list of possible contracts, organized by expiration date and type (call or put).

Retrieving a chain

Each underlying stock or ETF instrument will have contracts that expire on different expiration dates. Some offer weekly-issued contracts, some monthly-issued, and some even daily.

Use the GET instruments/:instrument_id/options/expiration-dates endpoint to retrieve all expirations dates currently available for a security.

{
    "symbol": AAPL
    "expiration" : {
        "2022-05-10",
        "2022-05-17",
        "2022-05-24",
        "2023-05-31"
    }
}

After you have a date to investigate, use GET /instruments/AAPL/options?expirationDate={2022-05-15} to retrieve all available option contracts for that date.

{
    "symbol" : "AAPL",
    "optionChain": [
        {
            "id" : "2cbd5648-7afa-4347-8c82-743fd74a123a",
            "symbol" : "AAPL220517P00016000",
            "rootSymbol" : AAPL,
            "rootId": "a67422af-8504-43df-9e63-7361eb0bd99e",
            "type" : "OPTION",
            "description" : "AAPL May 17 2022 $16.00 Put"
            "expirationDate" : "2022-05-15",
            "optionType" : "PUT",
            "strikePrice" : "16.00",
            "sharesPerContract" : "100",
            "exchange" : "25",
        },
        ...
    ]
}

Getting prices and details

Once you have an individual option contract's ID, you can get more details about that option using the GET options/:id endpoint.

{
      "id": "2cbd5648-7afa-4347-8c82-743fd74a123a",
      "symbol": "AAPL220517P00016000",
      "rootSymbol": AAPL,
      "rootId":"a67422af-8504-43df-9e63-7361eb0bd99e",
      "type": "OPTION", 
      "orderSizeMax": 10000,
      "orderSizeMin": 1,
      "orderSizeStep": 1,
      "description": "AAPL May 17 2022 $16.00 Put",
      "expirationDate": "2022-05-015",
      "optionType": "PUT",
      "strikePrice": "16.00",
      "sharesPerContract": "100",
      "exchange": "25",
}

You can also retrieve real-time quotes for this contract using the Retrieve Quote (referential feed) API. Learn more in Displaying prices and information.