Instruments Metadata API
Tick sizes, contract multipliers, base/quote currencies and expiration dates
Authorization
Single instrument info endpoint
endpoint URL format
example URLs
response format
{
id: string // symbol id
datasetId?: string // id used for CSV datasets downloads, may differ from id
exchange: string // exchange id
baseCurrency: string // normalized, so for example bitmex XBTUSD has base currency set to BTC not XBT
quoteCurrency: string // normalized, so for example bitfinex BTCUST has quote currency set to USDT, not UST
type: 'spot' | 'perpetual' | 'future' | 'option' | 'combo'
contractType?: "move" | "linear_future" | "inverse_future" | "quanto_future" | "linear_perpetual" | "inverse_perpetual" | "quanto_perpetual" | "put_option" | "call_option" | "turbo_put_option" | "turbo_call_option" | "spread" | "interest_rate_swap" | "repo" | "index" // only for derivatives, detailed contract type
active: boolean // indicates if the instrument can currently be traded
availableSince: string // Tardis data collection start date in ISO format, may differ from exchange listing date
availableTo?: string // date in ISO format
listing?: string // exchange listing date in ISO format, if known
expiry?: string // in ISO format, only for futures and options
expirationType?: 'daily' | 'weekly' | 'next_week' | 'quarter' | 'next_quarter' // expiration schedule type
underlyingIndex?: string // the underlying index for derivatives
priceIncrement: number // price tick size, price precision can be calculated from it
amountIncrement: number // amount tick size, amount/size precision can be calculated from it
minTradeAmount: number // min order size
minNotional?: number // minimum notional value
makerFee: number // consider it as illustrative only, as it depends in practice on account traded volume levels, different categories, VIP levels, owning exchange currency etc
takerFee: number // consider it as illustrative only, as it depends in practice on account traded volume levels, different categories, VIP levels, owning exchange currency etc
inverse?: boolean // only for derivatives
contractMultiplier?: number // only for derivatives
quanto?: boolean // set to true for quanto instruments, otherwise undefined
settlementCurrency?: string // settlement currency, only for quanto instruments as it has different base/quote currency
strikePrice?: number // strike price, only for options
optionType?: 'call' | 'put' // option type, only for options
marginMode?: 'isolated' | 'cross' // margin mode
margin?: boolean // whether margin trading is supported (spot)
aliasFor?: string // if this instrument is an alias for another
changes?: {
until: string // date in ISO format
priceIncrement?: number
amountIncrement?: number
contractMultiplier?: number
minTradeAmount?: number
makerFee?: number
takerFee?: number
quanto?: boolean
inverse?: boolean
settlementCurrency?: string
underlyingIndex?: string
contractType?: ContractType
quoteCurrency?: string
type?: string
}[]
}
// where ContractType is one of:
type ContractType =
| "move" | "linear_future" | "inverse_future" | "quanto_future"
| "linear_perpetual" | "inverse_perpetual" | "quanto_perpetual"
| "put_option" | "call_option" | "turbo_put_option" | "turbo_call_option"
| "spread" | "interest_rate_swap" | "repo" | "index"sample response
Instruments filter endpoint
endpoint URL
example URLs
optional filter object format
sample request in JavaScript
response format
Last updated
Was this helpful?