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

# 契約台帳

このガイドは、**Agent Java SDK `v0.3.0`**、Java 8 以降、およびタグ付けされたパブリック コントラクトを対象としています。例は `client` を初期化した後にパートナー バックエンドで実行されます。 [クイックスタート](/ja/sdk/agent-sdk/java/quick-start).

## 前提条件の例

Java スニペットはこれらのインポートを共有します。クイック スタートを使用して `client` を初期化し、保存されたバインディングから `platformUserId` を取得します。ユーザー/オーダー ID の例は、独自の永続化された値に置き換える必要があります。

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

## `listPerpetualLedger`

リクエストモデル: `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);
```

### リクエストフィールド

| 分野                | Java タイプ                 | 必須   | 意味                                                                                  |
| ----------------- | ------------------------ | ---- | ----------------------------------------------------------------------------------- |
| `platformUserIds` | `java.util.List<String>` | 条件付き | 1 ～ 100 個の一意のパブリック ID。約定および条件付き注文に必要です。ダイレクトプレイヤースコープでサポートされているクエリを省略します。 \[]は無効です。 |
| `assetType`       | `String`                 | いいえ  | 台帳から返された資産分類。 USDT と仮定しないでください。                                                     |
| `changeType`      | `String`                 | いいえ  | ソース値を保持する元帳ビジネス変更タイプ。                                                               |
| `startTime`       | `Long`                   | いいえ  | Unix ミリ秒を含みます。固定の UTC 履歴ウィンドウを使用します。                                                |
| `endTime`         | `Long`                   | いいえ  | 排他的な Unix ミリ秒。                                                                      |
| `limit`           | `Integer`                | いいえ  | デフォルトは 500。 1 ～ 1000。                                                               |
| `cursor`          | `String`                 | いいえ  | 返された nextCursor をフィルターを変更せずに使用します。 hasMore が false の場合に停止します。                       |

この例では 1 ページを読み取ります。必須フィールド、プレーヤーのスコープ、フィルター セマンティクス、制限、カーソル、制限された再試行については、次のとおりです。 [クエリの概要](/ja/sdk/agent-sdk/java/perpetual-queries)。ページング中はすべてのフィルターを変更しないでください。エラーを空の結果として解釈しないでください。

## 契約台帳記録

インターフェース: `account/ledger`。返されるデータには次の 11 個のビジネス フィールドのみが含まれており、順序ブール フラグは含まれません。

| `data` フィールド          | タイプ     | 意味                                                                                  |
| --------------------- | ------- | ----------------------------------------------------------------------------------- |
| `ledgerId`            | string  | ソース台帳にはトランザクション ID が記録されます。同じトランザクションが複数の詳細に分割される場合があります                            |
| `symbol`              | string  | 関連する取引ペア。関連しない場合は省略できます。                                                            |
| `assetType`           | string  | 資産タイプ。ソース値によって保存されます。資産分類に使用され、デフォルトでは推論されません USDT                                  |
| `changeType`          | string  | 口座変更ビジネスタイプ。手数料、損益、振替などのソース値に応じて保存されます。同じフィールドでフィルタリングできます                          |
| `amount`              | string  | この詳細の変更量。正の数値は増加を示し、負の数値は減少を示します。精度が保たれている                                          |
| `walletBalanceBefore` | string  | この詳細に記録されるアカウント変更前のウォレット残高                                                          |
| `walletBalanceAfter`  | string  | この詳細に記録されるアカウント変更後のウォレット残高                                                          |
| `frozenBalanceBefore` | string  | アカウント変更前に記録された凍結残高がこの詳細に記録されます                                                      |
| `frozenBalanceAfter`  | string  | 口座変更後にこの詳細に記録される凍結残高                                                                |
| `referenceId`         | string  | 関連する企業番号。 changeType として解釈され、一律に順序 orderId と見なすことはできません。 「0」は、ソースに有効な関連番号がないことを示します |
| `createdAt`           | integer | アカウント変更の詳細の作成時間 (ミリ秒)。このフィールドは、このインターフェイスでの時間フィルタリングに使用されます                         |

インターフェースから返されたアカウント変更の前後の残高を使用します。異なる changeType は異なるセマンティクスを持ち、それぞれの量が walletBalanceAfter − walletBalanceBefore に等しいと想定することはできません。台帳レコードの表示/概要は、タイプと詳細のアイデンティティを保持する必要があります。

以下は、架空の ID と金額を使用した形式の例です。

```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
  }
}
```

## 応答エンベロープの例

これは空のページの例であり、完了した取引のサンプルではありません。上記のリソース固有のフィールド テーブルは、設定された `items[].data` について説明しています。

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

## ソースおよび関連ガイド

* [公式 v0.3.0 ソース](https://github.com/6mm-com/agent-java-sdk/tree/54aa3c1)
* [クエリの概要とページネーション](/ja/sdk/agent-sdk/java/perpetual-queries)
* [資金調達ウォレット](/ja/sdk/agent-sdk/java/funding-wallet)
* [アップグレードガイド](/ja/sdk/agent-sdk/java/upgrade)