> ## Documentation Index
> Fetch the complete documentation index at: https://docs.acedata.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# واجهة برمجة تطبيقات HappyHorse Tasks والتكامل والاستخدام

> HappyHorse Video API guide - Ace Data Cloud

تستخدم واجهة برمجة تطبيقات HappyHorse Tasks لاستعلام عن مهام إنشاء أو تحرير الفيديوهات التي تم إنشاؤها بواسطة واجهة برمجة تطبيقات HappyHorse Videos.

## عملية التقديم

لاستخدام واجهة برمجة تطبيقات HappyHorse Videos، يجب أولاً الذهاب إلى [وحدة التحكم في Ace Data Cloud](https://platform.acedata.cloud/console/applications) للحصول على رمز API الخاص بك، احتفظ به للاستخدام لاحقًا.

![](https://cdn.acedata.cloud/dvc3cg.jpg)

إذا لم تكن قد قمت بتسجيل الدخول أو التسجيل بعد، سيتم تحويلك تلقائيًا إلى صفحة تسجيل الدخول لدعوتك للتسجيل وتسجيل الدخول، وبعد الانتهاء سيتم العودة تلقائيًا إلى الصفحة الحالية.

**يمكن استخدام رمز API واحد لاستدعاء جميع خدمات المنصة، دون الحاجة لتقديم طلب منفصل لكل خدمة.** عند التقديم لأول مرة، ستحصل على رصيد مجاني لتجربته؛ وعند نفاد الرصيد، يمكنك إعادة شحن الرصيد العام في [وحدة التحكم](https://platform.acedata.cloud/console/coin).

> 📘 الوثائق الكاملة: [HappyHorse Videos API →](https://platform.acedata.cloud/documents/happyhorse-videos)

## مثال على الطلب

يمكن استخدام واجهة برمجة تطبيقات HappyHorse Tasks لاستعلام نتائج واجهة برمجة تطبيقات HappyHorse Videos.

### إعداد رأس الطلب وجسم الطلب

**رؤوس الطلب** تشمل:

* `accept`: تحديد استلام نتائج الاستجابة بتنسيق JSON، هنا يتم ملؤه بـ `application/json`.
* `authorization`: مفتاح استدعاء API، يمكن اختياره مباشرة بعد التقديم.

**جسم الطلب** يشمل:

* `id`: معرف المهمة التي تريد الاستعلام عنها.
* `action`: طريقة إجراء العملية على المهمة، يتم ملء `retrieve` للاستعلام الفردي.

### مثال على كود CURL

```bash theme={null}
curl -X POST 'https://api.acedata.cloud/happyhorse/tasks' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "id": "b8976e18-32dc-4718-9ed8-1ea090fcb6ea",
  "action": "retrieve"
}'
```

### مثال على الاستجابة

بعد نجاح الطلب، ستقوم واجهة برمجة التطبيقات بإرجاع تفاصيل تلك المهمة. حيث أن حقل `request` هو جسم الطلب عند إنشاء المهمة، وحقل `response` هو جسم الاستجابة الذي يتم إرجاعه بعد إكمال المهمة، على سبيل المثال:

```json theme={null}
{
  "id": "b8976e18-32dc-4718-9ed8-1ea090fcb6ea",
  "started_at": 1769262721.823,
  "finished_at": 1769262774.423,
  "elapsed": 52.6,
  "request": {
    "action": "generate",
    "model": "happyhorse-1.1-t2v",
    "prompt": "A cinematic shot of a white horse running across a moonlit beach",
    "resolution": "720P",
    "duration": 5
  },
  "type": "videos",
  "response": {
    "success": true,
    "task_id": "b8976e18-32dc-4718-9ed8-1ea090fcb6ea",
    "trace_id": "fb751e1e-4705-49ea-9fd4-5024b7865ea2",
    "data": [
      {
        "id": "1469cfc3-3004-4d9e-ab10-xxxxxx",
        "video_url": "https://cdn.acedata.cloud/happyhorse/c8cbf53aa0.mp4",
        "state": "succeeded",
        "duration": 5,
        "resolution": "720P",
        "ratio": "16:9"
      }
    ]
  }
}
```

تقديم الحقول كما يلي:

* `id`: معرف المهمة التي تم إنشاؤها، يستخدم لتحديد هذه المهمة بشكل فريد.
* `request`: معلومات الطلب عند إنشاء المهمة.
* `response`: المعلومات الحالية أو النهائية للعودة من المهمة.
* `created_at`: وقت إنشاء المهمة، طابع زمني Unix (ثوانٍ، عائم).
* `started_at`: وقت بدء تنفيذ المهمة، طابع زمني Unix (ثوانٍ، عائم).
* `finished_at`: وقت إكمال المهمة، طابع زمني Unix (ثوانٍ، عائم). لا يتم إرجاع هذا الحقل إذا لم تكتمل المهمة.
* `elapsed`: الوقت المستغرق لتنفيذ المهمة، بوحدة الثواني (عائم، يحتفظ بـ 3 أرقام عشرية). لا يتم إرجاع هذا الحقل إذا لم تكتمل المهمة.

## عملية الاستعلام الجماعي

عند استعلام تفاصيل المهام لعدة معرفات مهام، يتم تعيين `action` إلى `retrieve_batch`، ويتم تمرير مصفوفة معرفات المهام عبر `ids`:

```bash theme={null}
curl -X POST 'https://api.acedata.cloud/happyhorse/tasks' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "ids": ["b8976e18-32dc-4718-9ed8-1ea090fcb6ea"],
  "action": "retrieve_batch"
}'
```

ستتضمن النتيجة حقول `items` و `count`، حيث أن `items` هي مصفوفة تفاصيل المهام، و `count` هو عدد المهام المطابقة في هذه المرة.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.