New and existing clients get up to $1,000 bonus at Questrade. New clients use code GET1000. Learn more.

(opens in a new tab)

Documentation

The Questrade API allows developers to create their own fully featured trading and analytical applications through their brokerage account.

GET markets/quotes/options

Retrieves a single Level 1 market data quote and Greek data for one or more option symbols.

Request parameters

Request parameters
ParameterfiltersTypeComplexDescriptionInput array of OptionIdFilter structures
ParameteridsTypeInteger[ ]DescriptionInput array of option IDs.

OptionIdFilter

Option filters based on underlying Ids

OptionIdFilter
NameoptionTypeTypeEnumerationDefaultDescriptionOption type
NameunderlyingIdTypeIntegerDefaultDescriptionUnderlying ID
NameexpiryDateTypeDateTimeDefaultDescriptionExpiry date
NameminstrikePriceTypeDoubleDefault0DescriptionMin strike price
NamemaxstrikePriceTypeDoubleDefault0DescriptionMax strike price

Response properties

Response properties
PropertyquotesTypeComplexDescriptionList of Level1OptionData records.
PropertyLevel1OptionDataTypeComplexDescription
PropertyunderlyingTypeStringDescriptionUnderlying name
PropertyunderlyingIdTypeIntegerDescriptionUnderlying ID
PropertysymbolTypeStringDescriptionSymbol name
PropertysymbolIdTypeIntegerDescriptionSymbol ID
PropertybidPriceTypeDoubleDescriptionBid price
PropertybidSizeTypeIntegerDescriptionBid size
PropertyaskPriceTypeDoubleDescriptionAsk price
PropertyaskSizeTypeIntegerDescriptionAsk size
PropertylastTradePriceTrHrsTypeDoubleDescriptionLast trade price trade hours
PropertylastTradePriceTypeDoubleDescriptionLast trade price
PropertylastTradeSizeTypeIntegerDescriptionLast trade size
PropertylastTradeTickTypeEnumerationDescriptionLast trade tick
PropertylastTradeTimeTypeDateTimeDescriptionLast trade time
PropertyvolumeTypeIntegerDescriptionVolume
PropertyopenPriceTypeDoubleDescriptionOpen price
PropertyhighPriceTypeDoubleDescriptionHigh price
PropertylowPriceTypeDoubleDescriptionLow price
PropertyvolatilityTypeDoubleDescriptionVolatility
PropertydeltaTypeDoubleDescriptionDelta
PropertygammaTypeDoubleDescriptionGamma
PropertythetaTypeDoubleDescriptionTheta
PropertyvegaTypeDoubleDescriptionVega
PropertyrhoTypeDoubleDescriptionRho
PropertyopenInterestTypeIntegerDescriptionOpen interest
PropertydelayTypeIntegerDescriptionHow much is data delayed
PropertyisHaltedTypeBooleanDescriptionWhether or not the symbol was halted
PropertyVWAPTypeDoubleDescriptionVolume Weighted Average Price

The underlyingId and expiryDate fields are required in filters. Other fields are optional (if you need multiple expiries, specify multiple filters). You can specify an OptionIds and/or a filters vectors in any given request.

Sample request

HTTP
POST https://api01.iq.questrade.com/v1/markets/quotes/options
{
    “filters”: [
        {
             “optionType”: ”Call”,
             “underlyingId”: 27426,
             “expiryDate”: ”2017-01-20T00:00:00.000000-05:00”,
             “minstrikePrice”: 70,
             “maxstrikePrice”: 80
        },
              ...
      ],
      “optionIds”:
             [
              9907637,
              9907638,
                  ...
         ]
  }

Sample response

JSON
{
    “optionQuotes”: [
        {
            “underlying”: ”MSFT”,
            “underlyingId”: 27426,
            “symbol”: ”MSFT20Jan17C70.00”,
            “symbolId”: 7413503,
            “bidPrice”: 4.90,
            “bidSize”: 0,
            “askPrice”: 4.95,
            “askSize”: 0,
            “lastTradePriceTrHrs”: 4.93,
            “lastTradePrice”: 4.93,
            “lastTradeSize”: 0,
            “lastTradeTick”: ”Equal”,
            “lastTradeTime”: ”2015-08-17T00:00:00.000000-04:00”,
            “volume”: 0.
            “openPrice”: 0,
            “highPricehighPrice”: 4.93,
            “lowPrice”: 0,
            “volatility”: 52.374257,
            “delta”: 0.06985,
            “gamma”: 0.01038,
            “theta”: -0.001406,
            “vega”: 0.074554,
            “rho”: 0.04153,
            “openInterest”: 2292,
            “delay”: 0,
           “isHalted”: false,
           “VWAP”: 0
        },
             ...
     ]

 }

Already a Questrade client?

Create your first application using your Questrade account.

Integrate your application with Questrade API

Support

Report an issue

Have questions about Questrade's API? Tell us how we can help, send us an email.

Request a feature

We want your ideas on how we can improve our API. If you have a suggestion for a minor tweak, a major overhaul, or something brand new, please share it with us.

If you are using an api app developed by a third party, you are required to read, understand and accept the end-user license agreement for application program interface. If you are utilizing api access for an api-enabled app you built, you are required to read, understand and accept the Questrade personal application program interface ("api") license agreement ("license agreement"). This agreement can be found below. You may be bound by both agreements.

See All