Skip to content
Start Trading

Instruments

Retrieve core details and discovery endpoints for tradable instruments.

Get Instruments
$ clst v1:instruments get-instruments
GET/v1/instruments
Get Instrument By ID
$ clst v1:instruments get-instrument-by-id
GET/v1/instruments/{instrument_id}
Search Instruments
$ clst v1:instruments search-instruments
GET/v1/instruments/search
Get Option Contracts
$ clst v1:instruments get-option-contracts
GET/v1/instruments/options/contracts
ModelsExpand Collapse
contract_type: "CALL" or "PUT"

The type of options contract

"CALL"
"PUT"
exercise_style: "AMERICAN" or "EUROPEAN"

The exercise style of an options contract

"AMERICAN"
"EUROPEAN"
instrument: object { id, country_of_issue, currency, 21 more }

Represents a tradable financial instrument.

id: string

Unique instrument identifier (UUID)

country_of_issue: string

The ISO country code of the instrument’s issue

currency: string

The ISO currency code in which the instrument is traded

easy_to_borrow: boolean

Indicates if the instrument is classified as Easy-To-Borrow

is_fractionable: boolean

Indicates if the instrument supports fractional-quantity orders

is_liquidation_only: boolean

Indicates if the instrument is liquidation only and cannot be bought

is_marginable: boolean

Indicates if the instrument is marginable

is_ptp: boolean

Indicates if the instrument is a publicly traded partnership (PTP). PTP sales are subject to a 10% withholding tax for non-US tax residents.

is_short_prohibited: boolean

Indicates if short selling is prohibited for the instrument. This is a standing property of the security. For the live Rule 201 circuit breaker, see short_sale_restricted on the market-data snapshot.

is_threshold_security: boolean

Indicates if the instrument is on the Regulation SHO Threshold Security List

is_tradable: boolean

Indicates if the instrument is tradable

symbol: string

The trading symbol for the instrument

venue: string

The MIC code of the primary listing venue

adv: optional string

Average daily share volume from the security definition. When a null/undefined value is observed, it indicates that there is no available data.

cax_adjusted_previous_close: optional string

Corporate-action-adjusted last close; present only when an adjustment exists for the previous_close date. When a null/undefined value is observed, it indicates that there is no available data.

instrument_type: optional "COMMON_STOCK" or "INDEX" or "OPTION" or "CASH"

The type of security (e.g., Common Stock, ETF) When a null/undefined value is observed, it indicates that there is no available data.

"COMMON_STOCK"
"INDEX"
"OPTION"
"CASH"
long_margin_rate: optional string

The percent of a long position’s value you must post as margin When a null/undefined value is observed, it indicates that there is no available data.

name: optional string

The full name of the instrument or its issuer When a null/undefined value is observed, it indicates that there is no available data.

notional_adv: optional string

Notional average daily volume (ADV multiplied by the cax-adjusted close when present, the raw previous close otherwise). When a null/undefined value is observed, it indicates that there is no available data.

options_contract_expiry_dates: optional array of OptionExpiryDate { date, has_settles_on_close, has_settles_on_open }

Available options expiration dates for this instrument, each annotated with which settlement cycles have listed contracts on it. Present only when include_options_expiry_dates=true in the request. When a null/undefined value is observed, it indicates it does not apply.

date: string

The expiration date.

has_settles_on_close: boolean

Whether this date has at least one listed contract that settles at the close (PM settlement) — the standard cycle.

has_settles_on_open: boolean

Whether this date has at least one contract that settles on the opening print (AM settlement) and can still be traded. AM-settled contracts stop trading at the close of the business day before settlement, so this turns false before the expiration date arrives. A date leaves the list once no contract on it can be traded in either settlement cycle.

Deprecatedoptions_expiry_dates: optional array of string

Available options expiration dates for this instrument. Present only when include_options_expiry_dates=true in the request.

Deprecated: use options_contract_expiry_dates, which carries the same dates annotated with settlement-cycle information. When a null/undefined value is observed, it indicates it does not apply.

previous_close: optional string

Last close price from the security definition. When a null/undefined value is observed, it indicates that there is no available data.

short_margin_rate: optional string

The percent of a short position’s value you must post as margin When a null/undefined value is observed, it indicates that there is no available data.

tick_rules: optional array of TickRule { start_price, tick_size, end_price }

Price bands this instrument quotes on, ascending. Absent when we have no schedule for it, which includes an option whose penny-program status our reference data never supplied.

start_price: string

Lowest price in the band, inclusive.

tick_size: string

Minimum price increment within the band.

end_price: optional string

Upper bound of the band, exclusive. Absent on the last band, which runs to infinity. When a null/undefined value is observed, it indicates it does not apply.

instrument_core: object { id, country_of_issue, currency, 19 more }
id: string

Unique instrument identifier (UUID)

country_of_issue: string

The ISO country code of the instrument’s issue

currency: string

The ISO currency code in which the instrument is traded

easy_to_borrow: boolean

Indicates if the instrument is classified as Easy-To-Borrow

is_fractionable: boolean

Indicates if the instrument supports fractional-quantity orders

is_liquidation_only: boolean

Indicates if the instrument is liquidation only and cannot be bought

is_marginable: boolean

Indicates if the instrument is marginable

is_ptp: boolean

Indicates if the instrument is a publicly traded partnership (PTP). PTP sales are subject to a 10% withholding tax for non-US tax residents.

is_short_prohibited: boolean

Indicates if short selling is prohibited for the instrument. This is a standing property of the security. For the live Rule 201 circuit breaker, see short_sale_restricted on the market-data snapshot.

is_threshold_security: boolean

Indicates if the instrument is on the Regulation SHO Threshold Security List

is_tradable: boolean

Indicates if the instrument is tradable

symbol: string

The trading symbol for the instrument

venue: string

The MIC code of the primary listing venue

adv: optional string

Average daily share volume from the security definition. When a null/undefined value is observed, it indicates that there is no available data.

cax_adjusted_previous_close: optional string

Corporate-action-adjusted last close; present only when an adjustment exists for the previous_close date. When a null/undefined value is observed, it indicates that there is no available data.

instrument_type: optional "COMMON_STOCK" or "INDEX" or "OPTION" or "CASH"

The type of security (e.g., Common Stock, ETF) When a null/undefined value is observed, it indicates that there is no available data.

"COMMON_STOCK"
"INDEX"
"OPTION"
"CASH"
long_margin_rate: optional string

The percent of a long position’s value you must post as margin When a null/undefined value is observed, it indicates that there is no available data.

name: optional string

The full name of the instrument or its issuer When a null/undefined value is observed, it indicates that there is no available data.

notional_adv: optional string

Notional average daily volume (ADV multiplied by the cax-adjusted close when present, the raw previous close otherwise). When a null/undefined value is observed, it indicates that there is no available data.

previous_close: optional string

Last close price from the security definition. When a null/undefined value is observed, it indicates that there is no available data.

short_margin_rate: optional string

The percent of a short position’s value you must post as margin When a null/undefined value is observed, it indicates that there is no available data.

tick_rules: optional array of TickRule { start_price, tick_size, end_price }

Price bands this instrument quotes on, ascending. Absent when we have no schedule for it, which includes an option whose penny-program status our reference data never supplied.

start_price: string

Lowest price in the band, inclusive.

tick_size: string

Minimum price increment within the band.

end_price: optional string

Upper bound of the band, exclusive. Absent on the last band, which runs to infinity. When a null/undefined value is observed, it indicates it does not apply.

instrument_core_list: array of InstrumentCore { id, country_of_issue, currency, 19 more }
id: string

Unique instrument identifier (UUID)

country_of_issue: string

The ISO country code of the instrument’s issue

currency: string

The ISO currency code in which the instrument is traded

easy_to_borrow: boolean

Indicates if the instrument is classified as Easy-To-Borrow

is_fractionable: boolean

Indicates if the instrument supports fractional-quantity orders

is_liquidation_only: boolean

Indicates if the instrument is liquidation only and cannot be bought

is_marginable: boolean

Indicates if the instrument is marginable

is_ptp: boolean

Indicates if the instrument is a publicly traded partnership (PTP). PTP sales are subject to a 10% withholding tax for non-US tax residents.

is_short_prohibited: boolean

Indicates if short selling is prohibited for the instrument. This is a standing property of the security. For the live Rule 201 circuit breaker, see short_sale_restricted on the market-data snapshot.

is_threshold_security: boolean

Indicates if the instrument is on the Regulation SHO Threshold Security List

is_tradable: boolean

Indicates if the instrument is tradable

symbol: string

The trading symbol for the instrument

venue: string

The MIC code of the primary listing venue

adv: optional string

Average daily share volume from the security definition. When a null/undefined value is observed, it indicates that there is no available data.

cax_adjusted_previous_close: optional string

Corporate-action-adjusted last close; present only when an adjustment exists for the previous_close date. When a null/undefined value is observed, it indicates that there is no available data.

instrument_type: optional "COMMON_STOCK" or "INDEX" or "OPTION" or "CASH"

The type of security (e.g., Common Stock, ETF) When a null/undefined value is observed, it indicates that there is no available data.

"COMMON_STOCK"
"INDEX"
"OPTION"
"CASH"
long_margin_rate: optional string

The percent of a long position’s value you must post as margin When a null/undefined value is observed, it indicates that there is no available data.

name: optional string

The full name of the instrument or its issuer When a null/undefined value is observed, it indicates that there is no available data.

notional_adv: optional string

Notional average daily volume (ADV multiplied by the cax-adjusted close when present, the raw previous close otherwise). When a null/undefined value is observed, it indicates that there is no available data.

previous_close: optional string

Last close price from the security definition. When a null/undefined value is observed, it indicates that there is no available data.

short_margin_rate: optional string

The percent of a short position’s value you must post as margin When a null/undefined value is observed, it indicates that there is no available data.

tick_rules: optional array of TickRule { start_price, tick_size, end_price }

Price bands this instrument quotes on, ascending. Absent when we have no schedule for it, which includes an option whose penny-program status our reference data never supplied.

start_price: string

Lowest price in the band, inclusive.

tick_size: string

Minimum price increment within the band.

end_price: optional string

Upper bound of the band, exclusive. Absent on the last band, which runs to infinity. When a null/undefined value is observed, it indicates it does not apply.

listing_type: "STANDARD" or "FLEX" or "OTC"

The listing type of an options contract

"STANDARD"
"FLEX"
"OTC"
option_expiry_date: object { date, has_settles_on_close, has_settles_on_open }

An options expiry date, annotated with which settlement cycles have listed contracts on it.

date: string

The expiration date.

has_settles_on_close: boolean

Whether this date has at least one listed contract that settles at the close (PM settlement) — the standard cycle.

has_settles_on_open: boolean

Whether this date has at least one contract that settles on the opening print (AM settlement) and can still be traded. AM-settled contracts stop trading at the close of the business day before settlement, so this turns false before the expiration date arrives. A date leaves the list once no contract on it can be traded in either settlement cycle.

options_contract: object { id, contract_type, currency, 15 more }

An options contract with options-specific metadata

id: string

Instrument identifier

contract_type: "CALL" or "PUT"

Whether this is a CALL or PUT

"CALL"
"PUT"
currency: string

ISO currency code

exchange: string

MIC code of the primary listing venue

exercise_style: "AMERICAN" or "EUROPEAN"

Exercise style

"AMERICAN"
"EUROPEAN"
expiry: string

Expiration date

is_liquidation_only: boolean

Whether the contract is liquidation-only

is_marginable: boolean

Whether the contract is marginable

is_tradable: boolean

Whether the contract is tradable

listing_type: "STANDARD" or "FLEX" or "OTC"

Listing type

"STANDARD"
"FLEX"
"OTC"
multiplier: string

Contract multiplier (100 for standard options)

strike_price: string

Strike price

symbol: string

OSI symbol (e.g. “AAPL 251219C00150000”)

is_settle_on_open: optional boolean

Whether the option settles on the opening price (AM settlement), if known When a null/undefined value is observed, it indicates that there is no available data.

last_trade_cutoff: optional string

Last moment the option can trade (UTC), if known When a null/undefined value is observed, it indicates that there is no available data.

open_interest: optional number

Open interest (number of outstanding contracts), if available When a null/undefined value is observed, it indicates that there is no available data.

tick_rules: optional array of TickRule { start_price, tick_size, end_price }

Price bands this contract quotes on, ascending. Absent when our reference data never supplied the contract’s penny-program status.

start_price: string

Lowest price in the band, inclusive.

tick_size: string

Minimum price increment within the band.

end_price: optional string

Upper bound of the band, exclusive. Absent on the last band, which runs to infinity. When a null/undefined value is observed, it indicates it does not apply.

underlying_instrument_id: optional string

Instrument ID of the underlying instrument, when available When a null/undefined value is observed, it indicates that there is no available data.

options_contract_list: array of OptionsContract { id, contract_type, currency, 15 more }
id: string

Instrument identifier

contract_type: "CALL" or "PUT"

Whether this is a CALL or PUT

"CALL"
"PUT"
currency: string

ISO currency code

exchange: string

MIC code of the primary listing venue

exercise_style: "AMERICAN" or "EUROPEAN"

Exercise style

"AMERICAN"
"EUROPEAN"
expiry: string

Expiration date

is_liquidation_only: boolean

Whether the contract is liquidation-only

is_marginable: boolean

Whether the contract is marginable

is_tradable: boolean

Whether the contract is tradable

listing_type: "STANDARD" or "FLEX" or "OTC"

Listing type

"STANDARD"
"FLEX"
"OTC"
multiplier: string

Contract multiplier (100 for standard options)

strike_price: string

Strike price

symbol: string

OSI symbol (e.g. “AAPL 251219C00150000”)

is_settle_on_open: optional boolean

Whether the option settles on the opening price (AM settlement), if known When a null/undefined value is observed, it indicates that there is no available data.

last_trade_cutoff: optional string

Last moment the option can trade (UTC), if known When a null/undefined value is observed, it indicates that there is no available data.

open_interest: optional number

Open interest (number of outstanding contracts), if available When a null/undefined value is observed, it indicates that there is no available data.

tick_rules: optional array of TickRule { start_price, tick_size, end_price }

Price bands this contract quotes on, ascending. Absent when our reference data never supplied the contract’s penny-program status.

start_price: string

Lowest price in the band, inclusive.

tick_size: string

Minimum price increment within the band.

end_price: optional string

Upper bound of the band, exclusive. Absent on the last band, which runs to infinity. When a null/undefined value is observed, it indicates it does not apply.

underlying_instrument_id: optional string

Instrument ID of the underlying instrument, when available When a null/undefined value is observed, it indicates that there is no available data.

tick_rule: object { start_price, tick_size, end_price }

One band of an instrument’s tick schedule. A price in the band is valid only if it is a whole multiple of tick_size. Bands describe the instrument itself: on an equity they say nothing about that equity’s option chain.

start_price: string

Lowest price in the band, inclusive.

tick_size: string

Minimum price increment within the band.

end_price: optional string

Upper bound of the band, exclusive. Absent on the last band, which runs to infinity. When a null/undefined value is observed, it indicates it does not apply.