Skip to navigation

Pengguna & Aset

Pengguna & Aset: Agent Java SDK integrasi v0.3.0, contoh, parameter, dan semantik respons.

View as Markdown

Panduan ini menargetkan Agent Java SDK v0.3.0, Java 8+, dan kontrak publik yang diberi tag. Contoh dijalankan di backend mitra setelah menginisialisasi client di Mulai Cepat.

Contoh prasyarat

Cuplikan Java membagikan impor ini. Inisialisasi client menggunakan Quick Start dan dapatkan platformUserId dari pengikatan yang disimpan. Contoh ID pengguna/pesanan harus diganti dengan nilai Anda yang tetap.

import com.sixmm.agent.*;
import com.sixmm.agent.model.*;
import java.util.*;

Aturan ID Pengguna

platformUserId adalah 6MM ID pengguna eksternal. Saat ini berupa angka 10 digit rangkaian, misalnya:

1188041528

Aturan:

  • Simpan sebagai string, bukan sebagai bilangan bulat.
  • Jangan membuat, memecahkan kode, atau menyimpulkan makna darinya.
  • Gunakan ID pengguna sisi mitra Anda sebagai agentUserId.
  • Pertahankan hubungan antara agentUserId, platformUserId, dan agentOrderNo.

Ikat Pengguna

Bind membuat atau mengambil hubungan antara pengguna mitra dan 6MM pengguna platform. Sebut saja saat pengguna pertama kali memasuki alur perdagangan atau sebelum transfer pertama ke 6MM.

import com.sixmm.agent.model.BindRequest;
import com.sixmm.agent.model.BindResponse;
BindResponse resp = client.bind(
BindRequest.of("agent-user-001")
.withUsername("alice")
.withExt("{\"source\":\"web\"}"));
System.out.println(resp.platformUserId);
System.out.println(resp.bindStatus);
System.out.println(resp.isSimulatedUser);

Bidang permintaan:

BidangJenisDiperlukanKeterangan
agentUserIdstringYaID pengguna sisi mitra yang unik
usernamestringTIDAKNama tampilan sisi mitra digunakan sebagai nama panggilan pengguna platform
extstringTIDAKBidang ekstensi. String JSON direkomendasikan

Bidang respons:

BidangJenisKeterangan
platformUserIdstring6MM ID pengguna eksternal
bindStatusstringBiasanya BOUND
isSimulatedUserbooleanApakah ini pengguna simulasi

Akun Mitra Kueri

import com.sixmm.agent.model.QueryAccountRequest;
import com.sixmm.agent.model.QueryAccountResponse;
QueryAccountResponse resp = client.queryAccount(QueryAccountRequest.of("USDT"));
System.out.println(resp.agentCode);
System.out.println(resp.agentStatus);
resp.assets.forEach(asset -> {
System.out.println(asset.currency);
System.out.println(asset.depositBalance);
});

Ketika currency tidak ada, SDK menggunakan defaultCurrency.

Kueri Aset Pengguna

import com.sixmm.agent.model.QueryUserAssetsRequest;
import com.sixmm.agent.model.QueryUserAssetsResponse;
QueryUserAssetsResponse resp = client.queryUserAssets(
QueryUserAssetsRequest.of("1188041528"));
System.out.println(resp.walletBalance);
System.out.println(resp.availableBalance);
System.out.println(resp.version);

Bidang:

BidangJenisKeterangan
walletBalancestringSaldo dompet
frozenMarginstringMargin beku
usedMarginstringMargin yang digunakan
availableBalancestringSaldo tersedia
isolatedMarginstringMargin terisolasi
versionint64Versi aset
isSimulatedUserbooleanApakah ini pengguna simulasi

Bedakan ketiga dompet tersebut

dompetSumber keseimbanganmenggunakan
Dompet pengguna Merchant sendiriSistem akuntansi Merchant sendiriSaldo yang tersedia pengguna di sisi pedagang
Pendanaan PlatformqueryUserAssets dari fundingDana perdagangan detik dan transfer timbal balik Pendanaan/Kontrak
Kontrak PlatformBidang aset kontrak queryUserAssetsMargin kontrak perpetual dan saldo yang dapat ditransfer

queryAccount Kueri akun margin platform pedagang, bukan dompet pengguna pedagang. Antarmuka ini tidak memiliki parameter environment dan tidak dapat ditanyakan sebagai aset pengguna yang disimulasikan.

Kueri dua dompet platform pengguna yang disimulasikan:

QueryUserAssetsResponse assets = client.queryUserAssets(
QueryUserAssetsRequest.of(platformUserId)
.withFunding()
.withEnvironment(ExecutionEnvironment.SIMULATED));

Antarmuka: POST /v1/agent/query-user-assets. Pendanaan diminta hanya ketika includeFunding=true; semantik kueri aset kontrak asli digunakan secara default.

bidang responsarti
walletBalance, availableBalance, frozenMargin, usedMargin, isolatedMarginJumlah terkait dompet kontrak
funding.assetCodeSaat ini USDT
funding.availableAmount, heldAmount, totalAmountPendanaan tersedia, ditempati dan jumlah total
funding.materializedApakah akun Pendanaan telah terwujud?
environmentBidang ini digaungkan ketika lingkungan diteruskan secara eksplisit; permintaan lama yang menghilangkan lingkungan tidak mengembalikan bidang ini.
isSimulatedUserKlasifikasi akun; tidak dapat menggantikan pemilihan lingkungan perdagangan

Jumlah ditangani sebagai string atau BigDecimal, bukan float/double.

Sumber dan panduan terkait