Skip to main content
cURL
curl --request GET \
  --url https://test.deribit.com/api/v2/private/reset_mmp \
  --header 'Content-Type: application/json' \
  --data '
{
  "jsonrpc": "2.0",
  "id": 7859,
  "method": "private/reset_mmp",
  "params": {
    "index_name": "btc_usd",
    "mmp_group": "MassQuoteBot7"
  }
}
'
import requests

url = "https://test.deribit.com/api/v2/private/reset_mmp"

payload = {
"jsonrpc": "2.0",
"id": 7859,
"method": "private/reset_mmp",
"params": {
"index_name": "btc_usd",
"mmp_group": "MassQuoteBot7"
}
}
headers = {"Content-Type": "application/json"}

response = requests.get(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'GET',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
jsonrpc: '2.0',
id: 7859,
method: 'private/reset_mmp',
params: {index_name: 'btc_usd', mmp_group: 'MassQuoteBot7'}
})
};

fetch('https://test.deribit.com/api/v2/private/reset_mmp', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://test.deribit.com/api/v2/private/reset_mmp",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_POSTFIELDS => json_encode([
'jsonrpc' => '2.0',
'id' => 7859,
'method' => 'private/reset_mmp',
'params' => [
'index_name' => 'btc_usd',
'mmp_group' => 'MassQuoteBot7'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://test.deribit.com/api/v2/private/reset_mmp"

payload := strings.NewReader("{\n \"jsonrpc\": \"2.0\",\n \"id\": 7859,\n \"method\": \"private/reset_mmp\",\n \"params\": {\n \"index_name\": \"btc_usd\",\n \"mmp_group\": \"MassQuoteBot7\"\n }\n}")

req, _ := http.NewRequest("GET", url, payload)

req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.get("https://test.deribit.com/api/v2/private/reset_mmp")
.header("Content-Type", "application/json")
.body("{\n \"jsonrpc\": \"2.0\",\n \"id\": 7859,\n \"method\": \"private/reset_mmp\",\n \"params\": {\n \"index_name\": \"btc_usd\",\n \"mmp_group\": \"MassQuoteBot7\"\n }\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://test.deribit.com/api/v2/private/reset_mmp")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"jsonrpc\": \"2.0\",\n \"id\": 7859,\n \"method\": \"private/reset_mmp\",\n \"params\": {\n \"index_name\": \"btc_usd\",\n \"mmp_group\": \"MassQuoteBot7\"\n }\n}"

response = http.request(request)
puts response.read_body
{
  "jsonrpc": "2.0",
  "id": 1569,
  "result": "ok"
}

Query Parameters

index_name
string
required

Currency pair for which to reset MMP limits.

For regular MMP (block_rfq = false): Must be a specific currency pair (e.g., "btc_usd", "eth_usd"). The value "all" is not allowed.

For Block RFQ MMP (block_rfq = true): Can be either a specific currency pair or "all" to reset MMP limits across all currency pairs.

Example:

"btc_usd"

mmp_group
string

Specifies the MMP group for which limits are being reset.

Omitting this parameter is explicitly allowed and targets the orders MMP group โ€” the default group used for regular orders with the mmp flag set. This is not an error or an incomplete request; it is the correct way to reset the orders MMP group.

Passing an explicit empty string ("") is not allowed and returns an error. Only omitting the parameter reaches the orders MMP group.

๐Ÿ“– Related Article: Mass Quotes Specifications

Example:

"MassQuoteBot7"

block_rfq
boolean
default:false

If true, resets MMP for Block RFQ. When set, requires block_rfq scope instead of trade scope. Block RFQ MMP settings are completely separate from normal order/quote MMP settings. When block_rfq = true, the index_name parameter can be set to "all" to reset limits across all currency pairs.

Response

200 - application/json

Success response

jsonrpc
enum<string>
required

The JSON-RPC version (2.0)

Available options:
2.0
result
enum<string>
required

Result of method execution. ok in case of success

Available options:
ok
id
integer

The id that was sent in the request