curl --request POST \
--url https://api.obiex.finance/v1/addresses/broker \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"uniqueUserIdentifier": "user-7c0406db-05a2-4832-ab13-776a4a145353",
"currency": "USDT",
"network": "TRX"
}
'import requests
url = "https://api.obiex.finance/v1/addresses/broker"
payload = {
"uniqueUserIdentifier": "user-7c0406db-05a2-4832-ab13-776a4a145353",
"currency": "USDT",
"network": "TRX"
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
uniqueUserIdentifier: 'user-7c0406db-05a2-4832-ab13-776a4a145353',
currency: 'USDT',
network: 'TRX'
})
};
fetch('https://api.obiex.finance/v1/addresses/broker', 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.obiex.finance/v1/addresses/broker",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'uniqueUserIdentifier' => 'user-7c0406db-05a2-4832-ab13-776a4a145353',
'currency' => 'USDT',
'network' => 'TRX'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.obiex.finance/v1/addresses/broker"
payload := strings.NewReader("{\n \"uniqueUserIdentifier\": \"user-7c0406db-05a2-4832-ab13-776a4a145353\",\n \"currency\": \"USDT\",\n \"network\": \"TRX\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
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.post("https://api.obiex.finance/v1/addresses/broker")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"uniqueUserIdentifier\": \"user-7c0406db-05a2-4832-ab13-776a4a145353\",\n \"currency\": \"USDT\",\n \"network\": \"TRX\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.obiex.finance/v1/addresses/broker")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"uniqueUserIdentifier\": \"user-7c0406db-05a2-4832-ab13-776a4a145353\",\n \"currency\": \"USDT\",\n \"network\": \"TRX\"\n}"
response = http.request(request)
puts response.read_body{
"message": "Ok",
"data": {
"id": "fa4b5561-006f-4b98-aa3e-7818067ff56a",
"createdAt": "2026-03-26T15:37:58.694Z",
"updatedAt": "2026-03-26T15:37:58.694Z",
"active": true,
"value": "0xA47Fed9EbDC84A9ac954B7e0a61B7A099175B63a",
"reference": "1779fb8c-7e59-44c8-904f-2c3e84fd21bc",
"network": "ETH",
"memo": null,
"uniqueUserIdentifier": "user-7c0406db-05a2-4832-ab13-776a4a145353",
"userId": "51ec42a0-6c2f-4435-86ed-fa7bae079a57",
"isMaster": false,
"deletedAt": null
}
}Create Deposit Address
Generates (or returns the existing) deposit address for a user on a currency/network pair.
Before calling this endpoint, call Get Active Networks and confirm that isReceivable is true for the currency/network pair. If isReceivable is false, the request fails with an error.
Send the currency code and network code — not the currency or network name.
curl --request POST \
--url https://api.obiex.finance/v1/addresses/broker \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"uniqueUserIdentifier": "user-7c0406db-05a2-4832-ab13-776a4a145353",
"currency": "USDT",
"network": "TRX"
}
'import requests
url = "https://api.obiex.finance/v1/addresses/broker"
payload = {
"uniqueUserIdentifier": "user-7c0406db-05a2-4832-ab13-776a4a145353",
"currency": "USDT",
"network": "TRX"
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
uniqueUserIdentifier: 'user-7c0406db-05a2-4832-ab13-776a4a145353',
currency: 'USDT',
network: 'TRX'
})
};
fetch('https://api.obiex.finance/v1/addresses/broker', 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.obiex.finance/v1/addresses/broker",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'uniqueUserIdentifier' => 'user-7c0406db-05a2-4832-ab13-776a4a145353',
'currency' => 'USDT',
'network' => 'TRX'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.obiex.finance/v1/addresses/broker"
payload := strings.NewReader("{\n \"uniqueUserIdentifier\": \"user-7c0406db-05a2-4832-ab13-776a4a145353\",\n \"currency\": \"USDT\",\n \"network\": \"TRX\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
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.post("https://api.obiex.finance/v1/addresses/broker")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"uniqueUserIdentifier\": \"user-7c0406db-05a2-4832-ab13-776a4a145353\",\n \"currency\": \"USDT\",\n \"network\": \"TRX\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.obiex.finance/v1/addresses/broker")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"uniqueUserIdentifier\": \"user-7c0406db-05a2-4832-ab13-776a4a145353\",\n \"currency\": \"USDT\",\n \"network\": \"TRX\"\n}"
response = http.request(request)
puts response.read_body{
"message": "Ok",
"data": {
"id": "fa4b5561-006f-4b98-aa3e-7818067ff56a",
"createdAt": "2026-03-26T15:37:58.694Z",
"updatedAt": "2026-03-26T15:37:58.694Z",
"active": true,
"value": "0xA47Fed9EbDC84A9ac954B7e0a61B7A099175B63a",
"reference": "1779fb8c-7e59-44c8-904f-2c3e84fd21bc",
"network": "ETH",
"memo": null,
"uniqueUserIdentifier": "user-7c0406db-05a2-4832-ab13-776a4a145353",
"userId": "51ec42a0-6c2f-4435-86ed-fa7bae079a57",
"isMaster": false,
"deletedAt": null
}
}Authorizations
Headers
Body
A unique identifier for your user. Letters, numbers and hyphens only. Reusing an identifier returns the existing address for that currency/network.
50Currency code, for example USDT. Always pass the currency code (for example USDT), not the currency name (for example Tether).
Network code, for example TRX. Must be a network where isReceivable is true for this currency. Always pass the network code (networkCode from Get Active Networks, for example TRX), not the network name (for example Tron (TRC20)).
Was this page helpful?