탐색으로 건너뛰기

사용자 및 자산

사용자 및 자산: Agent Java SDK v0.3.0 통합, 예시, 매개변수 및 응답 의미 체계.

Markdown으로 보기

이 가이드는 Agent Java SDK v0.3.0, Java 8+ 및 태그된 공개 계약을 대상으로 합니다. 예제는 client를 초기화한 후 파트너 백엔드에서 실행됩니다. 빠른 시작.

예시 전제조건

Java 조각은 이러한 가져오기를 공유합니다. 빠른 시작을 사용하여 client를 초기화하고 저장된 바인딩에서 platformUserId를 가져옵니다. 예시 사용자/주문 ID는 고유한 지속 값으로 대체되어야 합니다.

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

사용자 ID 규칙

platformUserId은 6MM 외부 사용자 ID입니다. 현재는 10자리 숫자입니다. 문자열(예:

1188041528

규칙:

  • 정수가 아닌 문자열로 저장하십시오.
  • 그것으로부터 의미를 생성, 해독 또는 추론하지 마십시오.
  • 자신의 파트너측 사용자 ID를 agentUserId로 사용하세요.
  • agentUserId, platformUserId, agentOrderNo 간의 관계를 유지합니다.

사용자 바인딩

바인딩은 파트너 사용자와 6MM 간의 관계를 생성하거나 가져옵니다. 플랫폼 사용자. 사용자가 처음 거래 흐름에 들어갈 때 또는 거래 흐름 전에 호출합니다. 먼저 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);

요청 필드:

필드유형필수의설명
agentUserIdstring예고유한 파트너측 사용자 ID
usernamestring아니요플랫폼 사용자의 닉네임으로 사용되는 파트너 측 표시 이름
extstring아니요확장 필드. JSON 문자열을 권장합니다.

응답 필드:

필드유형설명
platformUserIdstring6MM 외부 사용자 ID
bindStatusstring보통 BOUND
isSimulatedUserboolean시뮬레이션된 사용자인지 여부

파트너 계정 조회

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);
});

currency가 없으면 SDK는 defaultCurrency를 사용합니다.

사용자 자산 쿼리

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);

전지:

필드유형설명
walletBalancestring지갑 잔액
frozenMarginstring고정 마진
usedMarginstring사용된 마진
availableBalancestring사용 가능한 잔액
isolatedMarginstring격리된 마진
versionint64자산 버전
isSimulatedUserboolean시뮬레이션된 사용자인지 여부

세 개의 지갑을 구별하세요

지갑잔액 소스사용
가맹점 자체 사용자 지갑가맹점 자체 회계 시스템사용자가 판매자 측에서 사용할 수 있는 잔액
플랫폼 펀딩queryUserAssets 중 funding초 트레이딩 자금 및 펀딩/계약 상호 이체
플랫폼 계약queryUserAssets의 계약 자산 필드무기한 계약 증거금 및 양도 가능 잔액

queryAccount 판매자 사용자 지갑이 아닌 판매자 플랫폼 마진 계정을 쿼리합니다. 이 인터페이스에는 environment 매개변수가 없으며 시뮬레이션된 사용자 자산으로 쿼리할 수 없습니다.

시뮬레이션된 사용자의 두 플랫폼 지갑을 쿼리합니다.

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

인터페이스: POST /v1/agent/query-user-assets. includeFunding=true인 경우에만 자금이 요청됩니다. 기본적으로 원래 계약 자산 쿼리 의미 체계가 사용됩니다.

응답 필드의미
walletBalance, availableBalance, frozenMargin, usedMargin, isolatedMargin계약 지갑 관련 금액
funding.assetCode현재 USDT
funding.availableAmount, heldAmount, totalAmount사용 가능한 자금, 점유 및 총 금액
funding.materialized펀딩 계좌가 구현됐나요?
environment이 필드는 환경이 명시적으로 전달될 때 에코됩니다. 환경을 생략한 이전 요청은 이 필드를 반환하지 않습니다.
isSimulatedUser계정 분류 거래 환경 선택을 대체할 수 없습니다.

금액은 float/double가 아닌 문자열 또는 BigDecimal로 처리됩니다.

소스 및 관련 가이드