Deribit Matching Engine API is one of 19 APIs that Deribit publishes on the APIs.io network, described by a machine-readable OpenAPI specification.
Tagged areas include Matching Engine. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, authentication docs, and rate-limit docs.
This API exposes
23 operations
across 23 paths,
and defines 80 schemas.
It is described by OpenAPI 3.0.0, at version 2.1.1.
Requests are made against a single base URL, https://test.deribit.com/api/v2.
The identity and technical contract details declared by the specification.
order_state_in_user_trade
string
Order state: "open", "filled", "rejected", "cancelled", "untriggered" or "archive" (if order was archived)
trigger_offset
number
The maximum deviation from the price peak beyond which the order will be triggered (Only for trailing trigger orders)
api
boolean
true if created with API
trigger
string
Trigger type (only for trigger orders). Allowed values: "indexprice", "markprice", "lastprice".
combo_id
string
Unique combo identifier
block_trade_id
string
Block trade id
contracts
number
It represents the order size in contract units. (Optional, may be absent in historical data).
kind_with_combo_all
string
Instrument kind: "future", "option", "spot", "futurecombo", "optioncombo", "combo" for any combo or "any" for all
order_type
string
Order type: "limit", "market", "stoplimit", "stopmarket", "takelimit", "takemarket", "trailingstop"
reduce_only
boolean
Optional (not added for spot). 'true for reduce-only orders only'
position_move
object
1 property
1 required
combo_state
string
Combo state: "active", "inactive"
price
number
Price in base currency
trigger_reference_price
number
The price of the given trigger at the time when the order was placed (Only for trailing trigger orders)
display_amount
number
The actual display amount of iceberg order. Absent for other types of orders.
PrivateGetBlockTradeResponse
object
3 properties
2 required
filled_amount
number
Filled amount of the order. For perpetual and futures the filledamount is in USD units, for options - in units or corresponding cryptocurrency contracts, e.g.,…
block_trade_id_in_result
string
Block trade id - when trade was part of a block trade
PrivatePositionMoveResponse
object
3 properties
2 required
PrivateBuyAndSellResponse
object
3 properties
2 required
is_secondary_oto
boolean
true if the order is an order that can be triggered by another order, otherwise not present.
PrivateCancelAllResponse
object
3 properties
2 required
trade_id
string
Unique (per currency) trade identifier
cancel_reason
string
Enumerated reason behind cancel "userrequest", "autoliquidation", "cancelondisconnect", "riskmitigation", "pmeriskreduction" (portfolio margining risk reductio…
PrivateCancelQuotesResponse
object
3 properties
2 required
timestamp
integer
The timestamp (milliseconds since the Unix epoch)
instrument_id
integer
Instrument ID
currency
string
Currency, i.e "BTC", "ETH", "USDC"
order
object
52 properties
12 required
amount
number
It represents the requested order size. For perpetual and inverse futures the amount is in USD units. For options and linear futures it is the underlying base…
PrivateMassQuoteResponse
object
3 properties
2 required
index_name_derivative
string
Index identifier of derivative instrument on the platform
direction
string
Direction: buy, or sell
block_trade
object
6 properties
3 required
PrivateCancelResponse
object
3 properties
2 required
advanced
string
advanced type: "usd" or "implv" (Only for options; field is omitted if not applicable).
web
boolean
true if created via Deribit frontend (optional)
PrivateGetMmpStatusResponse
object
3 properties
2 required
position_move_trade
object
6 properties
4 required
block_trade_signature
string
Signature of block trade It is valid only for 5 minutes around given timestamp
instrument_name
string
Unique instrument identifier
PrivateSimulateBlockTradeResponse
object
3 properties
2 required
block_trade_order
boolean
true if order made from blocktrade trade, added only in that case.
user_trade
object
38 properties
15 required
original_order_type
string
Original order type. Optional field
combo_leg
object
2 properties
average_price
number
Average fill price of the order
usd
number
Option price in USD (Only if advanced="usd")
PrivateCreateComboResponse
object
3 properties
2 required
implv
number
Implied volatility in percent. (Only if advanced="implv")
label_presentation
string
User defined label (presented only when previously set for order by user)
simple_order_type
string
Order type: "all", "limit", "stop", "take", "trailingstop", "trailingtake"
combo_leg_amount
integer
Size multiplier of a leg. A negative value indicates that the trades on given leg are in opposite direction to the combo trades they originate from
tick_direction
integer
Direction of the "tick" (0 = Plus Tick, 1 = Zero-Plus Tick, 2 = Minus Tick, 3 = Zero-Minus Tick).
trigger_price
number
Trigger price (Only for future trigger orders)
profit_loss
number
Profit and loss in base currency.
reject_post_only
boolean
true if order has rejectpostonly flag (field is present only when postonly is true)
oco_ref
string
Unique reference that identifies a onecancelsothers (OCO) pair.
trade_timestamp
integer
The timestamp of the trade (milliseconds since the UNIX epoch)
PrivateVerifyBlockTradeResponse
object
3 properties
2 required
mobile
boolean
Optional field with value true added only when created with Mobile Application
order_id
string
Unique order identifier
trigger_fill_condition
string
The fill condition of the linked order (Only for linked order types), default: firsthit. "firsthit" - any execution of the primary order will fully cancel/plac…
PrivateGetMmpConfigResponse
object
3 properties
2 required
time_in_force
string
Order time in force: "goodtilcancelled", "goodtilday", "fillorkill" or "immediateorcancel"
trade_seq
integer
The sequence number of the trade within instrument
index_name
string
Index identifier, matches (base) cryptocurrency with quote currency
PrivateSetMmpConfigResponse
object
3 properties
2 required
refresh_amount
number
The initial display amount of iceberg order. Iceberg order display amount will be refreshed to that value after match consuming actual display amount. Absent f…
PrivateEditResponse
object
3 properties
2 required
combo
object
6 properties
OkResponse
object
3 properties
2 required
post_only
boolean
true for post-only orders only
currency_with_any_and_list
The currency symbol, list of currency symbols or "any" for all
label
string
User defined label (up to 64 characters)
role
string
Trade role of the user: maker or taker
open_order_price
Price in base currency or "marketprice" in case of open trigger market orders
order_state
string
Order state: "open", "filled", "rejected", "cancelled", "untriggered"
triggered
boolean
Whether the trigger order has been triggered
The full machine-readable OpenAPI contract behind this narrative.
Other APIs Deribit publishes across the network.