Skip to main content

Get Instrument Info

API Description

This interface allows querying the basic information for all instruments listed on the exchange, including leverages, margins, stop loss rate, take profit rate, maker/taker fee, settlement rate, maximum position size, etc. Users can also query the basic information for a specific instrument by specifying its name.

Note: Instrument Info is only available via RESTful API.

Precautions

  1. This interface supports querying information for either a specific or all available instruments. The "name" parameter is optional; if not specified, the response will include information for all instruments.

Authentication

This is a public interface and does not require authentication. For details on using the RESTful API, please refer to Introduction > Authentication & Code Snippet > Futures > RESTful Public Interface.

Request Method

GET

Endpoint

/v1/perpum/instruments

Frequency Limit

The frequency limit for this interface is 5 requests/s per user ID and IP. In addition to this per-interface limit, a global rate limit is also enforced.

For detailed information on Global rate limits and API Rate Limiting Policy, please refer to the "Frequency Limit" section at click here

Request Parameters

ParameterMandatoryTypeDescription
namefalseStringThe base currency of the instrument. (e.g., BTC or btc). This parameter is case-insensitive.
Note: For instruments that start with numbers (e.g., 1000PEPE), both uppercase and lowercase formats are valid.
If this parameter is not specified, the response will include data for all instruments.

Response Parameters

ParameterTypeDescription
baseStringBase currency of the instrument e.g., BTC, ETH.
defaultLeverageIntegerDefault leverage assigned to the instrument.
defaultStopLossRateBigDecimalDefault stop loss rate
defaultStopProfitRateBigDecimalDefault take profit rate
indexIdIntegerIndex ID
leverageStringAvailable leverage options
makerFeeBigDecimalMaker fee
maxLeverageIntegerMaximum leverage allowed
minLeverageIntegerMinimum leverage allowed
maxPositionBigDecimalMaximum position size allowed.
minSizeBigDecimalMinimum order quantity in contracts.
nameStringName of the base currency (e.g., BTC, ETH).
oneLotMarginBigDecimalMargin required per lot.
oneMaxPositionBigDecimalMaximum position size per lot.
pricePrecisionIntegerNumber of decimal places for price precision (e.g., 2 for 0.01).
quoteStringQuote currency of the instrument (e.g., USDT).
settledAtLongSettlement timestamp
settlementRateBigDecimalOvernight fee rate
statusStringThe current status of the instrument:
offline: Not available for trading.
online: Active and tradable.
pretest: Pre-testing phase.
settlement: In settlement process.
preOffline: Pre-Ofline phase.
takerFeeBigDecimalTaker fee
stopCrossPositionRateIntegerCross margin risk rate.
stopSurplusRateIntegerMinimum remaining margin ratio.
updatedDateBigDecimalTimestamp of the last update.
sortIntegerSorting number
selectedIntegerDefault selection status (0: No, 1: Yes).
openSpreadBigDecimalOpening spread
oneLotSizeBigDecimalMinimum contract size (equivalent to Base-size "contract value" on the web interface)
-marginsBigDecimalList of margin tiers with corresponding deposits required.
-simulatedMarginsBigDecimalSimulated margins (can be ignored)
closeSpreadBigDecimalClosing spread
partitionIdsStringIDs for innovative zones (can be ignored)
commissionRateBigDecimalCommission rate
depthPrecisionStringDepth aggregation precision (can be ignored)
idIntegerContract ID
iconUrlStringIcon URL
createdDateLongLauncing Date
settledPeriodIntegerSettelment period

Request Example

The following Python code shows how to get the instrument information for BTC.

Note: For a complete code example, please refer to Introduction > Authentication & Code Snippet > Futures > RESTful Public Interface.

api_url = "/v1/perpum/instruments"
params = {
"name": "BTC"
}
FuturesRestfulPublic(api_url, params) #function FuturesRestfulPublic() is defined in section (Introduction > Authentication & Code Snippet > Futures > RESTful Public Interface)

Note: For a complete Java code example, please refer to Introduction > Authentication & Code Snippet > Futures > RESTful Public Interface.

Response Example

The following is an example response returned by the above Python request:

{'code': 0,
'data': [{'base': 'btc',
'closeSpread': 0.0002,
'commissionRate': 0.0006,
'configBo': {'margins': {'100': 0.075,
'5': 0.00375,
'50': 0.0375,
'20': 0.015,
'10': 0.0075},
'simulatedMargins': {'5': 0.00375, '20': 0.015, '10': 0.0075}},
'createdDate': 1548950400000,
'defaultLeverage': 20,
'defaultStopLossRate': 0.99,
'defaultStopProfitRate': 100,
'depthPrecision': '0.1,1,10,50,100',
'iconUrl': 'https://hkto-prod.oss-accelerate.aliyuncs.com/201810020046047_T9g8i.png',
'id': 1,
'indexId': 1,
'leverage': [5, 10, 20, 50, 100, 125, 200],
'makerFee': '0.0001',
'maxLeverage': 200,
'maxPosition': 20000,
'minLeverage': 1,
'minSize': 1,
'name': 'BTC',
'oneLotMargin': 1,
'oneLotSize': 0.001,
'oneMaxPosition': 15000,
'openSpread': 0.0003,
'partitionIds': '2013,2011',
'pricePrecision': 1,
'quote': 'usdt',
'selected': 0,
'settledAt': 1740124800000,
'settledPeriod': 8,
'settlementRate': 0.0004,
'sort': 1,
'status': 'online',
'stopCrossPositionRate': 0.1,
'stopSurplusRate': 0.01,
'takerFee': '0.0006',
'updatedDate': 1731394149000}],
'msg': ''}