curl --request GET \
--url https://test.deribit.com/api/v2/private/save_address_beneficiary \
--header 'Content-Type: application/json' \
--data @- <<EOF
{
"jsonrpc": "2.0",
"id": 42,
"method": "private/save_address_beneficiary",
"params": {
"currency": "BTC",
"address": "bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj",
"agreed": true,
"personal": false,
"unhosted": false,
"beneficiary_vasp_name": "Money's Gone",
"beneficiary_vasp_did": "did:example:123456789abcdefghi",
"beneficiary_vasp_website": "https://example.com",
"beneficiary_first_name": "John",
"beneficiary_last_name": "Doe",
"beneficiary_company_name": "Example Corp",
"beneficiary_address": "NL, Amsterdam, Street, 1"
}
}
EOFimport requests
url = "https://test.deribit.com/api/v2/private/save_address_beneficiary"
payload = {
"jsonrpc": "2.0",
"id": 42,
"method": "private/save_address_beneficiary",
"params": {
"currency": "BTC",
"address": "bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj",
"agreed": True,
"personal": False,
"unhosted": False,
"beneficiary_vasp_name": "Money's Gone",
"beneficiary_vasp_did": "did:example:123456789abcdefghi",
"beneficiary_vasp_website": "https://example.com",
"beneficiary_first_name": "John",
"beneficiary_last_name": "Doe",
"beneficiary_company_name": "Example Corp",
"beneficiary_address": "NL, Amsterdam, Street, 1"
}
}
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: 42,
method: 'private/save_address_beneficiary',
params: {
currency: 'BTC',
address: 'bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj',
agreed: true,
personal: false,
unhosted: false,
beneficiary_vasp_name: 'Money\'s Gone',
beneficiary_vasp_did: 'did:example:123456789abcdefghi',
beneficiary_vasp_website: 'https://example.com',
beneficiary_first_name: 'John',
beneficiary_last_name: 'Doe',
beneficiary_company_name: 'Example Corp',
beneficiary_address: 'NL, Amsterdam, Street, 1'
}
})
};
fetch('https://test.deribit.com/api/v2/private/save_address_beneficiary', 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/save_address_beneficiary",
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' => 42,
'method' => 'private/save_address_beneficiary',
'params' => [
'currency' => 'BTC',
'address' => 'bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj',
'agreed' => true,
'personal' => false,
'unhosted' => false,
'beneficiary_vasp_name' => 'Money\'s Gone',
'beneficiary_vasp_did' => 'did:example:123456789abcdefghi',
'beneficiary_vasp_website' => 'https://example.com',
'beneficiary_first_name' => 'John',
'beneficiary_last_name' => 'Doe',
'beneficiary_company_name' => 'Example Corp',
'beneficiary_address' => 'NL, Amsterdam, Street, 1'
]
]),
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/save_address_beneficiary"
payload := strings.NewReader("{\n \"jsonrpc\": \"2.0\",\n \"id\": 42,\n \"method\": \"private/save_address_beneficiary\",\n \"params\": {\n \"currency\": \"BTC\",\n \"address\": \"bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj\",\n \"agreed\": true,\n \"personal\": false,\n \"unhosted\": false,\n \"beneficiary_vasp_name\": \"Money's Gone\",\n \"beneficiary_vasp_did\": \"did:example:123456789abcdefghi\",\n \"beneficiary_vasp_website\": \"https://example.com\",\n \"beneficiary_first_name\": \"John\",\n \"beneficiary_last_name\": \"Doe\",\n \"beneficiary_company_name\": \"Example Corp\",\n \"beneficiary_address\": \"NL, Amsterdam, Street, 1\"\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/save_address_beneficiary")
.header("Content-Type", "application/json")
.body("{\n \"jsonrpc\": \"2.0\",\n \"id\": 42,\n \"method\": \"private/save_address_beneficiary\",\n \"params\": {\n \"currency\": \"BTC\",\n \"address\": \"bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj\",\n \"agreed\": true,\n \"personal\": false,\n \"unhosted\": false,\n \"beneficiary_vasp_name\": \"Money's Gone\",\n \"beneficiary_vasp_did\": \"did:example:123456789abcdefghi\",\n \"beneficiary_vasp_website\": \"https://example.com\",\n \"beneficiary_first_name\": \"John\",\n \"beneficiary_last_name\": \"Doe\",\n \"beneficiary_company_name\": \"Example Corp\",\n \"beneficiary_address\": \"NL, Amsterdam, Street, 1\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://test.deribit.com/api/v2/private/save_address_beneficiary")
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\": 42,\n \"method\": \"private/save_address_beneficiary\",\n \"params\": {\n \"currency\": \"BTC\",\n \"address\": \"bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj\",\n \"agreed\": true,\n \"personal\": false,\n \"unhosted\": false,\n \"beneficiary_vasp_name\": \"Money's Gone\",\n \"beneficiary_vasp_did\": \"did:example:123456789abcdefghi\",\n \"beneficiary_vasp_website\": \"https://example.com\",\n \"beneficiary_first_name\": \"John\",\n \"beneficiary_last_name\": \"Doe\",\n \"beneficiary_company_name\": \"Example Corp\",\n \"beneficiary_address\": \"NL, Amsterdam, Street, 1\"\n }\n}"
response = http.request(request)
puts response.read_body{
"jsonrpc": "2.0",
"id": 42,
"result": {
"currency": "BTC",
"address": "bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj",
"user_id": 1016,
"agreed": true,
"personal": false,
"unhosted": false,
"beneficiary_vasp_name": "Money's Gone",
"beneficiary_vasp_did": "did:example:123456789abcdefghi",
"beneficiary_vasp_website": "https://example.com",
"beneficiary_first_name": "John",
"beneficiary_last_name": "Doe",
"beneficiary_company_name": "Example Corp",
"beneficiary_address": "NL, Amsterdam, Street, 1",
"created": 1536569522277,
"updated": 1536569522277
}
}private/save_address_beneficiary
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.
๐ Related Article: Managing Withdrawals
Scope: wallet:read_write
curl --request GET \
--url https://test.deribit.com/api/v2/private/save_address_beneficiary \
--header 'Content-Type: application/json' \
--data @- <<EOF
{
"jsonrpc": "2.0",
"id": 42,
"method": "private/save_address_beneficiary",
"params": {
"currency": "BTC",
"address": "bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj",
"agreed": true,
"personal": false,
"unhosted": false,
"beneficiary_vasp_name": "Money's Gone",
"beneficiary_vasp_did": "did:example:123456789abcdefghi",
"beneficiary_vasp_website": "https://example.com",
"beneficiary_first_name": "John",
"beneficiary_last_name": "Doe",
"beneficiary_company_name": "Example Corp",
"beneficiary_address": "NL, Amsterdam, Street, 1"
}
}
EOFimport requests
url = "https://test.deribit.com/api/v2/private/save_address_beneficiary"
payload = {
"jsonrpc": "2.0",
"id": 42,
"method": "private/save_address_beneficiary",
"params": {
"currency": "BTC",
"address": "bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj",
"agreed": True,
"personal": False,
"unhosted": False,
"beneficiary_vasp_name": "Money's Gone",
"beneficiary_vasp_did": "did:example:123456789abcdefghi",
"beneficiary_vasp_website": "https://example.com",
"beneficiary_first_name": "John",
"beneficiary_last_name": "Doe",
"beneficiary_company_name": "Example Corp",
"beneficiary_address": "NL, Amsterdam, Street, 1"
}
}
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: 42,
method: 'private/save_address_beneficiary',
params: {
currency: 'BTC',
address: 'bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj',
agreed: true,
personal: false,
unhosted: false,
beneficiary_vasp_name: 'Money\'s Gone',
beneficiary_vasp_did: 'did:example:123456789abcdefghi',
beneficiary_vasp_website: 'https://example.com',
beneficiary_first_name: 'John',
beneficiary_last_name: 'Doe',
beneficiary_company_name: 'Example Corp',
beneficiary_address: 'NL, Amsterdam, Street, 1'
}
})
};
fetch('https://test.deribit.com/api/v2/private/save_address_beneficiary', 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/save_address_beneficiary",
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' => 42,
'method' => 'private/save_address_beneficiary',
'params' => [
'currency' => 'BTC',
'address' => 'bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj',
'agreed' => true,
'personal' => false,
'unhosted' => false,
'beneficiary_vasp_name' => 'Money\'s Gone',
'beneficiary_vasp_did' => 'did:example:123456789abcdefghi',
'beneficiary_vasp_website' => 'https://example.com',
'beneficiary_first_name' => 'John',
'beneficiary_last_name' => 'Doe',
'beneficiary_company_name' => 'Example Corp',
'beneficiary_address' => 'NL, Amsterdam, Street, 1'
]
]),
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/save_address_beneficiary"
payload := strings.NewReader("{\n \"jsonrpc\": \"2.0\",\n \"id\": 42,\n \"method\": \"private/save_address_beneficiary\",\n \"params\": {\n \"currency\": \"BTC\",\n \"address\": \"bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj\",\n \"agreed\": true,\n \"personal\": false,\n \"unhosted\": false,\n \"beneficiary_vasp_name\": \"Money's Gone\",\n \"beneficiary_vasp_did\": \"did:example:123456789abcdefghi\",\n \"beneficiary_vasp_website\": \"https://example.com\",\n \"beneficiary_first_name\": \"John\",\n \"beneficiary_last_name\": \"Doe\",\n \"beneficiary_company_name\": \"Example Corp\",\n \"beneficiary_address\": \"NL, Amsterdam, Street, 1\"\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/save_address_beneficiary")
.header("Content-Type", "application/json")
.body("{\n \"jsonrpc\": \"2.0\",\n \"id\": 42,\n \"method\": \"private/save_address_beneficiary\",\n \"params\": {\n \"currency\": \"BTC\",\n \"address\": \"bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj\",\n \"agreed\": true,\n \"personal\": false,\n \"unhosted\": false,\n \"beneficiary_vasp_name\": \"Money's Gone\",\n \"beneficiary_vasp_did\": \"did:example:123456789abcdefghi\",\n \"beneficiary_vasp_website\": \"https://example.com\",\n \"beneficiary_first_name\": \"John\",\n \"beneficiary_last_name\": \"Doe\",\n \"beneficiary_company_name\": \"Example Corp\",\n \"beneficiary_address\": \"NL, Amsterdam, Street, 1\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://test.deribit.com/api/v2/private/save_address_beneficiary")
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\": 42,\n \"method\": \"private/save_address_beneficiary\",\n \"params\": {\n \"currency\": \"BTC\",\n \"address\": \"bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj\",\n \"agreed\": true,\n \"personal\": false,\n \"unhosted\": false,\n \"beneficiary_vasp_name\": \"Money's Gone\",\n \"beneficiary_vasp_did\": \"did:example:123456789abcdefghi\",\n \"beneficiary_vasp_website\": \"https://example.com\",\n \"beneficiary_first_name\": \"John\",\n \"beneficiary_last_name\": \"Doe\",\n \"beneficiary_company_name\": \"Example Corp\",\n \"beneficiary_address\": \"NL, Amsterdam, Street, 1\"\n }\n}"
response = http.request(request)
puts response.read_body{
"jsonrpc": "2.0",
"id": 42,
"result": {
"currency": "BTC",
"address": "bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf0uyj",
"user_id": 1016,
"agreed": true,
"personal": false,
"unhosted": false,
"beneficiary_vasp_name": "Money's Gone",
"beneficiary_vasp_did": "did:example:123456789abcdefghi",
"beneficiary_vasp_website": "https://example.com",
"beneficiary_first_name": "John",
"beneficiary_last_name": "Doe",
"beneficiary_company_name": "Example Corp",
"beneficiary_address": "NL, Amsterdam, Street, 1",
"created": 1536569522277,
"updated": 1536569522277
}
}Query Parameters
The currency symbol
Currency, i.e "BTC", "ETH", "USDC"
BTC, ETH, STETH, ETHW, USDC, USDT, EURR, SOL, XRP, USYC, PAXG, BNB, USDE Address in currency format
Tag for XRP addresses
Indicates that the user agreed to shared provided information with 3rd parties
true
The user confirms that he provided address belongs to him and he has access to it via an un-hosted wallet software
true
Indicates if the address belongs to an unhosted wallet
Name of beneficiary VASP
"Money's Gone"
DID of beneficiary VASP
"did:example:123456789abcdefghi"
Website of the beneficiary VASP
First name of beneficiary (if beneficiary is a person) First name of the beneficiary (if beneficiary is a person)
"John"
First name of beneficiary (if beneficiary is a person) Last name of the beneficiary (if beneficiary is a person)
"Doe"
Beneficiary company name (if beneficiary is a company) Company name of the beneficiary (if beneficiary is a company)
"Company Name"
Geographical address of the beneficiary
"NL, Amsterdam, Street, 1"
Response
Success response
The JSON-RPC version (2.0)
2.0 Hide child attributes
Hide child attributes
Currency, i.e "BTC", "ETH", "USDC"
BTC, ETH, USDC, USDT, EURR Address in proper format for currency
"1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa"
Unique user identifier
57874
Indicates that the user agreed to shared provided information with 3rd parties
true
The user confirms that he provided address belongs to him and he has access to it via an un-hosted wallet software
true
Indicates if the address belongs to an unhosted wallet
false
Name of beneficiary VASP
"Money's Gone"
DID of beneficiary VASP
"did:example:123456789abcdefghi"
Geographical address of the beneficiary
"NL, Amsterdam, Street, 1"
The timestamp (milliseconds since the Unix epoch)
1536569522277
The timestamp (milliseconds since the Unix epoch)
1536569522277
Tag for XRP addresses (optional)
Website of the beneficiary VASP
First name of the beneficiary (if beneficiary is a person)
"John"
Last name of the beneficiary (if beneficiary is a person)
"Doe"
Company name of the beneficiary (if beneficiary is a company)
"Company Name"
The id that was sent in the request
Was this page helpful?