8 May 2025

  • Updated

⚠️ Expected downtime: 15 - 30 minutes

Client impact: Maintenance 9 AM UTC - The system will be down for around 15 - 30 minutes. Client systems will not be able to communicate with Deribit during this time.

Warning

Due to security measures all access and refresh tokens will be invalidated and all users will be logged out during the maintenance period. Users will need to reauthenticate to regain access.

Block RFQ

MMP has been added to Block RFQ. The MMP settings and the corresponding triggers are separated from order book trading. Quantity, Delta and Vega triggers are implemented per currency pair. An additional MMP trigger, Trade Count, has been added; it is configured globally across all currency pairs and triggers across all open RFQs. When the specified number of RFQ quotes is filled, all other open RFQ quotes will be automatically canceled.

The existing WebSocket MMP methods (private/get_mmp_config,private/set_mmp_config and private/reset_mmp) have been extended with an optional block_rfq flag. The new Trade Count trigger is managed by setting index_name=all. Users can also configure Block RFQ MMP settings through the web application on the Account Settings page.

The user.mmp_trigger.{index_name} subscriptions will notify you of all trigger types (including Trade Count) across currency pairs when index_name=any, and will notify you only of the Trade Count trigger when index_name=all.

Block RFQ API changes: 

  • We now display the expires_at timestamp of a quote to the taker. If the displayed quote is an aggregation of multiple MMM quotes, we show the earliest expires_at among the quotes that would be executed. All other quotes are ignored.

API

The following API updates will be included in this release:

Breaking Changes

  • The public/exchange_token method now supports an optional scope parameter. This allows overriding the token scope when creating a new session for a subaccount. Scopes cannot be elevated beyond the caller’s permissions. If no session scope is provided to public/exchange_token then the provided refresh_token (and corresponding access_token) will be invalidated.

Warning

Important (Breaking Change) 

In the previous version, the scope parameter wasn’t available. As of this release, if no scope is provided, the associated refresh_token and access_token will be invalidated. When the scope parameter is provided to public/exchange_token, the created token will no longer include the mainaccount scope.

This affects all implementation relying on the previous  behaviour and may lead to unexpected session terminations if not updated accordingly. 

We recommend explicitly providing a session scope, along with any other required scopes, to both public/auth and public/exchange_token.

More details about access scopes can be found in our API documentation.

  • The methods private/get_portfolio_margins and public/get_portfolio_margins have now been fully removed from the API, following a period of deprecation.

    Tip

    Please head to private/simulate_portfolio to perform simulation on current margin models.

Non-Breaking Changes

  • We have introduced a new public/get_apr_history method. This method retrieves historical APR data for specified currency. This applies to yield-generating tokens, currently including USDE and STETH.

  • The apr field has been added to the /public/get_currencies result. It represents the Simple Moving Average (SMA) of the last 7 days of rewards. If there are fewer than 7 days of reward data, the APR is calculated as the average of the available rewards. This applies to yield-generating tokens, currently including USDE and STETH