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

# الأذونات

> قم بتعيين مفاتيح API للأدوار حتى تتمكن عمليات التكامل من الوصول إلى ما تحتاجه فقط.

يعمل مفتاح API من خلال الدور المحدد عند إنشاء المفتاح.

إذا كان الدور لا يتضمن الإذن المطلوب، فستُرجع Plato خطأ في التفويض حتى عندما يكون المفتاح نفسه صالحًا.

## مجموعات الأذونات المشتركة

استخدم هذا كنقطة بداية عند إنشاء دور للتكامل.

| منطقة API                 | الوصول المطلوب                                             |
| ------------------------- | ---------------------------------------------------------- |
| CMS القراءة والكتابة      | الوصول إلى التطبيق CMS                                     |
| قراءة Connect360          | `connect360:conversation:read`                             |
| Connect360 إرسال أو إنشاء | `connect360:conversation:engage`                           |
| حذف Connect360            | `connect360:conversation:delete`                           |
| تغذية طلب المطعم          | `restaurant:order:read`                                    |
| قراءة النموذج أو إرساله   | مفتاح API للوصول إلى مساحة العمل التي تمتلك النموذج        |
| منتجات القائمة والفئات    | مفتاح API للوصول إلى مساحة العمل التي تمتلك بيانات القائمة |

## الإعداد الموصى به

قم بإنشاء دور واحد لكل نوع تكامل.

على سبيل المثال:

* `Website CMS Reader` لموقع تسويقي يقرأ إدخالات CMS فقط.
* `Website Chat Connector` لرسائل الدردشة والمرفقات Connect360.
* `Accounting Order Export` لأداة تقرأ إجماليات طلبات المطاعم.

وهذا يجعل كل مفتاح API سهل التدقيق.

## الوصول الكامل

يعمل `fullAccess`، ولكن لا ينبغي أن يكون الإعداد الافتراضي لعمليات التكامل.

استخدمه فقط عندما تحتاج الواجهة الخلفية الموثوقة حقًا إلى وصول واسع إلى مساحة العمل ويتم تخزين المفتاح بشكل آمن.

## أخطاء الأذونات

عندما تكون الأذونات مفقودة، تتضمن الاستجابات عادةً رسائل مثل:

```json theme={null}
{
  "message": "Missing permission: appAccess:CMS"
}
```

أو:

```json theme={null}
{
  "message": "Unauthorized API key permissions."
}
```

إذا حدث ذلك، فتحقق من الدور المرفق بمفتاح API قبل إنشاء مفتاح جديد.
