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

# الوسائط

> خلفيات وشعارات وفيديوهات مقدمة/خاتمة قابلة لإعادة الاستخدام

الوسائط هي ملفات قابلة لإعادة الاستخدام — خلفيات فيديو، صور ثابتة، شعارات، ومقاطع مقدمة/خاتمة — تقوم برفعها مرة واحدة ثم تشير إليها من الإعدادات المسبقة أو إعدادات المشروع. هذا يوفّر عليك إعادة رفع الملف نفسه في كل مرة تقوم فيها بتصدير مسار جديد.

## أنواع الوسائط

| النوع         | الوصف                            |
| ------------- | -------------------------------- |
| `video`       | فيديو خلفية متكرر.               |
| `image`       | صورة خلفية ثابتة.                |
| `logo`        | تراكب شعار.                      |
| `intro-video` | يتم تشغيله قبل بدء الكاريوكي.    |
| `outro-video` | يتم تشغيله بعد انتهاء الكاريوكي. |

## نقاط النهاية

| الطريقة  | المسار             | الغرض                                                   |
| -------- | ------------------ | ------------------------------------------------------- |
| `GET`    | `/media`           | عرض قائمة الوسائط للحساب الموثّق.                       |
| `POST`   | `/media`           | تسجيل ملف تم رفعه مسبقًا كوسائط قابلة لإعادة الاستخدام. |
| `GET`    | `/media/{mediaId}` | جلب عنصر وسائط واحد.                                    |
| `DELETE` | `/media/{mediaId}` | حذف عنصر وسائط.                                         |

مخططات الطلب والاستجابة الكاملة موجودة في **مرجع API**.

## سير عمل الرفع

إنشاء عنصر وسائط هو عملية من خطوتين. أولًا ارفع بايتات الملف، ثم سجّل الملف الذي تم رفعه كوسائط قابلة لإعادة الاستخدام.

<Steps>
  <Step title="إنشاء هدف رفع">
    ```bash theme={null}
    curl -X POST https://api.youka.io/ar/api/v1/uploads \
      -H "Authorization: Bearer yk_..." \
      -H "Content-Type: application/json" \
      -d '{
        "filename": "background.mp4",
        "contentType": "video/mp4",
        "contentLength": 8421120
      }'
    ```

    تحتوي الاستجابة على `inputFileId` و `uploadUrl`.
  </Step>

  <Step title="PUT بايتات الملف">
    ```bash theme={null}
    curl -X PUT "$UPLOAD_URL" \
      -H "Content-Type: video/mp4" \
      --data-binary "@./background.mp4"
    ```
  </Step>

  <Step title="تسجيل عنصر الوسائط">
    ```bash theme={null}
    curl -X POST https://api.youka.io/ar/api/v1/media \
      -H "Authorization: Bearer yk_..." \
      -H "Idempotency-Key: bg-loop-v1" \
      -H "Content-Type: application/json" \
      -d '{
        "inputFileId": "file_abc123",
        "type": "video"
      }'
    ```

    تتضمن الاستجابة `mediaId` الجديد و `url` الخاص بالوسائط. استخدم
    `url` داخل الإعدادات المسبقة أو إعدادات المشروع.
  </Step>
</Steps>

<Note>
  `POST /media` لا يقبل رفع ملفات خام. بل يتوقع `inputFileId`
  من استدعاء سابق `POST /uploads` + `PUT`.
</Note>

## عرض قائمة الوسائط

```bash theme={null}
curl https://api.youka.io/ar/api/v1/media \
  -H "Authorization: Bearer yk_..."
```

يعيد مصفوفة تضم كل عنصر وسائط قابل لإعادة الاستخدام ضمن الحساب الموثّق.

## تطبيق خلفية

قم بالإشارة إلى الوسائط المرفوعة من إعداد مسبق أو مباشرةً من إعدادات المشروع:

```bash theme={null}
curl -X PATCH https://api.youka.io/ar/api/v1/projects/prj_abc/settings \
  -H "Authorization: Bearer yk_..." \
  -H "Content-Type: application/json" \
  -d '{
    "settings": {
      "style": {
        "background": {
          "type": "image",
          "url": "https://cdn.youka.io/backgrounds/bg_abc123.jpg",
          "objectFit": "cover"
        }
      }
    }
  }'
```

## حذف الوسائط

```bash theme={null}
curl -X DELETE https://api.youka.io/ar/api/v1/media/bg_abc123 \
  -H "Authorization: Bearer yk_..." \
  -H "Idempotency-Key: delete-bg_abc123"
```

<Warning>
  حذف الوسائط لا يؤثر على المشاريع أو عمليات التصدير التي تم تصييرها سابقًا باستخدامها.
  عمليات التصدير المستقبلية التي تشير إلى الوسائط المحذوفة ستعود إلى
  الخلفية الافتراضية.
</Warning>

## ما التالي

* [مرجع إعدادات التصدير](/en/render-settings-reference) — جميع مسارات الحقول المشتركة وقيم enum
* [Presets](/ar/api/presets) — تجميع الوسائط مع إعدادات تصدير أخرى
* [Project settings](/ar/api/project-settings) — تطبيق الخلفيات على مشروع
* [SDK media](/ar/sdk/media) — نفس السير في TypeScript
