curl -X POST https://verification.didit.me/v3/travel-rule/wallet-addresses/ \
-H 'x-api-key: YOUR_API_KEY' -H 'Content-Type: application/json' \
-d '{"address": "0xBeneficiaryWallet01", "chain": "ETH", "holder_name": "Ana Diaz", "self_declared": true}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.travel_rule.wallet_addresses.create(
address="0xBeneficiaryWallet01",
chain="ETH",
holder_vendor_data="user-042",
holder_name="Ana Diaz",
self_declared=True,
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.travelRule.walletAddresses.create({
address: "0xBeneficiaryWallet01",
chain: "ETH",
holder_vendor_data: "user-042",
holder_name: "Ana Diaz",
self_declared: true,
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.TravelRule.WalletAddresses.Create(ctx, didit.WalletAddressEntryCreate{
Address: "0xBeneficiaryWallet01",
Chain: didit.String("ETH"),
HolderVendorData: didit.String("user-042"),
HolderName: didit.String("Ana Diaz"),
SelfDeclared: didit.Bool(true),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.WalletAddressEntryCreate;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.travelRule().walletAddresses().create(WalletAddressEntryCreate.builder()
.address("0xBeneficiaryWallet01")
.chain("ETH")
.holderVendorData("user-042")
.holderName("Ana Diaz")
.selfDeclared(true)
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->travelRule->walletAddresses->create([
'address' => '0xBeneficiaryWallet01',
'chain' => 'ETH',
'holder_vendor_data' => 'user-042',
'holder_name' => 'Ana Diaz',
'self_declared' => true,
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.travel_rule.wallet_addresses.create(
address: "0xBeneficiaryWallet01",
chain: "ETH",
holder_vendor_data: "user-042",
holder_name: "Ana Diaz",
self_declared: true
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.TravelRule.WalletAddresses.CreateAsync(new WalletAddressEntryCreate
{
Address = "0xBeneficiaryWallet01",
Chain = "ETH",
HolderVendorData = "user-042",
HolderName = "Ana Diaz",
SelfDeclared = true,
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"address": "<string>",
"chain": "<string>",
"holder_vendor_data": "<string>",
"holder_name": "<string>",
"entity_type": "<string>",
"is_ownership_verified": true,
"created_at": "2023-11-07T05:31:56Z",
"travel_address": "<string>",
"address_hash": "<string>",
"memo": "<string>",
"receiving_travel_address": "<string>"
}Daftarkan Alamat Dompet API: Buku Alamat Travel Rule
Daftarkan dompet Anda ke buku alamat Travel Rule Didit agar transfer INTERNAL masuk ke dompet itu, opsional terverifikasi lewat deklarasi mandiri.
curl -X POST https://verification.didit.me/v3/travel-rule/wallet-addresses/ \
-H 'x-api-key: YOUR_API_KEY' -H 'Content-Type: application/json' \
-d '{"address": "0xBeneficiaryWallet01", "chain": "ETH", "holder_name": "Ana Diaz", "self_declared": true}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.travel_rule.wallet_addresses.create(
address="0xBeneficiaryWallet01",
chain="ETH",
holder_vendor_data="user-042",
holder_name="Ana Diaz",
self_declared=True,
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.travelRule.walletAddresses.create({
address: "0xBeneficiaryWallet01",
chain: "ETH",
holder_vendor_data: "user-042",
holder_name: "Ana Diaz",
self_declared: true,
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.TravelRule.WalletAddresses.Create(ctx, didit.WalletAddressEntryCreate{
Address: "0xBeneficiaryWallet01",
Chain: didit.String("ETH"),
HolderVendorData: didit.String("user-042"),
HolderName: didit.String("Ana Diaz"),
SelfDeclared: didit.Bool(true),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.WalletAddressEntryCreate;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.travelRule().walletAddresses().create(WalletAddressEntryCreate.builder()
.address("0xBeneficiaryWallet01")
.chain("ETH")
.holderVendorData("user-042")
.holderName("Ana Diaz")
.selfDeclared(true)
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->travelRule->walletAddresses->create([
'address' => '0xBeneficiaryWallet01',
'chain' => 'ETH',
'holder_vendor_data' => 'user-042',
'holder_name' => 'Ana Diaz',
'self_declared' => true,
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.travel_rule.wallet_addresses.create(
address: "0xBeneficiaryWallet01",
chain: "ETH",
holder_vendor_data: "user-042",
holder_name: "Ana Diaz",
self_declared: true
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.TravelRule.WalletAddresses.CreateAsync(new WalletAddressEntryCreate
{
Address = "0xBeneficiaryWallet01",
Chain = "ETH",
HolderVendorData = "user-042",
HolderName = "Ana Diaz",
SelfDeclared = true,
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"address": "<string>",
"chain": "<string>",
"holder_vendor_data": "<string>",
"holder_name": "<string>",
"entity_type": "<string>",
"is_ownership_verified": true,
"created_at": "2023-11-07T05:31:56Z",
"travel_address": "<string>",
"address_hash": "<string>",
"memo": "<string>",
"receiving_travel_address": "<string>"
}Otorisasi
Kunci API aplikasi Anda, dari Developers -> API keys di Business Console. Kunci utama memiliki akses penuh. Kunci bernama dapat diberi cakupan: none, read, atau write per sumber daya, dibatasi pada beberapa alur kerja atau pada sesi yang disetujui, pada daftar alamat IP, dan pada tanggal kedaluwarsa. 401 berarti kuncinya salah, dicabut, atau kedaluwarsa; 403 berarti tidak ada kunci yang dikirimkan, kunci tidak memiliki akses ke sumber daya atau tindakan ini, atau permintaan datang dari alamat di luar daftar IP-nya; 404 pada rute sesi berarti sesi berada di luar alur kerja atau status kunci tersebut. Kunci tanpa akses media menerima URL gambar, video, dan PDF sebagai null, dan kunci tanpa izin tulis sesi menerima tautan sesi dan token sebagai null. Lihat https://docs.didit.me/console/api-keys.
Body
Alamat dompet. Alamat X XRP disimpan sebagai alamat klasik dan tag-nya, sehingga cocok dengan transfer yang mencantumkan salah satu bentuk tersebut.
128Token chain untuk alamat, misalnya ETH atau BTC. Ketika Didit merutekan atau mendaftarkan transfer, Didit mencocokkan entri buku alamat pada alamat dompet dan, jika transfer membawa chain, pada nilai ini juga, dengan mengabaikan huruf besar/kecil. Chain dari transfer adalah beneficiary_data.chain, diisi dari chain kripto transaksi atau simbol mata uang (misalnya ETH) jika Anda tidak mengirimkannya, atau chain dari pendaftaran setelah deposit, jadi gunakan token yang sama di semua tempat. Entri dengan chain kosong cocok dengan chain apa pun. Chain yang dikenal disimpan di bawah satu pengidentifikasi kanonis apa pun ejaan yang Anda kirimkan: "ethereum", "Ethereum", dan "ERC20" semuanya disimpan sebagai ETH, "BNB Smart Chain" dan "BEP20" sebagai BNB, "tron" sebagai TRX. Nama chain yang tidak dikenal disimpan sebagaimana diberikan.
3225525516Hanya-tulis. Jika true, entri dibuat dalam keadaan kepemilikannya sudah diverifikasi melalui bukti SELF_DECLARATION. Mengembalikan 400 ketika allow_self_declaration dinonaktifkan di pengaturan Travel Rule Anda.
Opsional. Travel Address VASP pihak lawan untuk dompet ini, yang mengaktifkan perutean TRP untuk aset yang didukung TRP (BTC, ETH, dan USDC pada jaringan yang disebutkan). Travel Address yang tidak valid mengembalikan 400.
512Opsional. Tag tujuan atau memo yang merupakan bagian dari dompet. XRP: tag tujuan, bilangan bulat dari 0 hingga 4294967295 (angka JSON diterima). XLM: memo teks hingga 28 byte, ID 64-bit, atau hash 32-byte dalam hex. EOS: hingga 256 byte. ATOM: hingga 256 karakter. HBAR: hingga 100 byte. Dompet Bitcoin, EVM, Solana, Tron, Litecoin, Bitcoin Cash, Dogecoin, dan Lightning tidak menerima memo: jika disertakan akan menghasilkan 400. Alias: destinationTag atau destination_tag.
256Respons
Entri yang dibuat.
Alamat dompet; "" untuk entri yang diimpor hanya berdasarkan hash-nya. Unik per aplikasi, rantai, dan memo, dengan membandingkan alamat tanpa memperhatikan huruf besar/kecil. Setelah Anda menghapus entri, Anda dapat mendaftarkan alamat yang sama lagi.
Token chain untuk alamat, misalnya ETH atau BTC. Saat Didit merutekan atau mendaftarkan transfer, Didit mencocokkan entri buku alamat pada alamat dompet dan, jika transfer menyertakan chain, pada nilai ini juga, mengabaikan perbedaan huruf besar/kecil. Chain suatu transfer adalah beneficiary_data.chain, diisi dari chain kripto atau simbol mata uang transaksi (misalnya ETH) saat Anda tidak mengirimkannya, atau chain dari pendaftaran pascadeposit, jadi gunakan token yang sama di mana saja. Entri dengan chain kosong cocok dengan chain mana pun. Penerima pembayaran Lightning (ID node atau Lightning Address) yang terdaftar di bitcoin disimpan dalam huruf kecil pada LIGHTNING, tempat transfer Lightning dicocokkan. Chain yang dikenal disimpan di bawah satu pengidentifikasi kanonik apa pun ejaan yang Anda kirimkan: "ethereum", "Ethereum", dan "ERC20" semuanya disimpan sebagai ETH, "BNB Smart Chain" dan "BEP20" sebagai BNB, "tron" sebagai TRX. Nama chain yang tidak dikenal disimpan sebagaimana diberikan.
Pengenal internal Anda untuk pemegang.
Nama pemegang dompet, digunakan untuk pencocokan nama penerima.
Teks bebas, secara default bernilai "individual".
Hanya-baca. Apakah kepemilikan alamat ini telah terbukti.
Travel Address milik VASP pihak lawan untuk dompet ini, jika diketahui. Memungkinkan Didit merutekan transfer penerima ini melalui jalur TRP, untuk aset yang didukung TRP (BTC, ETH, dan USDC pada jaringan yang disebutkan).
Hanya-baca. SHA-256 dari alamat yang diubah menjadi huruf kecil, dalam heksadesimal huruf kecil. Entri yang diimpor hanya berdasarkan hash-nya akan dicocokkan pada nilai ini.
Destination tag atau memo yang merupakan bagian dari dompet di jaringan memo (XRP, XLM, EOS, ATOM, HBAR); "" untuk seluruh alamat. Entri dengan memo hanya cocok dengan transfer yang mencantumkan memo tersebut; entri tanpa memo cocok dengan seluruh alamat.
Travel Address per-dompet Anda untuk dompet ini: berikan kepada VASP pengirim agar permintaan TRP-nya menyebut dompet ini. Kosong untuk dompet yang tercatat sebagai milik VASP lain, saat Travel Rule dinonaktifkan, dan sebelum profil VASP Anda disimpan.