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

# تحذيرات تقدير العمر ورموز المخاطر

> مرجع Didit لجميع رموز مخاطر تقدير العمر، مثل AGE_BELOW_MINIMUM وAGE_NOT_DETECTED وLOW_LIVENESS_SCORE وNO_FACE_DETECTED، مع الحدود والإجراءات لكل رمز.

تُصدر ميزة تقدير العمر **تحذيرات** كلما انطلقت إشارة مخاطر في الفحص المشترك للعمر + كشف الحيوية السلبي: كأن يكون العمر المتوقع أقل من الحد الأدنى لديك، أو تعذر احتساب العمر، أو فشل الشخص في اختبار الحيوية، أو لم يتم العثور على أي وجه، أو تم اكتشاف هجوم العرض. تُدرج هذه الصفحة كل رمز، وما الذي يُشغّله، وكيفية تكوين استجابة سير العمل.

## نظرة عامة

يُجري تقدير العمر دائمًا **فحصين في استدعاء واحد** — اختبار كشف الحيوية السلبي ونموذج انحدار العمر — لذا تتدفق تحذيراته عبر مسار كشف الحيوية المشترك وتُوسم بالميزة `LIVENESS`. تظهر هذه التحذيرات في التقرير ضمن `age_estimation.warnings[]` (واجهة API مستقلة) أو `liveness_checks[].warnings[]` (المدمجة في سير العمل). تم توثيق مخطط كائن التحذير تحت [نماذج البيانات — كائن التحذير](https://docs.didit.me/ar/reference/data-models.md#كائن-التحذير).

الجهات المُصدِرة:

* **واجهة API مستقلة** — يُنشئ الـ endpoint التحذيرات الخمسة المدرجة تحت [مُشغِّلات الرفض](#مُشغِّلات-الرفض).
* **سير العمل** — الجهات المُصدِرة المشتركة لكشف الحيوية بالإضافة إلى الفحوصات المخصصة للعمر. تنطلق تحذيرات العمر فقط في مسارات تقدير العمر (سير عمل التحقق التكيفي من العمر أو عُقد سير العمل من النوع `AGE_ESTIMATION`) — تُبلغ خطوة الحيوية البسيطة عن العمر المقدر لكنها لا ترفع تحذيرات العمر مطلقًا.

مستويات الخطورة: مخاطر الرفض التلقائي الخمسة (`NO_FACE_DETECTED` و `LIVENESS_FACE_ATTACK` و `FACE_IN_BLOCKLIST` و `AGE_BELOW_MINIMUM` و `AGE_NOT_DETECTED`) تكون دائمًا بقيمة `log_type: "error"` وتفرض الحالة `Declined`؛ أما المخاطر المتبقية فتتحول إلى `error` / `warning` / `information` استنادًا إلى الحدود أو الإجراء المكوّن.

## مُشغِّلات الرفض

في واجهة API مستقلة، يكون القرار `Declined` كلما انطلق **أي** تحذير:

* **العمر أقل من الحد** — العمر المتوقع أقل تمامًا من `age_estimation_decline_threshold` (الافتراضي `18`؛ تُعطّل القيمة `0` فحص العمر). يرفع `AGE_BELOW_MINIMUM`.
* **لم يتم احتساب العمر** — تعذر تقدير عمر الوجه (لا يوجد وجه يمكن اكتشافه، أو لا يوجد وجه صالح للاستخدام لنموذج العمر). يرفع `AGE_NOT_DETECTED`.
* **درجة الحيوية عند الحد أو أقل منه** — `score <= face_liveness_score_decline_threshold` (الافتراضي `30`)؛ تُحسب درجة `null` على أنها `0`. يرفع `LOW_LIVENESS_SCORE`. يتم كتمه عند انطلاق `NO_FACE_DETECTED` — فالأمران متنافيان.
* **لم يتم اكتشاف أي وجه** — لم يعثر نموذج الحيوية على أي وجه. يرفع `NO_FACE_DETECTED`.
* **هجوم العرض** — حدد نموذج الحيوية وجود شاشة، أو صورة مطبوعة، أو قناع، أو أي نوع آخر من الانتحال. يرفع `LIVENESS_FACE_ATTACK`.

في سير العمل، تقارن فحوصات العمر، العمر المقدر المقتطع (بالسنوات الكاملة) بالحدود المكوّنة:

* **مع تفعيل الإجراء البديل للتحقق من الهوية** (`enable_id_verification_fallback`، مفعّل افتراضيًا): يؤدي العمر الذي يقل عن `borderline_minimum_age_threshold` (الافتراضي `18`) إلى رفع `AGE_BELOW_MINIMUM`؛ وتُوجَّه الأعمار الواقعة في النطاق الحدي (حتى `borderline_maximum_age_threshold`) إلى التحقق من المستندات بدلاً من رفع تحذير، ولا يُرفع `AGE_NOT_DETECTED` مطلقًا — حيث يتم توجيه العمر غير المكتشف إلى التحقق من المستندات أيضًا.
* **مع تعطيل الإجراء البديل**: يؤدي عدم وجود عمر مقدر إلى رفع `AGE_NOT_DETECTED`، ويؤدي العمر الأقل من `minimum_age_threshold` (الافتراضي `18`) إلى رفع `AGE_BELOW_MINIMUM`.

## المخاطر القابلة للتكوين

تتيح لك المخاطر التالية ضبط الحدود أو الإجراء حسب إعداد سير العمل:

| الإعداد | رمز المخاطر | الخيارات القابلة للتكوين |
| - | - | - |
| حدود العمر | `AGE_BELOW_MINIMUM` | مستقل: `age_estimation_decline_threshold` (الافتراضي `18`، والقيمة `0` تعطل الفحص). سير العمل: `minimum_age_threshold` / `borderline_minimum_age_threshold` (الافتراضي `18`) بالإضافة إلى الإجراء البديل للتحقق من الهوية للأعمار الحدية. |
| درجة حيوية منخفضة | `LOW_LIVENESS_SCORE` | **حد الرفض** منفصل (الافتراضي `30` ← `error` + رفض) و**حد المراجعة** منفصل (الافتراضي `60` ← `warning` + مراجعة) يُطبقان على درجة الحيوية. |
| وجه مكرر محتمل | `POSSIBLE_DUPLICATED_FACE` | الإجراء عند الاكتشاف: `DECLINE` / `REVIEW` / `NO_ACTION` (الافتراضي `NO_ACTION`). جلسات سير العمل فقط. |
| وجوه متعددة | `MULTIPLE_FACES_DETECTED` | الإجراء عند الاكتشاف: `DECLINE` / `REVIEW` / `NO_ACTION` (الافتراضي `NO_ACTION`). كشف الحيوية السلبي في سير العمل فقط. |

تفحص جلسات سير العمل الوجه أيضًا مقابل قوائمك: حيث يؤدي `FACE_IN_BLOCKLIST` دائمًا إلى الرفض التلقائي (`error`)، بينما ينقل `POSSIBLE_FACE_IN_BLOCKLIST` الجلسة إلى `In Review`.

## التحذيرات الناتجة

| العلامة | مستوى الخطورة (`log_type`) | الوصف |
| - | - | - |
| `AGE_BELOW_MINIMUM` | `error` — رفض تلقائي | العمر المُقدَّر أقل من الحد الفعّال (المستقل `age_estimation_decline_threshold`؛ وسير العمل `minimum_age_threshold` / `borderline_minimum_age_threshold`؛ وجميعها بقيمة افتراضية `18`). قيمة `additional_data` تكون دائماً `null`. |
| `AGE_NOT_DETECTED` | `error` — رفض تلقائي | تعذّر تقدير عمر الوجه. يطلقه دائماً الـ API المستقل عندما يكون العمر `null`؛ وفي سير العمل فقط عند تعطيل الاحتياطي للتحقق من الهوية. |
| `LOW_LIVENESS_SCORE` | `error` عند حد الرفض أو أدنى منه؛ `warning` عند حد المراجعة أو أدنى منه | درجة الحيوية عند الحد المُهيأ أو أدنى منه (القيمة الافتراضية للرفض في المستقل وسير العمل هي `30`؛ وقيمة مراجعة سير العمل الافتراضية هي `60`)، مما يشير إلى احتمال استخدام صورة ثابتة أو شاشة أو فيديو. لا يُطلق عند إطلاق `NO_FACE_DETECTED`. |
| `NO_FACE_DETECTED` | `error` — رفض تلقائي | لم يُكتشف أي وجه في الصورة المرسلة. اطلب من المستخدم مجددًا توسيط الكاميرا مع إضاءة كافية. |
| `LIVENESS_FACE_ATTACK` | `error` — رفض تلقائي | وضع نموذج الحيوية علامة تشير إلى هجوم العرض (إعادة عرض عبر شاشة، صورة مطبوعة، قناع، التزييف العميق). |
| `MULTIPLE_FACES_DETECTED` | وفقاً للإجراء المُهيأ (افتراضياً `information`، بدون أي إجراء) | تم العثور على أكثر من وجه في الصورة؛ والوجه الأكبر هو الذي يحدد النتيجة. في كشف الحيوية السلبي ضمن سير العمل فقط — لا يطلقه الـ API المستقل. |
| `FACE_IN_BLOCKLIST` | `error` — رفض تلقائي | الوجه المُكتشف يطابق إدخالاً في قائمة الحظر للوجوه الخاصة بك والتي تُدار عبر [Lists API](https://docs.didit.me/ar/management-api/lists/overview.md). لجلسات سير العمل فقط. |
| `POSSIBLE_DUPLICATED_FACE` | وفقاً للإجراء المُهيأ (افتراضياً `information`، بدون أي إجراء) | الوجه المُكتشف مشابه بدرجة كبيرة لوجه تمت الموافقة عليه سابقاً في جلسة أخرى (تُستثنى التطابقات التي تشترك في نفس `vendor_data`). لجلسات سير العمل فقط. |

## مثال

```json theme={null}
{
  "warnings": [
    {
      "risk": "LOW_LIVENESS_SCORE",
      "feature": "LIVENESS",
      "additional_data": null,
      "log_type": "error",
      "short_description": "Low liveness score",
      "long_description": "The liveness check resulted in a low score, indicating potential use of non-live facial representations or poor-quality biometric data."
    },
    {
      "risk": "AGE_BELOW_MINIMUM",
      "feature": "LIVENESS",
      "additional_data": null,
      "log_type": "error",
      "short_description": "Age below minimum",
      "long_description": "The age of the face is below the minimum age threshold for the application."
    }
  ]
}
```

في payload الخاصة بقرار سير العمل (`liveness_checks[].warnings[]`)، يحمل كل تحذير أيضاً `node_id` يحدد عقدة سير العمل التي أطلقته.

## أنواع التحذيرات

يتم تعيين مستوى خطورة لكل خطر بناءً على تكوين التطبيق الخاص بك. وتندرج مستويات الخطورة تحت ثلاث فئات:

## ذات صلة

* [نظرة عامة على تقدير العمر](https://docs.didit.me/ar/core-technology/age-estimation/overview.md) — سلوك الميزة، والأسعار، ومنطق القرار.
* [تقرير تقدير العمر](https://docs.didit.me/ar/core-technology/age-estimation/report-age-estimation.md) — الشكل الكامل للاستجابة لكل من الـ API المستقل وقيمة سير العمل المضمنة.
* [مرجع الـ API المستقل](https://docs.didit.me/ar/standalone-apis/age-estimation.md) — طلب واستجابة `POST /v3/age-estimation/`.
* [كشف الحيوية السلبي](https://docs.didit.me/ar/core-technology/liveness/overview.md) — نموذج الحيوية المشترك المستخدم في استجابات تقدير العمر.
* [نماذج البيانات — تقدير العمر](https://docs.didit.me/ar/reference/data-models.md#تقدير-العمر) — المخطط المعتمد حقلاً بحقل.


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