# Deribit API Documentation: Upcoming API Reference JSON-RPC API

## JSON-RPC API

### Methods overview

- [JSON-RPC 2.0 Protocol](https://docs.deribit.com/articles/json-rpc-overview.md): Deribit API uses JSON-RPC 2.0 for all API communications. This standardized protocol provides a simple and consistent way to make remote procedure calls.
- [Error Codes](https://docs.deribit.com/articles/errors.md): Complete reference of Deribit API error codes, HTTP status meanings, and guidance on handling common failure scenarios in production client code.
- [Using the currency Parameter](https://docs.deribit.com/articles/currency-parameter.md): Discover supported currencies with get_currencies, learn what currency selects on each Deribit method, and avoid invalid currency and spot routing errors.

### Methods

#### Authentication

- [public/auth](https://docs.deribit.com/api-reference/upcoming/authentication/public-auth.md): Retrieve an OAuth access token, to be used for authentication of 'private' requests.
- [public/exchange_token](https://docs.deribit.com/api-reference/upcoming/authentication/public-exchange_token.md): Generates a token for a new subject id. This method can be used to switch between subaccounts.
- [public/fork_token](https://docs.deribit.com/api-reference/upcoming/authentication/public-fork_token.md): Generates a token for a new named session. This method can be used only with session scoped tokens.
- [private/logout](https://docs.deribit.com/api-reference/upcoming/authentication/private-logout.md): Gracefully terminate the current WebSocket connection and optionally invalidate all tokens associated with the session.

#### Account Management

- [private/change_api_key_name](https://docs.deribit.com/api-reference/upcoming/account-management/private-change_api_key_name.md): Updates the display name for an API key. The name is used for identification purposes in the API key list and does not affect the key's functionality or permissions.
- [private/change_margin_model](https://docs.deribit.com/api-reference/upcoming/account-management/private-change_margin_model.md): Changes the margin model for the authenticated account or a specified subaccount. Margin models determine how margin requirements are calculated (e.g., Standard Margin vs. Portfolio Margin).
- [private/change_scope_in_api_key](https://docs.deribit.com/api-reference/upcoming/account-management/private-change_scope_in_api_key.md): Updates the scope (permissions) for an existing API key. The scope determines which operations the API key can perform (e.g., read-only, read-write, trading, etc.).
- [private/change_subaccount_name](https://docs.deribit.com/api-reference/upcoming/account-management/private-change_subaccount_name.md): Updates the display name (username) for a subaccount. The new name is used for identification purposes and does not affect the subaccount's functionality or access.
- [private/create_api_key](https://docs.deribit.com/api-reference/upcoming/account-management/private-create_api_key.md): Creates a new API key with the specified scope and permissions. API keys are used for programmatic access to the Deribit API and can be restricted to specific operations and IP addresses.
- [private/create_subaccount](https://docs.deribit.com/api-reference/upcoming/account-management/private-create_subaccount.md): Creates a new subaccount under the authenticated main account. Subaccounts allow you to organize trading activities and manage risk separately from the main account.
- [private/delete_member](https://docs.deribit.com/api-reference/upcoming/account-management/private-delete_member.md): Deletes a Direct Access member from the account. Returns the resulting list of all members configured for the account.
- [private/disable_api_key](https://docs.deribit.com/api-reference/upcoming/account-management/private-disable_api_key.md): Disables an API key, preventing it from being used to authenticate API requests. The key remains in your account but cannot be used until it is re-enabled.
- [private/edit_api_key](https://docs.deribit.com/api-reference/upcoming/account-management/private-edit_api_key.md): Updates properties of an existing API key. You can modify the key name, scope, enabled status, features, and IP whitelist. At least one parameter must be provided.
- [private/enable_affiliate_program](https://docs.deribit.com/api-reference/upcoming/account-management/private-enable_affiliate_program.md): Enables the affiliate program for the authenticated account. Once enabled, you can earn commissions by referring new users to Deribit.
- [private/enable_api_key](https://docs.deribit.com/api-reference/upcoming/account-management/private-enable_api_key.md): Enables a previously disabled API key, restoring its ability to authenticate API requests. The API key can be used immediately after being enabled.
- [private/get_access_log](https://docs.deribit.com/api-reference/upcoming/account-management/private-get_access_log.md): Retrieves a log of API access attempts and authentication events for the authenticated account. The log includes information such as IP addresses, timestamps, API methods called, and authentication status.
- [private/get_account_summaries](https://docs.deribit.com/api-reference/upcoming/account-management/private-get_account_summaries.md): Retrieves a per-currency list of account summaries for the authenticated user. Each summary includes balance, equity, available funds, and margin information for each currency.
- [private/get_account_summary](https://docs.deribit.com/api-reference/upcoming/account-management/private-get_account_summary.md): Retrieves the account summary for a specific currency. The summary includes cash `balance`, `equity`, `margin_balance`, `available_funds`, `available_withdrawal_funds`, initial/maintenance margin, session and total PnL, options greeks, and related fields.
- [private/get_affiliate_program_info](https://docs.deribit.com/api-reference/upcoming/account-management/private-get_affiliate_program_info.md): Retrieves information about the affiliate program status for the authenticated account. The response includes the number of referred affiliates, total payouts earned, pending payouts, and the unique affiliate referral link.
- [private/get_currencies](https://docs.deribit.com/api-reference/upcoming/account-management/private-get_currencies.md): Returns a list of cryptocurrencies available for the authenticated user's account.
- [private/get_email_language](https://docs.deribit.com/api-reference/upcoming/account-management/private-get_email_language.md): Retrieves the currently configured language preference for email notifications. Returns the language code (e.g., `en`, `ko`, `zh`, `ja`, `ru`) that is used for all email communications sent to the account.
- [private/get_members](https://docs.deribit.com/api-reference/upcoming/account-management/private-get_members.md): Retrieves the list of Direct Access members configured for the account. A member represents an external identity (e.g. a FIX or Direct Access order gateway user) that can be granted Direct Access trading rights on the account or one of its subaccounts.
- [private/get_new_announcements](https://docs.deribit.com/api-reference/upcoming/account-management/private-get_new_announcements.md): Retrieves only unread announcements for the authenticated account. Announcements are marked as read when you use the `set_announcement_as_read` method or view them through the web interface.
- [private/get_position](https://docs.deribit.com/api-reference/upcoming/account-management/private-get_position.md): Retrieves the open position for a specific instrument. Returns detailed position information including size, average entry price, mark price, unrealized P&L, initial margin, maintenance margin, and other position-related metrics.
- [private/get_positions](https://docs.deribit.com/api-reference/upcoming/account-management/private-get_positions.md): Retrieves all open positions for the authenticated account. Returns position details including size, average entry price, mark price, unrealized P&L, initial margin, maintenance margin, and other position-related information.
- [private/get_subaccounts](https://docs.deribit.com/api-reference/upcoming/account-management/private-get_subaccounts.md): Retrieves information about all subaccounts associated with the main account. Returns details such as subaccount IDs, names, and status.
- [private/get_subaccounts_details](https://docs.deribit.com/api-reference/upcoming/account-management/private-get_subaccounts_details.md): Retrieves position details for all subaccounts for a specific currency. Returns positions aggregated across all subaccounts, including size, average entry price, mark price, and P&L information.
- [private/get_transaction_log](https://docs.deribit.com/api-reference/upcoming/account-management/private-get_transaction_log.md): Retrieves a detailed transaction log for the authenticated account. The log includes all account activities such as trades, deposits, withdrawals, transfers, fees, and other balance-affecting operations.
- [private/get_user_locks](https://docs.deribit.com/api-reference/upcoming/account-management/private-get_user_locks.md): Retrieves information about any account locks or restrictions currently active on the authenticated account. Account locks may be applied for security reasons, compliance requirements, or administrative purposes.
- [private/list_api_keys](https://docs.deribit.com/api-reference/upcoming/account-management/private-list_api_keys.md): Retrieves a list of all API keys associated with the authenticated account. The response includes key details such as ID, name, scope, creation date, last usage, and status (enabled/disabled), but does not include the secret keys for security reasons.
- [private/list_custody_accounts](https://docs.deribit.com/api-reference/upcoming/account-management/private-list_custody_accounts.md): Retrieves a list of all custody accounts associated with the authenticated account for a specific currency. Custody accounts are used for clients who require segregated custody of their assets.
- [private/pme/simulate](https://docs.deribit.com/api-reference/upcoming/account-management/private-simulate.md): Calculates the Extended Risk Matrix (ERM) and detailed margin information for Portfolio Margin accounts. The ERM provides a comprehensive view of portfolio risk across different scenarios and market conditions.
- [private/remove_api_key](https://docs.deribit.com/api-reference/upcoming/account-management/private-remove_api_key.md): Permanently deletes an API key from your account. This operation cannot be undone. Once removed, the API key can no longer be used to authenticate requests, and all applications using this key will lose access.
- [private/remove_subaccount](https://docs.deribit.com/api-reference/upcoming/account-management/private-remove_subaccount.md): Permanently removes a subaccount. The subaccount must be empty (no positions, no open orders, and zero balance) before it can be removed.
- [private/reset_api_key](https://docs.deribit.com/api-reference/upcoming/account-management/private-reset_api_key.md): Generates a new secret key for an existing API key while keeping the same key ID and other properties. This is useful if the secret has been compromised or needs to be rotated for security purposes.
- [private/set_announcement_as_read](https://docs.deribit.com/api-reference/upcoming/account-management/private-set_announcement_as_read.md): Marks a specific announcement as read. Once marked as read, the announcement will no longer appear in the `get_new_announcements` response, though it will still be available through `get_announcements`.
- [private/set_disabled_trading_products](https://docs.deribit.com/api-reference/upcoming/account-management/private-set_disabled_trading_products.md): Configures which trading products (instruments, currencies, or instrument types) are disabled for a subaccount. Disabled products cannot be traded by the subaccount, providing a way to restrict trading activities.
- [private/set_email_for_subaccount](https://docs.deribit.com/api-reference/upcoming/account-management/private-set_email_for_subaccount.md): Assigns an email address to a subaccount. This email can be used for direct login to the subaccount and for receiving notifications.
- [private/set_email_language](https://docs.deribit.com/api-reference/upcoming/account-management/private-set_email_language.md): Sets the preferred language for email notifications sent to the authenticated account. Supported languages include English (`en`), Korean (`ko`), Chinese (`zh`), Japanese (`ja`), and Russian (`ru`).
- [private/set_member](https://docs.deribit.com/api-reference/upcoming/account-management/private-set_member.md): Creates a new Direct Access member, or edits an existing one. Returns the resulting list of all members configured for the account.
- [private/set_self_trading_config](https://docs.deribit.com/api-reference/upcoming/account-management/private-set_self_trading_config.md): Configures self-trading prevention settings for the account. Self-trading occurs when orders from the same account (or related subaccounts) match against each other.
- [private/simulate_portfolio](https://docs.deribit.com/api-reference/upcoming/account-management/private-simulate_portfolio.md): Calculates portfolio margin requirements and risk metrics for simulated positions or the current portfolio. This method helps you understand margin requirements before opening new positions or assess the impact of potential trades.
- [private/toggle_notifications_from_subaccount](https://docs.deribit.com/api-reference/upcoming/account-management/private-toggle_notifications_from_subaccount.md): Enables or disables email and other notifications for a subaccount. When notifications are disabled, the subaccount will not receive email alerts, trade confirmations, or other notification messages.
- [private/toggle_subaccount_login](https://docs.deribit.com/api-reference/upcoming/account-management/private-toggle_subaccount_login.md): Enables or disables direct login access for a subaccount. When login is disabled, the subaccount cannot be accessed directly using email and password authentication, but can still be accessed through the main account.
- [public/get_announcements](https://docs.deribit.com/api-reference/upcoming/account-management/public-get_announcements.md): Retrieves platform announcements and important notices. Announcements include system updates, maintenance schedules, new features, policy changes, and other important information.

#### Block RFQ

- [private/accept_block_rfq](https://docs.deribit.com/api-reference/upcoming/block-rfq/private-accept_block_rfq.md): **Taker method**
- [private/add_block_rfq_quote](https://docs.deribit.com/api-reference/upcoming/block-rfq/private-add_block_rfq_quote.md): **Maker method**
- [private/cancel_all_block_rfq_quotes](https://docs.deribit.com/api-reference/upcoming/block-rfq/private-cancel_all_block_rfq_quotes.md): **Maker method**
- [private/cancel_block_rfq](https://docs.deribit.com/api-reference/upcoming/block-rfq/private-cancel_block_rfq.md): **Taker method**
- [private/cancel_block_rfq_quote](https://docs.deribit.com/api-reference/upcoming/block-rfq/private-cancel_block_rfq_quote.md): **Maker method**
- [private/cancel_block_rfq_trigger](https://docs.deribit.com/api-reference/upcoming/block-rfq/private-cancel_block_rfq_trigger.md): **Taker method**
- [private/create_block_rfq](https://docs.deribit.com/api-reference/upcoming/block-rfq/private-create_block_rfq.md): **Taker method**
- [private/edit_block_rfq_quote](https://docs.deribit.com/api-reference/upcoming/block-rfq/private-edit_block_rfq_quote.md): **Maker method**
- [private/get_block_rfq_makers](https://docs.deribit.com/api-reference/upcoming/block-rfq/private-get_block_rfq_makers.md): Returns a list of all available Block RFQ makers. This method takes no parameters.
- [private/get_block_rfq_quotes](https://docs.deribit.com/api-reference/upcoming/block-rfq/private-get_block_rfq_quotes.md): **Maker method**
- [private/get_block_rfq_user_info](https://docs.deribit.com/api-reference/upcoming/block-rfq/private-get_block_rfq_user_info.md): Returns identity and rating information for the requesting account and its subaccounts. Includes both group-level and individual user-level alias data, if available.
- [private/get_block_rfqs](https://docs.deribit.com/api-reference/upcoming/block-rfq/private-get_block_rfqs.md): Returns a list of Block RFQs that were either created by the user or assigned to them as a maker, sorted in descending order.
- [public/get_block_rfq_trades](https://docs.deribit.com/api-reference/upcoming/block-rfq/public-get_block_rfq_trades.md): Returns a list of recent Block RFQ trades. Can be optionally filtered by currency.

#### Block Trade

- [private/approve_block_trade](https://docs.deribit.com/api-reference/upcoming/block-trade/private-approve_block_trade.md): Approves a pending block trade. `nonce` and `timestamp` are used to identify the block trade while `role` should be opposite to the trading counterparty.
- [private/execute_block_trade](https://docs.deribit.com/api-reference/upcoming/block-trade/private-execute_block_trade.md): Executes a block trade. This is the second step in the block trade workflow - the second party calls this method with the signature received from the first party to execute the trade.
- [private/get_block_trade](https://docs.deribit.com/api-reference/upcoming/block-trade/private-get_block_trade.md): Returns information about a specific block trade identified by `block_trade_id`.
- [private/get_block_trade_requests](https://docs.deribit.com/api-reference/upcoming/block-trade/private-get_block_trade_requests.md): Provides a list of block trade requests including pending approvals, declined trades, and expired trades. `timestamp` and `nonce` received in response can be used with [private/approve_block_trade](https://docs.deribit.com/api-reference/block-trade/private-approve_block_trade) or [private/reject_blo…
- [private/get_block_trades](https://docs.deribit.com/api-reference/upcoming/block-trade/private-get_block_trades.md): Returns a list of the user's block trades. If currency is not provided, returns block trades for all currencies. `block_rfq_id` can be provided to receive block trades related to that particular Block RFQ.
- [private/get_broker_clients](https://docs.deribit.com/api-reference/upcoming/block-trade/private-get_broker_clients.md): **Broker Method** Returns a list of clients registered under the broker account. Each client record includes:
- [private/get_broker_trade_requests](https://docs.deribit.com/api-reference/upcoming/block-trade/private-get_broker_trade_requests.md): **Broker Method** Provides a list of broker block trade requests including pending approvals, declined trades, and expired trades. `timestamp` and `nonce` received in response can be used to approve or reject the pending broker block trade. This method takes no parameters.
- [private/get_broker_trades](https://docs.deribit.com/api-reference/upcoming/block-trade/private-get_broker_trades.md): **Broker Method** Returns list of broker block trades. If currency is not provided, returns broker block trades for all currencies.
- [private/invalidate_block_trade_signature](https://docs.deribit.com/api-reference/upcoming/block-trade/private-invalidate_block_trade_signature.md): Invalidates a block trade signature, effectively cancelling the block trade. This can be called at any time before [private/execute_block_trade](https://docs.deribit.com/api-reference/block-trade/private-execute_block_trade) is called.
- [private/reject_block_trade](https://docs.deribit.com/api-reference/upcoming/block-trade/private-reject_block_trade.md): Rejects a pending block trade. `nonce` and `timestamp` are used to identify the block trade while `role` should be opposite to the trading counterparty.
- [private/simulate_block_trade](https://docs.deribit.com/api-reference/upcoming/block-trade/private-simulate_block_trade.md): Checks if a block trade can be executed without actually executing it. Use this method to verify that a block trade will succeed before proceeding with the actual execution.
- [private/verify_block_trade](https://docs.deribit.com/api-reference/upcoming/block-trade/private-verify_block_trade.md): Verifies and creates a block trade signature. This is the first step in the block trade workflow - the first party calls this method to generate a signature that must be shared with the second party.

#### Combo Books

- [private/create_combo](https://docs.deribit.com/api-reference/upcoming/combo-books/private-create_combo.md): Verifies and creates a combo book or returns an existing combo matching the given trades. Combos allow trading on multiple instruments (futures and options) simultaneously as a single strategy.
- [private/get_leg_prices](https://docs.deribit.com/api-reference/upcoming/combo-books/private-get_leg_prices.md): Returns individual leg prices for a given combo structure based on an aggregated price of the strategy and the mark prices of the individual legs.
- [public/get_combo_details](https://docs.deribit.com/api-reference/upcoming/combo-books/public-get_combo_details.md): Retrieves detailed information about a specific combo, including its leg structure, state, and other properties.
- [public/get_combo_ids](https://docs.deribit.com/api-reference/upcoming/combo-books/public-get_combo_ids.md): Retrieves available combo IDs. This method can be used to get the list of all combos, or only the list of combos in the given state.
- [public/get_combos](https://docs.deribit.com/api-reference/upcoming/combo-books/public-get_combos.md): Retrieves information about active combos for the specified currency. Returns detailed information including leg structures and combo properties.

#### LSP

- [private/get_lsp_participant_config](https://docs.deribit.com/api-reference/upcoming/lsp/private-get_lsp_participant_config.md): Retrieves the LSP (Liquidity Support Program) participant configuration for the authenticated account.
- [private/get_lsp_participants](https://docs.deribit.com/api-reference/upcoming/lsp/private-get_lsp_participants.md): Lists the LSP (Liquidity Support Program) participant subaccounts configured under the authenticated main account.
- [private/get_lsp_participants_usage](https://docs.deribit.com/api-reference/upcoming/lsp/private-get_lsp_participants_usage.md): Retrieves per-cooldown-group assignment usage for all LSP (Liquidity Support Program) participant subaccounts configured under the authenticated main account.
- [private/get_lsp_usage](https://docs.deribit.com/api-reference/upcoming/lsp/private-get_lsp_usage.md): Retrieves the current per-cooldown-group assignment usage for the authenticated LSP (Liquidity Support Program) participant subaccount within its current fixed cooldown window.

#### Market Data

- [public/get_apr_history](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_apr_history.md): Retrieves historical Annual Percentage Rate (APR) data for yield-generating tokens. APR represents the annualized return rate for holding these tokens on Deribit.
- [public/get_book_summary_by_currency](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_book_summary_by_currency.md): Retrieves summary information such as open interest, 24-hour volume, best bid/ask prices, last trade price, and other market statistics for all instruments in a given currency.
- [public/get_book_summary_by_instrument](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_book_summary_by_instrument.md): Retrieves summary information such as open interest, 24-hour volume, best bid/ask prices, last trade price, mark price, and other market statistics for a specific instrument.
- [public/get_contract_size](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_contract_size.md): Retrieves the contract size (also known as contract multiplier) for a given instrument. The contract size is the value of one contract, expressed in the same unit as the order amount: USD for inverse (reversed) futures and perpetuals, and the base currency coin for options, spots, and linear futures…
- [public/get_currencies](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_currencies.md): Retrieves all cryptocurrencies supported by the Deribit API. Returns a list of available currencies with their codes and basic information.
- [public/get_delivery_prices](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_delivery_prices.md): Retrieves historical delivery prices for a given index. Delivery prices are the settlement prices used when futures or options contracts expire and are settled.
- [public/get_expirations](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_expirations.md): Retrieves all available expiration timestamps for instruments. This method can be used to discover which expiration dates are available for trading, which is useful for finding instruments with specific expiration dates.
- [public/get_funding_chart_data](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_funding_chart_data.md): Retrieves funding rate chart data points for a PERPETUAL instrument within a given time period. The data is formatted for use in charting applications and includes funding rate values at regular intervals.
- [public/get_funding_rate_history](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_funding_rate_history.md): Retrieves hourly historical funding rate (interest rate) data for a PERPETUAL instrument over a specified time period. Funding rates are periodic payments exchanged between long and short positions in perpetual contracts.
- [public/get_funding_rate_value](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_funding_rate_value.md): Retrieves the funding rate (interest rate) value for a perpetual instrument over a specified time period. Funding rates are periodic payments exchanged between long and short positions in perpetual contracts.
- [public/get_historical_volatility](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_historical_volatility.md): Provides historical volatility data for a given cryptocurrency. Historical volatility measures the degree of price variation over a past period and is useful for risk assessment and option pricing.
- [public/get_index_price](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_index_price.md): Retrieves the current index price value for a given index name. Index prices are used as reference prices for mark price calculations and settlement.
- [public/get_index_price_names](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_index_price_names.md): Retrieves the identifiers (names) of all supported price indexes. Price indexes are reference prices used for mark price calculations, settlement, and other market operations.
- [public/get_instrument](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_instrument.md): Retrieves detailed information about a specific instrument, including instrument specifications, contract details, tick size, settlement currency, expiration date (for futures and options), strike price (for options), underlying type, and other instrument parameters.
- [public/get_instruments](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_instruments.md): Retrieves available trading instruments. This method can be used to see which instruments are available for trading, or which instruments have recently expired.
- [public/get_last_settlements_by_currency](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_last_settlements_by_currency.md): Retrieves historical settlement, delivery, and bankruptcy events from all instruments within a given currency.
- [public/get_last_settlements_by_instrument](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_last_settlements_by_instrument.md): Retrieves historical settlement, delivery, and bankruptcy events for a specific instrument.
- [public/get_last_trades_by_currency](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_last_trades_by_currency.md): Retrieves the latest trades that have occurred for instruments in a specific currency. Returns trade details including price, amount, direction, timestamp, and trade ID for all instruments in the currency.
- [public/get_last_trades_by_currency_and_time](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_last_trades_by_currency_and_time.md): Retrieves the latest trades that have occurred for instruments in a specific currency within a specified time range. Returns trade details including price, amount, direction, timestamp, and trade ID.
- [public/get_last_trades_by_instrument](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_last_trades_by_instrument.md): Retrieves the latest trades that have occurred for a specific instrument. Returns trade details including price, amount, direction, timestamp, and trade ID.
- [public/get_last_trades_by_instrument_and_time](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_last_trades_by_instrument_and_time.md): Retrieves the latest trades that have occurred for a specific instrument within a specified time range. Returns trade details including price, amount, direction, timestamp, and trade ID.
- [public/get_mark_price_history](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_mark_price_history.md): Retrieves 5-minute historical mark price data for an instrument. Mark prices are used for margin calculations and position valuations.
- [public/get_order_book](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_order_book.md): Retrieves the order book (bids and asks) for a given instrument, along with other market values such as best bid/ask prices, last trade price, mark price, and index price.
- [public/get_order_book_by_instrument_id](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_order_book_by_instrument_id.md): Retrieves the order book (bids and asks) for a given instrument ID, along with other market values such as best bid/ask prices, last trade price, mark price, and index price.
- [public/get_supported_index_names](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_supported_index_names.md): Retrieves the identifiers (names) of all supported price indexes, optionally filtered by index type. Price indexes are reference prices used for mark price calculations, settlement, and other market operations.
- [public/get_trade_volumes](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_trade_volumes.md): Retrieves aggregated 24-hour trade volumes for different instrument types and currencies. The volume statistics include all executed trades across the platform.
- [public/get_tradingview_chart_data](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_tradingview_chart_data.md): Retrieves publicly available market data formatted for generating TradingView-compatible candle charts. The data includes open, high, low, close (OHLC) prices and volume for specified time intervals.
- [public/get_volatility_index_data](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_volatility_index_data.md): Retrieves volatility index (VIX) chart data formatted as candles. Volatility indexes measure market expectations of future volatility and are useful for risk assessment and trading strategies.
- [public/ticker](https://docs.deribit.com/api-reference/upcoming/market-data/public-ticker.md): Retrieves the ticker (24-hour statistics) for a specific instrument. The ticker includes the last trade price, best bid/ask prices, 24-hour high/low, 24-hour volume, open interest, mark price, and other market statistics.
- [public/get_index_chart_data](https://docs.deribit.com/api-reference/upcoming/market-data/public-get_index_chart_data.md): Returns historical price index chart data for the specified index name and time range. The data is formatted for use in charting applications and shows price index values over time.

#### Session Management

- [private/disable_cancel_on_disconnect](https://docs.deribit.com/api-reference/upcoming/session-management/private-disable_cancel_on_disconnect.md): Disable Cancel On Disconnect for the connection.
- [private/enable_cancel_on_disconnect](https://docs.deribit.com/api-reference/upcoming/session-management/private-enable_cancel_on_disconnect.md): Enable Cancel On Disconnect for the connection. After enabling, all orders created via this connection will be automatically cancelled when the connection is closed.
- [private/get_cancel_on_disconnect](https://docs.deribit.com/api-reference/upcoming/session-management/private-get_cancel_on_disconnect.md): Read current Cancel On Disconnect configuration for the account.
- [public/disable_heartbeat](https://docs.deribit.com/api-reference/upcoming/session-management/public-disable_heartbeat.md): Stop sending heartbeat messages. This method takes no parameters.
- [public/set_heartbeat](https://docs.deribit.com/api-reference/upcoming/session-management/public-set_heartbeat.md): Signals the WebSocket connection to send and request heartbeats. Heartbeats can be used to detect stale connections.

#### Subscription Management

- [private/subscribe](https://docs.deribit.com/api-reference/upcoming/subscription-management/private-subscribe.md): Subscribe to one or more channels. The name of the channel determines what information will be provided, and in what form.
- [private/unsubscribe](https://docs.deribit.com/api-reference/upcoming/subscription-management/private-unsubscribe.md): Unsubscribe from one or more channels. The response contains only the channels that were successfully unsubscribed in this request.
- [private/unsubscribe_all](https://docs.deribit.com/api-reference/upcoming/subscription-management/private-unsubscribe_all.md): Unsubscribe from all the channels subscribed so far. This method takes no parameters.
- [public/subscribe](https://docs.deribit.com/api-reference/upcoming/subscription-management/public-subscribe.md): Subscribe to one or more channels. This is the same method as `/private/subscribe`, but it can only be used for 'public' channels.
- [public/unsubscribe](https://docs.deribit.com/api-reference/upcoming/subscription-management/public-unsubscribe.md): Unsubscribe from one or more channels. The response contains only the channels that were successfully unsubscribed in this request.
- [public/unsubscribe_all](https://docs.deribit.com/api-reference/upcoming/subscription-management/public-unsubscribe_all.md): Unsubscribe from all the channels subscribed so far. This method takes no parameters.

#### Supporting

- [public/get_time](https://docs.deribit.com/api-reference/upcoming/supporting/public-get_time.md): Retrieves the current time (in milliseconds). This API endpoint can be used to check the clock skew between your software and Deribit's systems.
- [public/hello](https://docs.deribit.com/api-reference/upcoming/supporting/public-hello.md): Method used to introduce the client software connected to Deribit platform over websocket. Provided data may have an impact on the maintained connection and will be collected for internal statistical purposes. In response, Deribit will also introduce itself.
- [public/status](https://docs.deribit.com/api-reference/upcoming/supporting/public-status.md): Method used to get information about locked currencies
- [public/test](https://docs.deribit.com/api-reference/upcoming/supporting/public-test.md): Tests the connection to the API server, and returns its version. You can use this to make sure the API is reachable, and matches the expected version.

#### Trading

- [private/buy](https://docs.deribit.com/api-reference/upcoming/trading/private-buy.md): Places a buy order for an instrument. Supports various order types including limit, market, stop, and advanced order types (stop-limit, take-profit, take-profit-limit, trailing-stop, etc.).
- [private/cancel](https://docs.deribit.com/api-reference/upcoming/trading/private-cancel.md): Cancels a specific order identified by its order ID. The order must be open (not yet filled or cancelled) to be cancelled successfully.
- [private/cancel_all](https://docs.deribit.com/api-reference/upcoming/trading/private-cancel_all.md): Cancels all open orders and trigger orders for the authenticated account across all currencies and instrument kinds. This is a bulk cancellation operation useful for quickly clearing all active orders.
- [private/cancel_all_by_currency](https://docs.deribit.com/api-reference/upcoming/trading/private-cancel_all_by_currency.md): Cancels all open orders for a specific currency. This is useful for quickly clearing all orders across multiple instruments in a currency.
- [private/cancel_all_by_currency_pair](https://docs.deribit.com/api-reference/upcoming/trading/private-cancel_all_by_currency_pair.md): Cancels all open orders for a specific currency pair. This is useful for quickly clearing all orders across instruments in a currency pair.
- [private/cancel_all_by_instrument](https://docs.deribit.com/api-reference/upcoming/trading/private-cancel_all_by_instrument.md): Cancels all open orders for a specific instrument. This is useful for quickly clearing all orders for a single instrument.
- [private/cancel_all_by_kind_or_type](https://docs.deribit.com/api-reference/upcoming/trading/private-cancel_all_by_kind_or_type.md): Cancels all open orders in one or more currencies, optionally filtered by instrument kind and/or order type. This provides flexible bulk cancellation across multiple currencies.
- [private/cancel_by_label](https://docs.deribit.com/api-reference/upcoming/trading/private-cancel_by_label.md): Cancels all orders (including trigger orders) that have a specific label. This is useful for managing groups of related orders that share the same label.
- [private/cancel_quotes](https://docs.deribit.com/api-reference/upcoming/trading/private-cancel_quotes.md): Cancels quotes (mass quote orders) based on various criteria. This method provides flexible options for cancelling quotes:
- [private/close_position](https://docs.deribit.com/api-reference/upcoming/trading/private-close_position.md): Places a reduce-only order to close an existing position. Reduce-only orders can only reduce or close a position; they cannot open a new position or increase an existing one.
- [private/edit](https://docs.deribit.com/api-reference/upcoming/trading/private-edit.md): Modifies an existing order by changing its price, amount, and/or other properties such as time-in-force, post-only, reduce-only, trigger conditions, or advanced order type.
- [private/edit_by_label](https://docs.deribit.com/api-reference/upcoming/trading/private-edit_by_label.md): Modifies an order identified by its label. This method works only when there is exactly one open order with the specified label.
- [private/get_margins](https://docs.deribit.com/api-reference/upcoming/trading/private-get_margins.md): Calculates margin requirements for a hypothetical order on a given instrument. Returns initial margin and maintenance margin for the specified instrument, quantity, and price.
- [private/get_mmp_config](https://docs.deribit.com/api-reference/upcoming/trading/private-get_mmp_config.md): Retrieves Market Maker Protection (MMP) configuration for an index. Returns all currently active MMP parameters for the selected index, including the interval, `frozen_time`, quantity/delta/vega limits, and `max_quote_quantity`.
- [private/get_mmp_status](https://docs.deribit.com/api-reference/upcoming/trading/private-get_mmp_status.md): Retrieves Market Maker Protection (MMP) status for a triggered index or MMP group. Returns the live MMP state including whether MMP is enabled or triggered, remaining frozen time (if triggered), whether quoting is currently allowed, and any active freeze conditions.
- [private/get_open_orders](https://docs.deribit.com/api-reference/upcoming/trading/private-get_open_orders.md): Retrieves a list of all open orders for the authenticated account across all currencies. Open orders are orders that have been placed but not yet filled or cancelled.
- [private/get_open_orders_by_currency](https://docs.deribit.com/api-reference/upcoming/trading/private-get_open_orders_by_currency.md): Retrieves a list of all open orders for a specific currency. Open orders are orders that have been placed but not yet filled or cancelled.
- [private/get_open_orders_by_instrument](https://docs.deribit.com/api-reference/upcoming/trading/private-get_open_orders_by_instrument.md): Retrieves a list of all open orders for a specific instrument. Open orders are orders that have been placed but not yet filled or cancelled.
- [private/get_open_orders_by_label](https://docs.deribit.com/api-reference/upcoming/trading/private-get_open_orders_by_label.md): Retrieves a list of all open orders that have a specific label within a given currency. This is useful for tracking and managing groups of related orders that share the same label.
- [private/get_order_history_by_currency](https://docs.deribit.com/api-reference/upcoming/trading/private-get_order_history_by_currency.md): Retrieves the order history for a specific currency. The history includes orders that have been partially or fully filled, as well as cancelled orders (if `include_unfilled_orders` is set to true).
- [private/get_order_history_by_instrument](https://docs.deribit.com/api-reference/upcoming/trading/private-get_order_history_by_instrument.md): Retrieves the order history for a specific instrument. The history includes orders that have been partially or fully filled, as well as cancelled orders (if `include_unfilled_orders` is set to true).
- [private/get_order_margin_by_ids](https://docs.deribit.com/api-reference/upcoming/trading/private-get_order_margin_by_ids.md): Retrieves the initial margin requirements for one or more orders identified by their order IDs. Initial margin is the amount of funds required to open a position with these orders.
- [private/get_order_state](https://docs.deribit.com/api-reference/upcoming/trading/private-get_order_state.md): Retrieves the current state of an order identified by its order ID. The response includes order details such as status (open, filled, cancelled), filled amount, remaining amount, price, and other order properties.
- [private/get_order_state_by_label](https://docs.deribit.com/api-reference/upcoming/trading/private-get_order_state_by_label.md): Retrieves the state of recent orders that have a specific label. This is useful for tracking orders that share the same label, which is helpful for managing related orders.
- [private/get_settlement_history_by_currency](https://docs.deribit.com/api-reference/upcoming/trading/private-get_settlement_history_by_currency.md): Retrieves settlement, delivery, and bankruptcy events that have affected your account for a specific currency.
- [private/get_settlement_history_by_instrument](https://docs.deribit.com/api-reference/upcoming/trading/private-get_settlement_history_by_instrument.md): Retrieves settlement, delivery, and bankruptcy events for a specific instrument that have affected your account.
- [private/get_trigger_order_history](https://docs.deribit.com/api-reference/upcoming/trading/private-get_trigger_order_history.md): Retrieves a detailed log of all trigger orders (stop orders, take-profit orders, etc.) for the authenticated account. The log includes trigger order creation, activation, execution, and cancellation events.
- [private/get_user_trades_by_currency](https://docs.deribit.com/api-reference/upcoming/trading/private-get_user_trades_by_currency.md): Retrieves the latest user trades that have occurred for instruments in a specific currency. Returns trade details including price, amount, direction, timestamp, trade ID, and order ID for all instruments in the currency.
- [private/get_user_trades_by_currency_and_time](https://docs.deribit.com/api-reference/upcoming/trading/private-get_user_trades_by_currency_and_time.md): Retrieves the latest user trades that have occurred for instruments in a specific currency within a specified time range. Returns trade details including price, amount, direction, timestamp, trade ID, and order ID for all instruments in the currency.
- [private/get_user_trades_by_instrument](https://docs.deribit.com/api-reference/upcoming/trading/private-get_user_trades_by_instrument.md): Retrieves the latest user trades that have occurred for a specific instrument. Returns trade details including price, amount, direction, timestamp, trade ID, and order ID.
- [private/get_user_trades_by_instrument_and_time](https://docs.deribit.com/api-reference/upcoming/trading/private-get_user_trades_by_instrument_and_time.md): Retrieves the latest user trades that have occurred for a specific instrument within a specified time range. Returns trade details including price, amount, direction, timestamp, trade ID, and order ID.
- [private/get_user_trades_by_order](https://docs.deribit.com/api-reference/upcoming/trading/private-get_user_trades_by_order.md): Retrieves all trades that were executed from a specific order. When an order is filled, it may result in multiple trades (partial fills). This method returns all trades associated with a given order ID.
- [private/mass_quote](https://docs.deribit.com/api-reference/upcoming/trading/private-mass_quote.md): Places buy and/or sell orders (quotes) on one or more instruments simultaneously. This method is designed for market makers who need to quote on multiple instruments efficiently.
- [private/move_positions](https://docs.deribit.com/api-reference/upcoming/trading/private-move_positions.md): Moves positions from a source subaccount to a target subaccount. This operation transfers open positions between subaccounts, which is useful for rebalancing or reorganizing trading activities.
- [private/reset_mmp](https://docs.deribit.com/api-reference/upcoming/trading/private-reset_mmp.md): Resets Market Maker Protection (MMP) limits for the specified currency pair or MMP group. If MMP protection has been triggered and quoting is frozen, this method allows you to manually resume quoting.
- [private/sell](https://docs.deribit.com/api-reference/upcoming/trading/private-sell.md): Places a sell order for an instrument. Supports various order types including limit, market, stop, and advanced order types (stop-limit, take-profit, take-profit-limit, trailing-stop, etc.).
- [private/set_mmp_config](https://docs.deribit.com/api-reference/upcoming/trading/private-set_mmp_config.md): Configures Market Maker Protection (MMP) for a specific index. This method sets the monitoring window, freeze duration, and exposure limits (quantity, delta, vega, and Maximum Quote Quantity).

#### Wallet

- [private/add_to_address_book](https://docs.deribit.com/api-reference/upcoming/wallet/private-add_to_address_book.md): Adds a new address to the address book. The address book allows you to store addresses for withdrawals, along with beneficiary information for compliance purposes.
- [private/cancel_transfer_by_id](https://docs.deribit.com/api-reference/upcoming/wallet/private-cancel_transfer_by_id.md): Cancel a pending transfer by its ID. This method allows you to cancel a transfer that has not yet been processed. Once a transfer is processed, it cannot be cancelled.
- [private/cancel_withdrawal](https://docs.deribit.com/api-reference/upcoming/wallet/private-cancel_withdrawal.md): Cancels a pending withdrawal request. This method allows you to cancel a withdrawal that has not yet been processed. Once a withdrawal is processed, it cannot be cancelled.
- [private/coinbase/estimate_withdrawal_fee](https://docs.deribit.com/api-reference/upcoming/wallet/private-estimate_withdrawal_fee.md): Estimates the network fee for a withdrawal on the given currency and network. **Available to institutional Coinbase wallet type accounts only.**
- [private/create_deposit_address](https://docs.deribit.com/api-reference/upcoming/wallet/private-create_deposit_address.md): Creates a new deposit address for the specified currency. Each currency can have multiple deposit addresses. Use this method to generate a new address for receiving deposits.
- [private/delete_address_beneficiary](https://docs.deribit.com/api-reference/upcoming/wallet/private-delete_address_beneficiary.md): Deletes beneficiary information for a specific address.
- [private/get_address_beneficiary](https://docs.deribit.com/api-reference/upcoming/wallet/private-get_address_beneficiary.md): Retrieves beneficiary information for a specific address. Returns the stored beneficiary details including VASP information, personal details, and wallet type classification.
- [private/get_address_book](https://docs.deribit.com/api-reference/upcoming/wallet/private-get_address_book.md): Retrieves the address book entries of the given type. Returns all saved addresses that can be used for withdrawals, along with their labels and beneficiary information if available.
- [private/get_current_deposit_address](https://docs.deribit.com/api-reference/upcoming/wallet/private-get_current_deposit_address.md): Retrieve the current deposit address for the specified currency. Returns the most recently created or used deposit address for receiving funds.
- [private/get_deposits](https://docs.deribit.com/api-reference/upcoming/wallet/private-get_deposits.md): Retrieve the latest user deposits. Returns a list of deposit transactions with their status, amounts, addresses, confirmations, and other relevant details.
- [private/get_reward_eligibility](https://docs.deribit.com/api-reference/upcoming/wallet/private-get_reward_eligibility.md): Returns reward eligibility status and APR data for all supported currencies.
- [private/get_transfers](https://docs.deribit.com/api-reference/upcoming/wallet/private-get_transfers.md): Retrieve the user's transfers list. Returns a list of internal transfers between accounts, subaccounts, or to other users, including their status, amounts, and other relevant details.
- [private/get_withdrawals](https://docs.deribit.com/api-reference/upcoming/wallet/private-get_withdrawals.md): Retrieve the latest user withdrawals. Returns a list of withdrawal requests with their status, amounts, addresses, and other relevant details.
- [private/list_address_beneficiaries](https://docs.deribit.com/api-reference/upcoming/wallet/private-list_address_beneficiaries.md): Lists address beneficiaries with optional filtering and pagination. Returns all saved beneficiary information for addresses, with support for filtering by currency, address, wallet type, VASP details, and date ranges.
- [private/remove_from_address_book](https://docs.deribit.com/api-reference/upcoming/wallet/private-remove_from_address_book.md): Removes an entry from the address book. This method allows you to delete a saved address that is no longer needed.
- [private/save_address_beneficiary](https://docs.deribit.com/api-reference/upcoming/wallet/private-save_address_beneficiary.md): Saves beneficiary information for an address. This method allows you to store beneficiary details required for compliance purposes, including VASP information, personal details, and wallet type classification.
- [private/set_address_requires_security_key](https://docs.deribit.com/api-reference/upcoming/wallet/private-set_address_requires_security_key.md): Sets whether withdrawals to the given address book address require a security key. Returns the updated address book entry.
- [private/set_clearance_originator](https://docs.deribit.com/api-reference/upcoming/wallet/private-set_clearance_originator.md): Sets originator of the deposit
- [private/set_coinbase_subaccount_withdrawals_allowed](https://docs.deribit.com/api-reference/upcoming/wallet/private-set_coinbase_subaccount_withdrawals_allowed.md): Allows or disallows withdrawals from subaccounts. Can be called only by the main account; subaccounts receive a `forbidden` error. The setting applies to Coinbase wallet type withdrawals — when disabled, `private/withdraw` requests from subaccounts of a Coinbase wallet type account are rejected.
- [private/submit_transfer_between_subaccounts](https://docs.deribit.com/api-reference/upcoming/wallet/private-submit_transfer_between_subaccounts.md): Transfer funds between two subaccounts or between a subaccount and the main account.
- [private/submit_transfer_to_subaccount](https://docs.deribit.com/api-reference/upcoming/wallet/private-submit_transfer_to_subaccount.md): Transfer funds from the main account to a subaccount.
- [private/submit_transfer_to_user](https://docs.deribit.com/api-reference/upcoming/wallet/private-submit_transfer_to_user.md): Transfer funds to another user. This method allows you to send funds from your main account to another Deribit user's account. The transfer is processed internally and does not require blockchain transactions.
- [private/update_in_address_book](https://docs.deribit.com/api-reference/upcoming/wallet/private-update_in_address_book.md): Updates beneficiary information for an address in the address book. This method allows you to add or modify beneficiary details required for compliance purposes when making withdrawals to certain addresses.
- [private/withdraw](https://docs.deribit.com/api-reference/upcoming/wallet/private-withdraw.md): Creates a new withdrawal request. This method allows you to withdraw funds from your account to an external address. The withdrawal can be configured with priority settings and must use an address from your address book.

## OpenAPI Specs

- [deribit_upcoming_openapi](/specifications/deribit_upcoming_openapi.json)
