curl --request GET \
--url https://test.deribit.com/api/v2/private/reset_api_key \
--header 'Content-Type: application/json' \
--data '
{
"jsonrpc": "2.0",
"id": 6524,
"method": "private/reset_api_key",
"params": {
"id": 3
}
}
'import requests
url = "https://test.deribit.com/api/v2/private/reset_api_key"
payload = {
"jsonrpc": "2.0",
"id": 6524,
"method": "private/reset_api_key",
"params": { "id": 3 }
}
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: 6524, method: 'private/reset_api_key', params: {id: 3}})
};
fetch('https://test.deribit.com/api/v2/private/reset_api_key', 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_api_key",
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' => 6524,
'method' => 'private/reset_api_key',
'params' => [
'id' => 3
]
]),
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_api_key"
payload := strings.NewReader("{\n \"jsonrpc\": \"2.0\",\n \"id\": 6524,\n \"method\": \"private/reset_api_key\",\n \"params\": {\n \"id\": 3\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_api_key")
.header("Content-Type", "application/json")
.body("{\n \"jsonrpc\": \"2.0\",\n \"id\": 6524,\n \"method\": \"private/reset_api_key\",\n \"params\": {\n \"id\": 3\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://test.deribit.com/api/v2/private/reset_api_key")
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\": 6524,\n \"method\": \"private/reset_api_key\",\n \"params\": {\n \"id\": 3\n }\n}"
response = http.request(request)
puts response.read_body{
"jsonrpc": "2.0",
"id": 2453,
"result": {
"timestamp": 1560242482758,
"max_scope": "account:read_write block_trade:read trade:read_write wallet:read_write",
"id": 3,
"enabled": true,
"default": false,
"client_secret": "B6RsF9rrLY5ezEGBQkyLlV-UC7whyPJ34BMA-kKYpes",
"client_id": "1sXMQBhM",
"name": "NewKeyName"
}
}private/reset_api_key
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.
The old secret becomes invalid immediately, and the new secret is returned in the response. Store the new secret securely as it will not be displayed again. All applications using the old secret will need to be updated with the new secret.
๐ Related Article: Creating new API key on Deribit
Scope: account:read_write
curl --request GET \
--url https://test.deribit.com/api/v2/private/reset_api_key \
--header 'Content-Type: application/json' \
--data '
{
"jsonrpc": "2.0",
"id": 6524,
"method": "private/reset_api_key",
"params": {
"id": 3
}
}
'import requests
url = "https://test.deribit.com/api/v2/private/reset_api_key"
payload = {
"jsonrpc": "2.0",
"id": 6524,
"method": "private/reset_api_key",
"params": { "id": 3 }
}
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: 6524, method: 'private/reset_api_key', params: {id: 3}})
};
fetch('https://test.deribit.com/api/v2/private/reset_api_key', 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_api_key",
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' => 6524,
'method' => 'private/reset_api_key',
'params' => [
'id' => 3
]
]),
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_api_key"
payload := strings.NewReader("{\n \"jsonrpc\": \"2.0\",\n \"id\": 6524,\n \"method\": \"private/reset_api_key\",\n \"params\": {\n \"id\": 3\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_api_key")
.header("Content-Type", "application/json")
.body("{\n \"jsonrpc\": \"2.0\",\n \"id\": 6524,\n \"method\": \"private/reset_api_key\",\n \"params\": {\n \"id\": 3\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://test.deribit.com/api/v2/private/reset_api_key")
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\": 6524,\n \"method\": \"private/reset_api_key\",\n \"params\": {\n \"id\": 3\n }\n}"
response = http.request(request)
puts response.read_body{
"jsonrpc": "2.0",
"id": 2453,
"result": {
"timestamp": 1560242482758,
"max_scope": "account:read_write block_trade:read trade:read_write wallet:read_write",
"id": 3,
"enabled": true,
"default": false,
"client_secret": "B6RsF9rrLY5ezEGBQkyLlV-UC7whyPJ34BMA-kKYpes",
"client_id": "1sXMQBhM",
"name": "NewKeyName"
}
}Query Parameters
API key ID
1
Response
Success response
The JSON-RPC version (2.0)
2.0 Hide child attributes
Hide child attributes
Key identifier
1
The timestamp (milliseconds since the Unix epoch)
1536569522277
Client identifier used for authentication
"IY2D68DS"
Client secret or MD5 fingerprint of public key used for authentication
"P9Z_c73KaBPwpoTVfsXzehAhjhdJn5kM7Zlz_hhDhE8"
Describes maximal access for tokens generated with given key. If scope is not provided, its value is set as none.
๐ Related Article: Access Scope
[
"account:read",
"trade:read",
"block_trade:read_write",
"wallet:none"
]Informs whether this api key is default (field is deprecated and will be removed in the future)
false
PEM encoded public key (Ed25519/RSA) used for asymmetric signatures (optional)
"-----BEGIN PUBLIC KEY----- MCowBQYDK2VwAyEApajFN0CSwIaaiIRPiFbiYYvpsLQLSccSLLsKPe984sc= -----END PUBLIC KEY-----"
Informs whether api key is enabled and can be used for authentication
true
Api key name that can be displayed in transaction log
"TestName"
List of enabled advanced on-key features.
Available options:
- restricted_block_trades: Limit the block_trade read the scope of the API key to block trades that have been made using this specific API key
- block_trade_approval: Block trades created using this API key require additional user approval. Methods that use block_rfq scope are not affected by Block Trade approval feature
List of IP addresses whitelisted for a selected key
The id that was sent in the request
Was this page helpful?