Vai alla navigazione

Registro dei contratti

Registro dei contratti: Agent Java SDK Integrazione v0.3.0, esempi, parametri e semantica della risposta.

Visualizza come Markdown

Questa guida è rivolta a Agent Java SDK v0.3.0, Java 8+ e agli appalti pubblici contrassegnati. Gli esempi vengono eseguiti nel backend di un partner dopo aver inizializzato client in Avvio rapido.

Prerequisiti di esempio

Gli snippet Java condividono queste importazioni. Inizializza client utilizzando Quick Start e ottieni platformUserId dall’associazione salvata. Gli ID utente/ordine di esempio devono essere sostituiti con i tuoi valori persistenti.

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

listPerpetualLedger

Modello richiesto: PerpetualLedgerRequest.

import com.sixmm.agent.model.PerpetualLedgerRequest;
import com.sixmm.agent.model.PerpetualResponse;
import java.util.Collections;
PerpetualLedgerRequest request = new PerpetualLedgerRequest();
request.platformUserIds = Collections.singletonList("1188041528");
request.limit = 100;
request.endTime = System.currentTimeMillis();
request.startTime = request.endTime - 3_600_000L;
PerpetualResponse response = client.listPerpetualLedger(request);
System.out.println(response.data.items.size());
System.out.println(response.data.hasMore);
System.out.println(response.data.nextCursor);

Campi richiesta

CampoTipo JavaNecessarioSenso
platformUserIdsjava.util.List<String>CondizionaleDa 1 a 100 ID pubblici univoci; richiesto per esecuzioni e ordini condizionati. Omettere le query supportate per l’ambito del player diretto; [] non è valido.
assetTypeStringNOClassificazione delle attività come restituita dal libro mastro; non dare per scontato USDT.
changeTypeStringNOTipo di modifica aziendale del registro, preservando i valori di origine.
startTimeLongNOMillisecondi Unix inclusi; utilizzare una finestra della cronologia UTC fissa.
endTimeLongNOMillisecondi Unix esclusivi.
limitIntegerNOPredefinito 500; 1–1000.
cursorStringNOUtilizza il nextCursor restituito con i filtri invariati; interrompere quando hasMore è falso.

L’esempio legge una pagina. Per i campi obbligatori, ambito del giocatore, semantica del filtro, limite, cursore e tentativi limitati, seguire Panoramica delle query. Mantieni invariati tutti i filtri durante la paginazione; non interpretare un errore come un risultato vuoto.

Registri contrattuali

Interfaccia: account/ledger. I dati restituiti contengono solo i seguenti 11 campi aziendali e non riportano i flag booleani dell’ordine.

campo data.tipoSenso
ledgerIdstringIl registro di origine registra l’ID della transazione; la stessa transazione può essere suddivisa in più dettagli
symbolstringCoppia di trading correlata, può essere omessa se non correlata
assetTypestringTipo di risorsa, salvata in base al valore di origine; utilizzato per la classificazione delle risorse, non dedotto per impostazione predefinita USDT
changeTypestringTipo di attività di modifica del conto, salvato in base al valore di origine, come commissioni di gestione, profitti e perdite, trasferimento; può essere filtrato dallo stesso campo
amountstringL’importo della variazione di questo dettaglio, un numero positivo indica un aumento, un numero negativo indica una diminuzione; la precisione viene mantenuta
walletBalanceBeforestringIl saldo del portafoglio prima della modifica del conto registrato in questo dettaglio
walletBalanceAfterstringIl saldo del portafoglio dopo la modifica del conto registrata in questo dettaglio
frozenBalanceBeforestringIn questo dettaglio viene registrato il saldo congelato registrato prima della modifica del conto
frozenBalanceAfterstringIl saldo congelato registrato in questo dettaglio dopo la modifica del conto
referenceIdstringNumero aziendale associato; interpretato come changeType e non può essere considerato uniformemente come ordine orderId; “0” indica che la fonte non ha un numero associato valido
createdAtintegerTempo di creazione dei dettagli di modifica dell’account, millisecondi; questo campo viene utilizzato per il filtraggio temporale in questa interfaccia

Utilizza il saldo prima e dopo la modifica del conto restituito dall’interfaccia. Diversi changeType hanno una semantica diversa e non si può presumere che ciascun importo sia uguale a walletBalanceAfter − walletBalanceBefore. La visualizzazione/riepilogo dei record contabili deve mantenere il tipo e l’identità del dettaglio.

Ecco un esempio del formato, utilizzando un ID e un importo fittizi:

{
"code": 0,
"message": "success",
"data": {
"items": [
{
"platformUserId": "1188041528",
"entityType": "ACCOUNT_LEDGER",
"entityId": "900001",
"data": {
"ledgerId": "ledger-example-001",
"symbol": "BTCUSDT",
"assetType": "USDT",
"changeType": "HANDLING_FEE",
"amount": "-0.10000000",
"walletBalanceBefore": "100.00000000",
"walletBalanceAfter": "99.90000000",
"frozenBalanceBefore": "0.00000000",
"frozenBalanceAfter": "0.00000000",
"referenceId": "800001",
"createdAt": 1791590400000
}
}
],
"nextCursor": "",
"hasMore": false
}
}

Busta di risposta di esempio

Questa è una pagina vuota illustrativa, non un esempio di un’operazione completata. Le tabelle dei campi specifici della risorsa sopra descrivono il items[].data popolato.

{"code":0,"message":"success","data":{"items":[],"nextCursor":"","hasMore":false}}

Fonte e guide correlate