> 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` في [بداية سريعة](/ar/sdk/agent-sdk/java/quick-start).

## مثال المتطلبات الأساسية

تشترك مقتطفات Java في هذه الواردات. قم بتهيئة `client` باستخدام البدء السريع واحصل على `platformUserId` من الرابط المحفوظ. يجب استبدال معرفات المستخدم/الطلب بالقيم الثابتة الخاصة بك.

```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 معرف عام فريد؛ مطلوب للتعبئة والأوامر المشروطة. حذف الاستعلامات المدعومة لنطاق اللاعب المباشر؛ \[] غير صالح. |
| `assetType`       | `String`                 | لا    | تصنيف الأصول كما يظهر في دفتر الأستاذ؛ لا تفترض USDT.                                                              |
| `changeType`      | `String`                 | لا    | نوع تغيير أعمال دفتر الأستاذ، مع الحفاظ على قيم المصدر.                                                            |
| `startTime`       | `Long`                   | لا    | ميلي ثانية يونكس شاملة؛ استخدم نافذة سجل UTC ثابتة.                                                                |
| `endTime`         | `Long`                   | لا    | حصري يونكس ميلي ثانية.                                                                                             |
| `limit`           | `Integer`                | لا    | الافتراضي 500؛ 1-1000.                                                                                             |
| `cursor`          | `String`                 | لا    | استخدم nextCursor الذي تم إرجاعه مع المرشحات التي لم تتغير؛ توقف عندما يكون hasMore خطأ.                           |

المثال يقرأ صفحة واحدة. بالنسبة للحقول المطلوبة، ونطاق اللاعب، ودلالات التصفية، والحد، والمؤشر، وعمليات إعادة المحاولة المحدودة، اتبع ذلك [نظرة عامة على الاستعلام](/ar/sdk/agent-sdk/java/perpetual-queries). احتفظ بجميع المرشحات دون تغيير أثناء الترحيل؛ لا تفسر الخطأ كنتيجة فارغة.

## سجلات العقود

الواجهة: `account/ledger`. تحتوي البيانات التي تم إرجاعها على حقول الأعمال الـ 11 التالية فقط ولا تحمل علامات منطقية للطلب.

| `data` الحقل          | يكتب    | معنى                                                                                                                                              |
| --------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ledgerId`            | string  | يسجل دفتر الأستاذ المصدر معرف المعاملة؛ قد يتم تقسيم نفس المعاملة إلى تفاصيل متعددة                                                               |
| `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. يجب أن يحتفظ عرض/ملخص سجلات دفتر الأستاذ بالنوع والهوية التفصيلية.

فيما يلي مثال على التنسيق، باستخدام معرف ومبلغ وهميين:

```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)
* [نظرة عامة على الاستعلام وترقيم الصفحات](/ar/sdk/agent-sdk/java/perpetual-queries)
* [محفظة التمويل](/ar/sdk/agent-sdk/java/funding-wallet)
* [دليل الترقية](/ar/sdk/agent-sdk/java/upgrade)