> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.6mm.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.6mm.com/_mcp/server.

# Buku Besar Kontrak

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](/id/sdk/agent-sdk/java/quick-start).

## 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.

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

## `listPerpetualLedger`

Model permintaan: `PerpetualLedgerRequest`.

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

### Bidang permintaan

| Bidang            | Java ketik               | Diperlukan | Arti                                                                                                                                                  |
| ----------------- | ------------------------ | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| `platformUserIds` | `java.util.List<String>` | Bersyarat  | 1–100 ID publik unik; diperlukan untuk pengisian dan pesanan bersyarat. Hilangkan kueri yang didukung untuk cakupan pemain langsung; \[] tidak valid. |
| `assetType`       | `String`                 | TIDAK      | Klasifikasi aset sebagaimana dikembalikan oleh buku besar; jangan berasumsi USDT.                                                                     |
| `changeType`      | `String`                 | TIDAK      | Jenis perubahan bisnis buku besar, mempertahankan nilai sumber.                                                                                       |
| `startTime`       | `Long`                   | TIDAK      | Milidetik Unix inklusif; gunakan jendela riwayat UTC yang tetap.                                                                                      |
| `endTime`         | `Long`                   | TIDAK      | Milidetik Unix eksklusif.                                                                                                                             |
| `limit`           | `Integer`                | TIDAK      | Bawaan 500; 1–1000.                                                                                                                                   |
| `cursor`          | `String`                 | TIDAK      | Gunakan nextCursor yang dikembalikan dengan filter yang tidak berubah; berhenti ketika hasMore salah.                                                 |

Contohnya berbunyi satu halaman. Untuk bidang yang wajib diisi, cakupan pemain, semantik filter, batas, kursor, dan percobaan ulang terbatas, ikuti [Ikhtisar kueri](/id/sdk/agent-sdk/java/perpetual-queries). Biarkan semua filter tidak berubah saat melakukan paging; jangan menafsirkan kesalahan sebagai hasil kosong.

## Catatan buku besar kontrak

Antarmuka: `account/ledger`. Data yang dikembalikan hanya berisi 11 bidang bisnis berikut dan tidak membawa tanda boolean pesanan.

| `data` bidang         | jenis   | arti                                                                                                                                                                               |
| --------------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ledgerId`            | string  | Buku besar sumber mencatat ID transaksi; transaksi yang sama dapat dipecah menjadi beberapa detail                                                                                 |
| `symbol`              | string  | Pasangan perdagangan terkait, dapat dihilangkan jika tidak terkait                                                                                                                 |
| `assetType`           | string  | Jenis aset, disimpan berdasarkan nilai sumber; digunakan untuk klasifikasi aset, tidak disimpulkan secara default USDT                                                             |
| `changeType`          | string  | Jenis usaha perubahan rekening, disimpan sesuai nilai sumber, seperti biaya penanganan, untung dan rugi, transfer; dapat difilter berdasarkan bidang yang sama                     |
| `amount`              | string  | Jumlah perubahan rincian ini, angka positif menunjukkan peningkatan, angka negatif menunjukkan penurunan; presisi tetap dipertahankan                                              |
| `walletBalanceBefore` | string  | Saldo dompet sebelum perubahan akun dicatat dalam detail ini                                                                                                                       |
| `walletBalanceAfter`  | string  | Saldo dompet setelah perubahan akun dicatat dalam detail ini                                                                                                                       |
| `frozenBalanceBefore` | string  | Saldo beku yang dicatat sebelum perubahan akun dicatat dalam rincian ini                                                                                                           |
| `frozenBalanceAfter`  | string  | Saldo yang dibekukan dicatat dalam detail ini setelah perubahan akun                                                                                                               |
| `referenceId`         | string  | Nomor bisnis terkait; ditafsirkan sebagai changeType dan tidak dapat dianggap seragam sebagai urutan orderId; "0" menunjukkan bahwa sumber tidak memiliki nomor terkait yang valid |
| `createdAt`           | integer | Waktu pembuatan detail perubahan akun, milidetik; bidang ini digunakan untuk pemfilteran waktu di antarmuka ini                                                                    |

Gunakan saldo sebelum dan sesudah perubahan akun dikembalikan oleh antarmuka. changeType yang berbeda memiliki semantik yang berbeda, dan tidak dapat diasumsikan bahwa setiap jumlah sama dengan walletBalanceAfter − walletBalanceBefore. Tampilan/ringkasan catatan buku besar harus mempertahankan jenis dan identitas detailnya.

Berikut contoh formatnya, menggunakan ID dan jumlah fiktif:

```json
{
  "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
  }
}
```

## Contoh amplop tanggapan

Ini adalah halaman kosong ilustrasi, bukan contoh perdagangan yang telah selesai. Tabel bidang khusus sumber daya di atas menjelaskan `items[].data` yang terisi.

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

## Sumber dan panduan terkait

* [Sumber resmi v0.3.0](https://github.com/6mm-com/agent-java-sdk/tree/54aa3c1)
* [Ikhtisar kueri dan penomoran halaman](/id/sdk/agent-sdk/java/perpetual-queries)
* [Dompet pendanaan](/id/sdk/agent-sdk/java/funding-wallet)
* [Panduan peningkatan](/id/sdk/agent-sdk/java/upgrade)