How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Deribit Trading API

The Trading API from Deribit — 38 operation(s) for trading.

Deribit Trading API is one of 14 APIs that Deribit publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Trading. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, authentication docs, and rate-limit docs.

This API exposes 38 operations across 38 paths, and defines 91 schemas. It is described by OpenAPI 3.2.0, at version 1.0.

Requests are made against 5 base URLs: https://test.deribit.com/api/v2, https://195.138.37.5:4410, https://195.138.37.6:4410, https://195.138.37.137:4410, https://195.138.37.138:4410.

38 operations 38 paths 91 schemas 38 GET

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
1.0
Base URL
https://www.deribit.com/api/v2
Authentication
HTTP Bearer
Resource Areas
1

Authentication & Security 1

Deribit Trading API declares 1 security scheme for authenticating requests. It accepts HTTP bearer tokens (BearerAuth).

  • BearerAuth — API key passed as a Bearer token. The authenticated session determines the portfolio that operations are applied to.

Paths & Operations 38

Across 38 paths, the API surfaces 38 operations — 38 GET. Each is listed below with its method, path, parameters, and response codes.

Trading 38
GET
/private/get_settlement_history_by_currency
Get private get settlement history by currency
getPrivateGetSettlementHistoryByCurrency 5 params body → 200
GET
/private/get_settlement_history_by_instrument
Get private get settlement history by instrument
getPrivateGetSettlementHistoryByInstrument 5 params body → 200
GET
/private/get_order_history_by_instrument
Get private get order history by instrument
getPrivateGetOrderHistoryByInstrument 8 params body → 200
GET
/private/get_order_history_by_currency
Get private get order history by currency
getPrivateGetOrderHistoryByCurrency 9 params body → 200
GET
/private/get_order_state
Get private get order state
getPrivateGetOrderState 1 param body → 200400
GET
/private/get_order_state_by_label
Get private get order state by label
getPrivateGetOrderStateByLabel 2 params body → 200400
GET
/private/get_open_orders
Get private get open orders
getPrivateGetOpenOrders 2 params body → 200
GET
/private/get_open_orders_by_instrument
Get private get open orders by instrument
getPrivateGetOpenOrdersByInstrument 2 params body → 200
GET
/private/get_open_orders_by_currency
Get private get open orders by currency
getPrivateGetOpenOrdersByCurrency 3 params body → 200
GET
/private/get_open_orders_by_label
Get private get open orders by label
getPrivateGetOpenOrdersByLabel 2 params body → 200
GET
/private/get_order_margin_by_ids
Get private get order margin by ids
getPrivateGetOrderMarginByIds 1 param body → 200
GET
/private/get_trigger_order_history
Get private get trigger order history
getPrivateGetTriggerOrderHistory 4 params body → 200
GET
/private/get_user_trades_by_instrument
Get private get user trades by instrument
getPrivateGetUserTradesByInstrument 9 params body → 200
GET
/private/get_user_trades_by_instrument_and_time
Get private get user trades by instrument and time
getPrivateGetUserTradesByInstrumentAndTime 7 params body → 200
GET
/private/get_user_trades_by_currency
Get private get user trades by currency
getPrivateGetUserTradesByCurrency 10 params body → 200
GET
/private/get_user_trades_by_currency_and_time
Get private get user trades by currency and time
getPrivateGetUserTradesByCurrencyAndTime 8 params body → 200
GET
/private/get_user_trades_by_order
Get private get user trades by order
getPrivateGetUserTradesByOrder 4 params body → 200
GET
/private/cancel_all
Get private cancel all
getPrivateCancelAll 2 params body → 200
GET
/private/cancel_all_by_instrument
Get private cancel all by instrument
getPrivateCancelAllByInstrument 5 params body → 200
GET
/private/cancel_all_by_currency
Get private cancel all by currency
getPrivateCancelAllByCurrency 5 params body → 200
GET
/private/cancel_all_by_currency_pair
Get private cancel all by currency pair
getPrivateCancelAllByCurrencyPair 5 params body → 200
GET
/private/cancel_all_by_kind_or_type
Get private cancel all by kind or type
getPrivateCancelAllByKindOrType 5 params body → 200
GET
/private/cancel_by_label
Get private cancel by label
getPrivateCancelByLabel 2 params body → 200
GET
/private/cancel_quotes
Get private cancel quotes
getPrivateCancelQuotes 10 params body → 200
GET
/private/cancel
Get private cancel
getPrivateCancel 1 param body → 200
GET
/private/buy
Get private buy
getPrivateBuy 20 params body → 200
GET
/private/sell
Get private sell
getPrivateSell 20 params body → 200
GET
/private/edit
Get private edit
getPrivateEdit 13 params body → 200
GET
/private/edit_by_label
Get private edit by label
getPrivateEditByLabel 12 params body → 200
GET
/private/close_position
Get private close position
getPrivateClosePosition 3 params body → 200
GET
/private/get_margins
Get private get margins
getPrivateGetMargins 3 params body → 200
GET
/private/get_mmp_config
Get private get mmp config
getPrivateGetMmpConfig 3 params body → 200
GET
/private/get_mmp_status
Get private get mmp status
getPrivateGetMmpStatus 3 params body → 200
GET
/private/set_mmp_config
Get private set mmp config
getPrivateSetMmpConfig 10 params body → 200
GET
/private/reset_mmp
Get private reset mmp
getPrivateResetMmp 3 params body → 200
GET
/private/mass_quote
Get private mass quote
getPrivateMassQuote 6 params body → 200
GET
/private/move_positions
Get private move positions
getPrivateMovePositions 4 params body → 200
GET
/api/v2/private/get_open_orders
Get Open Orders
get_open_orders → 200401429500

Schemas 91

The contract defines 91 schemas that model the data the API accepts and returns. The most detailed are order (52 properties), user_trade (38 properties), trigger_order_history_record (20 properties), Order (19 properties). Each schema is shown below with its type and property counts.

display_amount
number
The actual display amount of iceberg order. Absent for other types of orders.
triggered
boolean
Whether the trigger order has been triggered
kind
string
Instrument kind: "future", "option", "spot", "futurecombo", "optioncombo"
PrivateGetOrderMarginByIdsResponse
object
3 properties 2 required
settlement_type
string
The type of settlement. settlement, delivery or bankruptcy.
PrivateGetMmpConfigResponse
object
3 properties 2 required
direction
string
Direction: buy, or sell
label
string
User defined label (up to 64 characters)
ErrorMessageResponse
object
4 properties 3 required
PrivateGetUserTradesHistoryResponse
object
3 properties 2 required
order
object
52 properties 12 required
advanced
string
advanced type: "usd" or "implv" (Only for options; field is omitted if not applicable).
max_price
number
The maximum price for the future. Any buy orders you submit higher than this price, will be clamped to this maximum.
trigger_order_history_record
object
20 properties 15 required
PrivateGetMarginsResponse
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…
PrivateCancelAllResponse
object
3 properties 2 required
trade_seq
integer
The sequence number of the trade within instrument
index_name
string
Index identifier, matches (base) cryptocurrency with quote currency
order_type2
string
Order type: "all", "limit", "triggerall", "stopall", "stoplimit", "stopmarket", "takeall", "takelimit", "takemarket", "trailingall", "trailingstop"
currency_with_any_and_list
The currency symbol, list of currency symbols or "any" for all
PrivateGetOrderStateResponse
object
3 properties 2 required
block_trade_id_in_result
string
Block trade id - when trade was part of a block trade
order_state_in_user_trade
string
Order state: "open", "filled", "rejected", "cancelled", "untriggered" or "archive" (if order was archived)
average_price
number
Average fill price of the order
user_trade
object
38 properties 15 required
PrivateSetMmpConfigResponse
object
3 properties 2 required
price
number
Price in base currency
oco_ref
string
Unique reference that identifies a onecancelsothers (OCO) pair.
post_only
boolean
true for post-only orders only
is_secondary_oto
boolean
true if the order is an order that can be triggered by another order, otherwise not present.
trigger_price
number
Trigger price (Only for future trigger orders)
PrivateMassQuoteResponse
object
3 properties 2 required
trigger_reference_price
number
The price of the given trigger at the time when the order was placed (Only for trailing trigger orders)
continuation
string
Continuation token for pagination.
trade_id
string
Unique (per currency) trade identifier
reduce_only
boolean
Optional (not added for spot). 'true for reduce-only orders only'
block_trade_order
boolean
true if order made from blocktrade trade, added only in that case.
order_state_stop
string
Order state: "triggered", "cancelled", or "rejected" with rejection reason (e.g. "rejected:reducedirection").
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.,…
simple_order_type
string
Order type: "all", "limit", "stop", "take", "trailingstop", "trailingtake"
order_state
string
Order state: "open", "filled", "rejected", "cancelled", "untriggered"
trigger_offset
number
The maximum deviation from the price peak beyond which the order will be triggered (Only for trailing trigger orders)
order_id
string
Unique order identifier
settlement
object
14 properties 7 required
currency
string
Currency, i.e "BTC", "ETH", "USDC"
PrivateCancelQuotesResponse
object
3 properties 2 required
PrivateGetOpenOrdersResponse
object
3 properties 2 required
PrivateGetUserTradesByOrderResponse
object
2 properties 1 required
original_order_type
string
Original order type. Optional field
contracts
number
It represents the order size in contract units. (Optional, may be absent in historical data).
PrivatePositionMoveResponse
object
3 properties 2 required
web
boolean
true if created via Deribit frontend (optional)
PrivateGetOrderStateByLabelResponse
object
3 properties 2 required
api
boolean
true if created with API
position_move
object
1 property 1 required
PrivateGetOrderHistoryResponse
object
3 properties 2 required
PrivateEditResponse
object
3 properties 2 required
order_id_initial_margin_pair
object
3 properties 2 required
profit_loss
number
Profit and loss in base currency.
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…
orders
array
mobile
boolean
Optional field with value true added only when created with Mobile Application
sorting
string
PrivateCancelResponse
object
3 properties 2 required
trade_timestamp
integer
The timestamp of the trade (milliseconds since the UNIX epoch)
order_type
string
Order type: "limit", "market", "stoplimit", "stopmarket", "takelimit", "takemarket", "trailingstop"
implv
number
Implied volatility in percent. (Only if advanced="implv")
PrivateSettlementResponse
object
3 properties 2 required
trigger
string
Trigger type (only for trigger orders). Allowed values: "indexprice", "markprice", "lastprice".
position_move_trade
object
6 properties 4 required
PrivateGetMmpStatusResponse
object
3 properties 2 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…
PrivateGetTriggerOrderHistoryResponse
object
3 properties 2 required
OkResponse
object
3 properties 2 required
timestamp
integer
The timestamp (milliseconds since the Unix epoch)
tick_direction
integer
Direction of the "tick" (0 = Plus Tick, 1 = Zero-Plus Tick, 2 = Minus Tick, 3 = Zero-Minus Tick).
cancel_reason
string
Enumerated reason behind cancel "userrequest", "autoliquidation", "cancelondisconnect", "riskmitigation", "pmeriskreduction" (portfolio margining risk reductio…
time_in_force
string
Order time in force: "goodtilcancelled", "goodtilday", "fillorkill" or "immediateorcancel"
reject_post_only
boolean
true if order has rejectpostonly flag (field is present only when postonly is true)
kind_with_combo_all
string
Instrument kind: "future", "option", "spot", "futurecombo", "optioncombo", "combo" for any combo or "any" for all
open_order_price
Price in base currency or "marketprice" in case of open trigger market orders
usd
number
Option price in USD (Only if advanced="usd")
instrument_name
string
Unique instrument identifier
index_name_derivative
string
Index identifier of derivative instrument on the platform
min_price
number
The minimum price for the future. Any sell orders you submit lower than this price will be clamped to this minimum.
PrivateBuyAndSellResponse
object
3 properties 2 required
label_presentation
string
User defined label (presented only when previously set for order by user)
Order
object
A single open order from the authenticated portfolio.
19 properties 8 required
GetOpenOrdersResponse
object
3 properties 2 required
JsonRpcError
object
JSON-RPC 2.0 error envelope returned for failed requests.
3 properties 2 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

deribit-trading-api-openapi.yml Raw ↑

Other APIs Deribit publishes across the network.

Deribit WebSocket API
Deribit FIX API
Deribit Account Management API
Deribit Authentication API
Deribit Block RFQ API
Deribit Block Trade API
Deribit Combo Books API
Deribit Market Data API
Deribit Portfolio Management API
Deribit Session Management API
Deribit Subscription Management API
Deribit Supporting API
Where this information came from

This is an independent, third-party profile of Deribit Trading API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.