الانتقال إلى المحتوى الرئيسي
PATCH
curl
rotate_secret_key يُدوّر السر على مستوى التطبيق فقط، وهو السر الذي يوقّع عمليات التسليم إلى webhook_url القديم. أما كل وجهة webhook فتوقّع بالسر المشترك الخاص بها secret_shared_key، وهذا الاستدعاء لا يغيّره.
حقول الاحتفاظ بالبيانات هي نفس السياسة التي تضبطها في Business Console → App Settings → Data retention. اقرأ الاحتفاظ بالبيانات قبل تغييرها، وخصوصاً الاحتفاظ بالقالب البيومتري. يُشرح allowed_return_hosts في تسجيل وجهة الإرجاع الخاصة بك. يحدد biometric_consent_mode (auto أو always أو never) متى يطلب سير التحقق الموافقة البيومترية الصريحة قبل التقاط الوجه. راجع الموافقة البيومترية. لقراءة القيم الحالية أولاً، استدعِ الحصول على إعدادات webhook.

التفويضات

x-api-key
string
header
مطلوب

مفتاح API الخاص بتطبيقك، من Developers -> API keys في Business Console. يمتلك المفتاح الأساسي وصولاً كاملاً. يمكن تحديد نطاق المفتاح المسمى: لا شيء، أو قراءة، أو كتابة لكل مورد، ومحدوداً ببعض مسارات العمل أو بالجلسات المقبولة، وبقائمة من عناوين IP، وبتاريخ انتهاء الصلاحية. يشير 401 إلى أن المفتاح غير صحيح أو ملغى أو منتهي الصلاحية؛ ويشير 403 إلى أنه لم يتم إرسال أي مفتاح، أو أن المفتاح ليس لديه حق الوصول إلى هذا المورد أو الإجراء، أو أن الطلب جاء من عنوان خارج قائمة عناوين IP الخاصة به؛ ويشير 404 في مسار جلسة إلى أن الجلسة خارج مسارات العمل أو الحالات الخاصة بالمفتاح. يتلقى المفتاح الذي لا يمتلك حق الوصول إلى الوسائط عناوين URL للصور ومقاطع الفيديو وملفات PDF كـ null، ويتلقى المفتاح الذي لا يمتلك إذن كتابة للجلسات روابط الجلسة وtoken كـ null. راجع https://docs.didit.me/console/api-keys.

الجسم

application/json

أرسل الحقول المراد تغييرها فقط. لا تتم إدارة الوجهات هنا.

webhook_url
string<uri> | null

رابط webhook قديم على مستوى التطبيق. يستخدمه Didit فقط في حال لم يكن لدى التطبيق أي وجهة مُمكَّنة، وحينها فقط للحدثين status.updated وdata.updated. وهو لا يُنشئ وجهة، وأي عملية إنشاء أو تحديث أو حذف لوجهة لاحقة ستحل محله. لتلقي إشعارات webhook، أنشئ وجهة باستخدام POST /v3/webhook/destinations/ بدلاً من ذلك.

Maximum string length: 2000
webhook_version
enum<string>

إصدار payload لـ webhook_url القديم.

الخيارات المتاحة:
v1,
v2,
v3
rotate_secret_key
boolean
افتراضي:false

تستبدل القيمة true المفتاح secret_shared_key على مستوى التطبيق بقيمة عشوائية جديدة على الفور؛ وتكون القيمة الجديدة في الاستجابة. ولا تتغير أسرار الوجهات. كل استدعاء يتضمن true يُنشئ سراً جديداً، لذا فإن العملية ليست idempotent.

capture_method
enum<string>

إعداد تطبيق قديم. لا يقرأه سير التحقق.

الخيارات المتاحة:
MOBILE,
MOBILE_AND_DESKTOP
data_retention_months
integer | null

نافذة الحذف التلقائي بالأشهر (يُحتسب الشهر على أنه 30 يوماً)، أو null لعدم وجود حذف تلقائي. ينطبق التغيير على الجلسات الحالية أيضاً: يتم حذف كل جلسة تحقق من المستخدمين أقدم من النافذة الجديدة تلقائياً، وهذا الحذف غير قابل للتراجع.

النطاق المطلوب: 1 <= x <= 120
face_retention_policy
enum<string>

ما يحدث لتضمين الوجه الخاص بالجلسة عند حذف الجلسة. يتطلب retain_until_user_deleted وجود face_retention_days في الطلب نفسه أو تعيينه مسبقاً. ينطبق أي تغيير على عمليات حذف الجلسات من ذلك الحين فصاعداً؛ ولا ينشئ أو يمسح أي قالب بيومتري موجود.

الخيارات المتاحة:
delete_with_session,
retain_until_user_deleted
face_retention_days
integer | null

فترة الاحتفاظ، بالأيام، بالقوالب البيومترية بموجب retain_until_user_deleted.

النطاق المطلوب: 1 <= x <= 3650

متى يطلب التدفق المستضاف وحزم SDK الأصلية من الشخص الموافقة البيومترية الصريحة قبل التقاط الوجه. يطلب auto (الافتراضي) فقط عند انطباق مُشغِّل: ولاية مُعلنة، أو عنوان IP الخاص بالشخص، أو جهة إصدار مستند الهوية في إلينوي أو تكساس أو كولورادو، أو يبدو أن الشخص في الولايات المتحدة دون ولاية معروفة. يطلب always من كل شخص يلتقط سير العمل الخاص به وجهاً. لا يعرض never الخطوة أبداً، وتقوم بجمع الموافقة بنفسك قبل التقاط صورة سيلفي. يتم تسجيل كل تغيير في سجل التدقيق. راجع الموافقة البيومترية.

الخيارات المتاحة:
auto,
always,
never
allowed_return_hosts
string[]

يستبدل القائمة الكاملة لمضيفي العودة لمحفظة الهوية الرقمية (Digital ID). أسماء مضيفين مجردة فقط، مثل shop.example.com: بدون بروتوكول أو منفذ أو مسار أو محارف بديلة. يتم تحويل القيم إلى أحرف صغيرة وتجاهل التكرارات. أرسل [] لمسح القائمة.

Maximum array length: 20
Maximum string length: 253
allowed_domains
string[]

يستبدل القائمة الكاملة للأصول المسموح بها. الأصول (على سبيل المثال https://app.example.com؛ وhttp مسموح به فقط لـ localhost) التي يمكن تضمين سير عمل التحقق المستضاف فيها والتي يمكنها إعادة المستخدم إليها عبر callback للجلسة. لا تتأثر الاستدعاءات بين الخوادم. القائمة الفارغة تعني عدم وجود أي قيود. تقوم Didit بتخزين كل أصل بأحرف صغيرة دون منفذ افتراضي. يفشل الإدخال غير الصالح بالرمز 400 في allowed_domains. أرسل [] لإزالة القيد.

Maximum array length: 50
Maximum string length: 300
مثال:

الاستجابة

التكوين الكامل بعد التحديث، بنفس بنية GET /v3/webhook/. عندما تقوم بتدوير السر، قم بتخزين secret_shared_key الجديد قبل التخلص من الاستجابة.

تكوين webhook على مستوى التطبيق، وسياسة الاحتفاظ بالبيانات، ومضيفو إرجاع محفظة الهوية الرقمية، مع كل وجهة webhook.

webhook_url
string<uri> | null
مطلوب

رابط webhook على مستوى التطبيق (القديم). يرسل Didit إليه فقط في حال عدم وجود وجهة مفعّلة للتطبيق، وحينها يرسل status.updated وdata.updated فقط. كل عملية إنشاء أو تحديث أو حذف لوجهة تضبطه على عنوان URL لأقدم وجهة مفعّلة، أو null عند عدم وجود أي وجهة مفعّلة.

webhook_version
enum<string>
مطلوب

إصدار payload لـ webhook_url القديم. لكل وجهة webhook_version خاص بها.

الخيارات المتاحة:
v1,
v2,
v3
secret_shared_key
string
مطلوب

سر التوقيع على مستوى التطبيق (token آمن لعناوين URL مكوّن من 43 حرفاً). يقوم بتوقيع عمليات التسليم المرسلة إلى webhook_url القديم فقط؛ بينما توقّع كل وجهة باستخدام secret_shared_key الخاص بها. يستلمه مستدعو مفتاح API دائماً بالكامل؛ بينما يتلقى مستخدمو Console الذين لا يملكون إذن read:webhooks سلسلة فارغة.

capture_method
enum<string>
مطلوب

إعداد تطبيق قديم. لا يقرأه سير التحقق: خيارات الالتقاط يتم تكوينها لكل سير عمل.

الخيارات المتاحة:
MOBILE,
MOBILE_AND_DESKTOP
data_retention_months
integer | null
مطلوب

نافذة الحذف التلقائي. تُحذف جلسات التحقق من المستخدمين التي تم إنشاؤها قبل أكثر من هذا العدد من الأشهر (الشهر يُحسب كـ 30 يومًا) تلقائيًا، وهذا الحذف لا يمكن التراجع عنه. تعني القيمة null أنه لا يتم حذف الجلسات تلقائيًا أبدًا. راجع الاحتفاظ بالبيانات.

النطاق المطلوب: 1 <= x <= 120
face_retention_policy
enum<string>
مطلوب

ما يحدث لتضمين الوجه الخاص بالجلسة عند حذف الجلسة. delete_with_session (افتراضي) يحذفه مع الجلسة. retain_until_user_deleted هو خيار الاشتراك في الاحتفاظ بالقالب البيومتري: تتم إدارة قالب بيومتري خالٍ من الصور مرتبط بالمستخدم (User) بشكل منفصل حتى تنتهي فترة الاحتفاظ به، أو يُحذف المستخدم، أو تقوم بمسحه.

الخيارات المتاحة:
delete_with_session,
retain_until_user_deleted
face_retention_days
integer | null
مطلوب

فترة الاحتفاظ، بالأيام، بالقوالب البيومترية بموجب retain_until_user_deleted. مطلوبة عند تعيين تلك السياسة.

النطاق المطلوب: 1 <= x <= 3650
available_events
object[]
مطلوب

كل نوع حدث يمكن للوجهة الاشتراك فيه، مع تسمية للعرض.

allowed_return_hosts
string[]
مطلوب

أسماء المضيفين (تطابق تام، عبر HTTPS فقط) التي يجوز لعملية تحقق مستقلة من محفظة الهوية الرقمية إعادة المستخدم إليها عبر return_url. يُسمح دائماً بنطاق العلامة البيضاء الخاص بك أيضاً. راجع تسجيل وجهة الإرجاع الخاصة بك.

Maximum array length: 20
Maximum string length: 253
endpoints
object[]
مطلوب

كل وجهة webhook للتطبيق، الأقدم أولاً، مع سر التوقيع الخاص بكل منها. للقراءة فقط هنا: يمكنك إدارة الوجهات باستخدام endpoints الخاصة بـ /v3/webhook/destinations/.

متى يطلب التدفق المستضاف وحزم SDK الأصلية من الشخص الموافقة البيومترية الصريحة قبل التقاط الوجه. يطلب auto (الافتراضي) فقط عند انطباق مُشغِّل: ولاية مُعلنة، أو عنوان IP الخاص بالشخص، أو جهة إصدار مستند الهوية في إلينوي أو تكساس أو كولورادو، أو يبدو أن الشخص في الولايات المتحدة دون ولاية معروفة. يطلب always من كل شخص يلتقط سير العمل الخاص به وجهاً. لا يعرض never الخطوة أبداً، وتقوم بجمع الموافقة بنفسك قبل التقاط صورة سيلفي. يتم تسجيل كل تغيير في سجل التدقيق. راجع الموافقة البيومترية.

الخيارات المتاحة:
auto,
always,
never
allowed_domains
string[]

الأصول (على سبيل المثال https://app.example.com؛ وhttp لـ localhost فقط) التي قد يتم تضمين سير عمل التحقق المستضاف فيها، وقد يُعاد إرسال المستخدم إليها عبر استدعاء رجوعي للجلسة. لا تتأثر الاستدعاءات بين الخوادم. تعني القائمة الفارغة عدم وجود أي قيود. يخزن Didit كل أصل بأحرف صغيرة دون منفذ افتراضي. أي إدخال غير صالح يفشل بخطأ 400 في allowed_domains.

Maximum array length: 50
Maximum string length: 300
مثال:
آخر تعديل في ٧ نوفمبر ٢٠٢٦