Get Whitelisted Addresses
curl --request GET \
--url https://api.example.com/v1/wallet/whitelist \
--header 'Authorization: <authorization>' \
--header 'x-client-key: <x-client-key>'import requests
url = "https://api.example.com/v1/wallet/whitelist"
headers = {
"x-client-key": "<x-client-key>",
"Authorization": "<authorization>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'x-client-key': '<x-client-key>', Authorization: '<authorization>'}
};
fetch('https://api.example.com/v1/wallet/whitelist', 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://api.example.com/v1/wallet/whitelist",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"x-client-key: <x-client-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/wallet/whitelist"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-client-key", "<x-client-key>")
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/v1/wallet/whitelist")
.header("x-client-key", "<x-client-key>")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/wallet/whitelist")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-client-key"] = '<x-client-key>'
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body[
{
"id": "d7ed0d12-270c-4491-b1a4-bebf2cc42b5c",
"name": "Binance Account | Primary",
"beneficiaryFirstName": "John",
"beneficiaryLastName": "Doe",
"walletAddress": "rNxp4h8apvRis6mJf9Sh8C6iRxfrDWN7AA",
"walletMemo": "66",
"currency": "xrp",
"lastUsedAt": "2025-08-12T13:44:47.287Z",
"createdAt": "2025-08-11T13:44:47.287Z"
},
{
"id": "a3f2e1d4-c5b6-47a8-9e0f-1d2c3b4a5e6f",
"name": "Kraken Exchange",
"beneficiaryFirstName": "John",
"beneficiaryLastName": "Doe",
"walletAddress": "rPEPPER7kfTD9w2To4CQk6UCfuHM9c6GDY",
"walletMemo": "12345",
"currency": "xrp",
"lastUsedAt": null,
"createdAt": "2025-08-10T10:30:22.123Z"
}
]
{
"message": "Not authenticated"
}
{
"message": "currency parameter is required"
}
Wallet
Get Whitelisted Addresses
Retrieve pre-approved external wallet addresses for secure withdrawals
GET
/
v1
/
wallet
/
whitelist
Get Whitelisted Addresses
curl --request GET \
--url https://api.example.com/v1/wallet/whitelist \
--header 'Authorization: <authorization>' \
--header 'x-client-key: <x-client-key>'import requests
url = "https://api.example.com/v1/wallet/whitelist"
headers = {
"x-client-key": "<x-client-key>",
"Authorization": "<authorization>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'x-client-key': '<x-client-key>', Authorization: '<authorization>'}
};
fetch('https://api.example.com/v1/wallet/whitelist', 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://api.example.com/v1/wallet/whitelist",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"x-client-key: <x-client-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/wallet/whitelist"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-client-key", "<x-client-key>")
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/v1/wallet/whitelist")
.header("x-client-key", "<x-client-key>")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/wallet/whitelist")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-client-key"] = '<x-client-key>'
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body[
{
"id": "d7ed0d12-270c-4491-b1a4-bebf2cc42b5c",
"name": "Binance Account | Primary",
"beneficiaryFirstName": "John",
"beneficiaryLastName": "Doe",
"walletAddress": "rNxp4h8apvRis6mJf9Sh8C6iRxfrDWN7AA",
"walletMemo": "66",
"currency": "xrp",
"lastUsedAt": "2025-08-12T13:44:47.287Z",
"createdAt": "2025-08-11T13:44:47.287Z"
},
{
"id": "a3f2e1d4-c5b6-47a8-9e0f-1d2c3b4a5e6f",
"name": "Kraken Exchange",
"beneficiaryFirstName": "John",
"beneficiaryLastName": "Doe",
"walletAddress": "rPEPPER7kfTD9w2To4CQk6UCfuHM9c6GDY",
"walletMemo": "12345",
"currency": "xrp",
"lastUsedAt": null,
"createdAt": "2025-08-10T10:30:22.123Z"
}
]
{
"message": "Not authenticated"
}
{
"message": "currency parameter is required"
}
Overview
Whitelist management provides an additional security layer for withdrawals from internal (custodial) wallets. Whitelisted addresses are pre-approved withdrawal destinations that have been verified and saved for secure fund transfers. Security Benefits:- Pre-approve trusted addresses before withdrawal
- Prevent withdrawal to unauthorized addresses
- Maintain audit trail of approved destinations
- Track usage history of whitelisted addresses
- Add frequently used exchange addresses
- Pre-approve personal wallet addresses
- Manage beneficiary addresses for business accounts
- Implement security policies requiring address approval
Get all whitelisted addresses for a specific currency.
Authentication
string
required
Your public API client key
string
required
Bearer token for authentication
Query Parameters
string
required
Currency of the desired whitelisted addresses (e.g., “xrp”, “usdc”, “eth”)
boolean
default:false
Route to US backend environment
Response
string
Unique whitelist entry identifier
string
Friendly name or label for the address
string
Beneficiary’s first name
string
Beneficiary’s last name
string
Blockchain address
string
Memo/destination tag (for XRP, Stellar, etc.)
string
Currency code
string
ISO 8601 timestamp of last withdrawal to this address
string
ISO 8601 timestamp of when address was whitelisted
[
{
"id": "d7ed0d12-270c-4491-b1a4-bebf2cc42b5c",
"name": "Binance Account | Primary",
"beneficiaryFirstName": "John",
"beneficiaryLastName": "Doe",
"walletAddress": "rNxp4h8apvRis6mJf9Sh8C6iRxfrDWN7AA",
"walletMemo": "66",
"currency": "xrp",
"lastUsedAt": "2025-08-12T13:44:47.287Z",
"createdAt": "2025-08-11T13:44:47.287Z"
},
{
"id": "a3f2e1d4-c5b6-47a8-9e0f-1d2c3b4a5e6f",
"name": "Kraken Exchange",
"beneficiaryFirstName": "John",
"beneficiaryLastName": "Doe",
"walletAddress": "rPEPPER7kfTD9w2To4CQk6UCfuHM9c6GDY",
"walletMemo": "12345",
"currency": "xrp",
"lastUsedAt": null,
"createdAt": "2025-08-10T10:30:22.123Z"
}
]
{
"message": "Not authenticated"
}
{
"message": "currency parameter is required"
}
curl -X GET "https://dev.api.baanx.com/v1/wallet/whitelist?currency=xrp" \
-H "x-client-key: YOUR_CLIENT_KEY" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
import requests
url = "https://dev.api.baanx.com/v1/wallet/whitelist"
headers = {
"x-client-key": "YOUR_CLIENT_KEY",
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
params = {"currency": "xrp"}
response = requests.get(url, headers=headers, params=params)
whitelisted = response.json()
print(f"Whitelisted XRP addresses: {len(whitelisted)}")
for address in whitelisted:
print(f"\n{address['name']}")
print(f" Address: {address['walletAddress']}")
if address['walletMemo']:
print(f" Memo: {address['walletMemo']}")
print(f" Beneficiary: {address['beneficiaryFirstName']} {address['beneficiaryLastName']}")
if address['lastUsedAt']:
print(f" Last used: {address['lastUsedAt']}")
interface WhitelistedAddress {
id: string;
name: string;
beneficiaryFirstName: string;
beneficiaryLastName: string;
walletAddress: string;
walletMemo: string | null;
currency: string;
lastUsedAt: string | null;
createdAt: string;
}
async function getWhitelistedAddresses(
currency: string
): Promise<WhitelistedAddress[]> {
const response = await fetch(
`https://dev.api.baanx.com/v1/wallet/whitelist?currency=${currency}`,
{
headers: {
'x-client-key': 'YOUR_CLIENT_KEY',
'Authorization': 'Bearer YOUR_ACCESS_TOKEN'
}
}
);
return await response.json();
}
const xrpAddresses = await getWhitelistedAddresses('xrp');
console.log(`Found ${xrpAddresses.length} whitelisted XRP addresses`);
Important Notes
Memo Requirements: For networks like XRP and Stellar, the combination of address + memo identifies the destination. Always include both when whitelisting exchange addresses.
Usage Tracking: The
lastUsedAt field helps identify frequently vs rarely used addresses. Consider removing unused addresses periodically.Descriptive Names: Use clear, descriptive names that help identify the purpose and destination of each whitelisted address (e.g., “Binance Main Account | Trading”).
Related Endpoints
- Add Addresses to Whitelist - Add new pre-approved addresses
- Remove Addresses from Whitelist - Remove whitelisted addresses
- Withdraw from Internal Wallet - Use whitelisted addresses for secure withdrawals
- Get Internal Wallets - View internal wallets that can withdraw to whitelist
Was this page helpful?