Skip to main content
POST
/
rest
/
instruments
Get Instrument Details
curl --request POST \
  --url https://api.exchange.fairx.net/rest/instruments \
  --header 'Content-Type: application/json' \
  --data '
{
  "product_codes": [
    "BIP"
  ],
  "symbols": [
    "BIPZ30",
    "B*"
  ],
  "instrument_ids": [
    1234,
    12345
  ],
  "trading_states": [
    "PRE_OPEN",
    "EXPIRED"
  ],
  "activation_date": "2026-02-12",
  "expiration_date": "2026-02-12"
}
'
[
  {
    "product_id": 409,
    "instrument_id": 410,
    "contract_type": "OUTRIGHT",
    "product_group": "CRYPTO",
    "symbol": "BITN22",
    "product_code": "BIT",
    "trading_state": "OPEN",
    "contract_unit": "Bitcoin",
    "contract_size": 0.01,
    "price_band": 100,
    "price_band_multiplier": 4,
    "price_band_reference_price": 50000.5,
    "max_order_size": 1000,
    "market_order_protection_ticks": 10,
    "short_initial_margin": 5000,
    "long_initial_margin": 5000,
    "price_limit_reference_price": 50000.5,
    "prior_settlement_price": 49500.5,
    "last_end_of_day_settlement_price": 49500.5,
    "low_limit_price": 45000.5,
    "high_limit_price": 55000.5,
    "tick_size": 0.01,
    "activation_time": "2022-06-26T17:50",
    "expiration_time": "2022-07-29T11:00",
    "final_settlement_date": "2022-07-29",
    "first_trading_session_date": "2022-06-26",
    "last_trading_session_date": "2022-07-29",
    "lead_transition_date": "2022-07-01",
    "is_lead": true,
    "is24x7_enabled": true,
    "is_perp": false,
    "fair_value_limit_range": 100,
    "funding_interval_minutes": 10,
    "is_block_eligible": true,
    "block_min_qty": 100,
    "trading_session_date": "2022-07-15",
    "expiry_year": 2022,
    "expiry_month": 7,
    "fml_short_enabled": true,
    "fml_short_back_month_enabled": true,
    "fml_short_lead_month_ticks_threshold": 200,
    "fml_short_back_month_ticks_threshold": 200,
    "fml_short_look_back_ms": 1000,
    "fml_short_pb_multiplier_enabled": true,
    "fml_long_enabled": false,
    "fml_long_back_month_enabled": false,
    "fml_long_lead_month_ticks_threshold": 0,
    "fml_long_back_month_ticks_threshold": 0,
    "fml_long_look_back_ms": 0,
    "fml_long_pb_multiplier_enabled": false,
    "fml_halt_duration": 20000,
    "fml_max_reopen_loops": 3
  }
]

Body

application/json

Optional instrument filter criteria, can be omitted

product_codes
string[]
Example:
["BIP"]
symbols
string[]
Example:
["BIPZ30", "B*"]
instrument_ids
integer<int32>[]
Example:
[1234, 12345]
trading_states
enum<string>[]
Available options:
PRE_OPEN,
OPEN,
HALT,
PAUSE,
CLOSE,
PRE_OPEN_NO_CANCEL,
EXPIRED
Example:
["PRE_OPEN", "EXPIRED"]
activation_date
string<date>
Example:

"2026-02-12"

expiration_date
string<date>
Example:

"2026-02-12"

Response

Successfully retrieved instrument details

product_id
integer<int32>

Unique identifier for the product

Example:

409

instrument_id
integer<int32>

Unique identifier for the instrument

Example:

410

contract_type
enum<string>

Contract type (e.g. OUTRIGHT, SPREAD)

Available options:
OUTRIGHT,
CALENDAR_SPREAD,
OPTION
Example:

"OUTRIGHT"

product_group
enum<string>

Product group classification (e.g. CRYPTO)

Available options:
CURRENCY,
EQUITY,
ENERGY,
METALS,
INTEREST_RATE,
AGRICULTURE,
CRYPTO
Example:

"CRYPTO"

symbol
string

Trading symbol for the instrument

Example:

"BITN22"

product_code
string

Product code identifier

Example:

"BIT"

trading_state
enum<string>

Current trading state of the instrument

Available options:
PRE_OPEN,
OPEN,
HALT,
PAUSE,
CLOSE,
PRE_OPEN_NO_CANCEL,
EXPIRED
Example:

"OPEN"

contract_unit
string

Unit of the contract (e.g. Bitcoin)

Example:

"Bitcoin"

contract_size
number<double>

Size of one contract

Example:

0.01

price_band
integer<int32>

Price band threshold in ticks

Example:

100

price_band_multiplier
integer<int32>

Multiplier applied to the price band threshold

Example:

4

price_band_reference_price
number<double>

Reference price used for price band calculations

Example:

50000.5

max_order_size
integer<int32>

Maximum allowed order size in contracts

Example:

1000

market_order_protection_ticks
integer<int32>

Market order protection limit in ticks

Example:

10

short_initial_margin
integer<int32>

Initial margin requirement for short positions in basis points

Example:

5000

long_initial_margin
integer<int32>

Initial margin requirement for long positions in basis points

Example:

5000

price_limit_reference_price
number<double>

Reference price used for price limit calculations

Example:

50000.5

prior_settlement_price
number<double>

Prior session settlement price

Example:

49500.5

last_end_of_day_settlement_price
number<double>

Last end-of-day settlement price

Example:

49500.5

low_limit_price
number<double>

Lower price limit for the instrument

Example:

45000.5

high_limit_price
number<double>

Upper price limit for the instrument

Example:

55000.5

tick_size
number<double>

Minimum price increment in decimal

Example:

0.01

activation_time
string<date-time>

Time when the instrument becomes active for trading

Example:

"2022-06-26T17:50"

expiration_time
string<date-time>

Time when the instrument expires

Example:

"2022-07-29T11:00"

final_settlement_date
string<date>

Date of final settlement

Example:

"2022-07-29"

first_trading_session_date
string<date>

First date the instrument is available for trading

Example:

"2022-06-26"

last_trading_session_date
string<date>

Last date the instrument is available for trading

Example:

"2022-07-29"

lead_transition_date
string<date>

Date when the instrument transitions to lead month

Example:

"2022-07-01"

is_lead
boolean

Whether this instrument is the lead month contract

Example:

true

is24x7_enabled
boolean

Whether 24x7 trading is enabled

Example:

true

is_perp
boolean

Whether the instrument is a perpetual contract

Example:

false

fair_value_limit_range
integer<int32>

Fair value limit range in ticks

Example:

100

funding_interval_minutes
integer<int32>

Funding interval for perpetual contracts in minutes

Example:

10

is_block_eligible
boolean

Whether the instrument is eligible for block trades

Example:

true

block_min_qty
integer<int32>

Minimum quantity for block trades

Example:

100

trading_session_date
string<date>

Current trading session date

Example:

"2022-07-15"

expiry_year
integer<int32>

Expiry year of the instrument

Example:

2022

expiry_month
integer<int32>

Expiry month of the instrument

Example:

7

fml_short_enabled
boolean

Whether FML short-side monitoring is enabled

Example:

true

fml_short_back_month_enabled
boolean

Whether FML short-side monitoring is enabled for back month contracts

Example:

true

fml_short_lead_month_ticks_threshold
integer<int32>

FML short-side threshold for lead month contracts in ticks

Example:

200

fml_short_back_month_ticks_threshold
integer<int32>

FML short-side threshold for back month contracts in ticks

Example:

200

fml_short_look_back_ms
integer<int32>

FML short-side look-back window in milliseconds

Example:

1000

fml_short_pb_multiplier_enabled
boolean

Whether the price band multiplier is applied to FML short-side thresholds

Example:

true

fml_long_enabled
boolean

Whether FML long-side monitoring is enabled

Example:

false

fml_long_back_month_enabled
boolean

Whether FML long-side monitoring is enabled for back month contracts

Example:

false

fml_long_lead_month_ticks_threshold
integer<int32>

FML long-side threshold for lead month contracts in ticks

Example:

0

fml_long_back_month_ticks_threshold
integer<int32>

FML long-side threshold for back month contracts in ticks

Example:

0

fml_long_look_back_ms
integer<int32>

FML long-side look-back window in milliseconds

Example:

0

fml_long_pb_multiplier_enabled
boolean

Whether the price band multiplier is applied to FML long-side thresholds

Example:

false

fml_halt_duration
integer<int32>

Duration of an FML halt in milliseconds

Example:

20000

fml_max_reopen_loops
integer<int32>

Maximum number of FML reopen attempts

Example:

3