الانتقال إلى المحتوى الرئيسي
PATCH
cURL
استخدم PATCH للتحديثات الجزئية. لإعادة تسمية سير عمل، أرسل workflow_label فقط.
لتغيير الفحوصات في سير العمل، أرسل مصفوفة features الكاملة التي تريدها. يؤدي ذلك إلى استبدال ترتيب الميزات والإعدادات السابقة.
تحافظ واجهة API للإصدار v3 على بساطة سير العمل: مسار خطي واحد وخطوة حالة نهائية واحدة. لا تُقبل هنا العُقد المتفرعة وعُقد الإجراءات وعُقد webhook.

مرجع إعدادات الميزات

عند إرسال features في طلب PATCH، تستبدل المصفوفة ترتيب الميزات والإعدادات السابقة. أدرج كل إعدادات config المطلوبة مرة أخرى. يعتمد كائن config الدقيق على الميزة. راجع قائمة الحقول الكاملة والقيم الافتراضية والإعدادات المطلوبة ونطاقات القيم والأمثلة في إعدادات ميزات سير العمل. بالنسبة إلى OCR، احذف config.documents_allowed، أو أرسل null، أو أرسل {} للسماح بكل أنواع المستندات المدعومة. أدرجه فقط عندما تريد قصر سير العمل على دول أو أنواع مستندات محددة. بالنسبة إلى QUESTIONNAIRE، الحقل config.questionnaire_uuid مطلوب.

تحديث إعدادات سير العمل

يمكنك تحديث إعدادات مستوى الجلسة دون لمس قائمة الميزات. أرسل الحقول التي تريد تغييرها فقط.
استخدم uuid الخاص بسير العمل الذي يعيده endpoint الخاص بالقائمة أو الإنشاء أو الجلب، كقيمة لـ settings_uuid في هذا الرابط.

التفويضات

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.

معلمات المسار

settings_uuid
string<uuid>
مطلوب

معرف UUID لكل إصدار من سير العمل المطلوب تحديثه.

الجسم

application/json

تحديث البيانات الوصفية لسير العمل أو استبدال القائمة الخطية الكاملة للميزات. قائمة بيضاء صارمة للحقول: يُرفض أي مفتاح غير مدرج هنا برمز 400.

workflow_label
string

اسم العرض لسير العمل (بحد أقصى 50 حرفاً).

Maximum string length: 50
is_default
boolean

تعيين سير العمل هذا كافتراضي للجلسات الجديدة.

status
enum<string>

يتحكم في تحديد الإصدارات. احذفه لتحديث الإصدار الحالي في مكانه (المسودات تُنشر تلقائياً). استخدام published على إصدار منشور بالفعل يُنشئ إصداراً جديداً ويُعيده. لا يكون draft صالحاً إلا عندما يكون الإصدار لا يزال مسودة.

الخيارات المتاحة:
draft,
published
features
object[]

إذا تم توفيره، فإن هذا يستبدل ترتيب الميزات وتكوينها بالكامل.

Minimum array length: 1
is_white_label_enabled
boolean

تمكين تخصيص العلامة البيضاء للجلسات التي تم إنشاؤها باستخدام سير العمل هذا.

is_desktop_allowed
boolean

السماح بتشغيل مسار التحقق على متصفحات أجهزة سطح المكتب.

max_retry_attempts
integer

الحد الأقصى لمحاولات إعادة المحاولة المسموح بها بعد عملية تحقق مرفوضة. القيمة 0 تحظر المستخدم بعد الرفض الأول.

النطاق المطلوب: 0 <= x <= 10
retry_window_days
integer | null

النافذة الزمنية المتجددة بالأيام المستخدمة لحساب عمليات إعادة المحاولة. تفرض القيمة null حداً طوال الوقت.

النطاق المطلوب: 1 <= x <= 365
face_liveness_max_attempts
integer

الحد الأقصى لعمليات إرسال كشف الحيوية لكل جلسة. يتم أيضاً نسخ هذه القيمة في عُقد سير عمل كشف الحيوية وتقدير العمر المنشأة ما لم يستبدلها إعداد على مستوى الميزة.

النطاق المطلوب: 1 <= x <= 3
face_match_max_attempts
integer

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

النطاق المطلوب: 1 <= x <= 3
session_expiration_time
integer

عدد الثواني قبل انتهاء صلاحية الجلسة غير المكتملة. الحد الأدنى ساعة واحدة (3600)، والحد الأقصى 4 أسابيع (2419200).

النطاق المطلوب: 3600 <= x <= 2419200

الاستجابة

تم تحديث سير العمل. يمثل نص الاستجابة التكوين الكامل (FULL) للإصدار الناتج (نفس البنية الخام لـ VerificationSettings كما في GET /v3/workflows/{settings_uuid}/). عندما يُنشئ التحديث إصداراً جديداً (إرسال status: "published" على صف منشور)، يختلف كل من uuid وversion المُرجَعين عن تلك التي قمت بتعديلها — استخدم uuid المُرجَع للاستدعاءات اللاحقة.

الحقول أدناه ذات أنواع محددة (typed)؛ ويحمل الكائن أيضاً كل عمود آخر من تكوين سير العمل (مفاتيح تبديل الميزات، والحدود، وإجراءات التحذير، والمستندات المسموح بها، وعمليات الاستدعاء) كخصائص إضافية. الحقول التي لا تنطبق على workflow_type تكون null.

uuid
string<uuid>

معرّف لكل إصدار (settings_uuid). لكل إصدار من سير العمل معرّف خاص به.

workflow_id
string<uuid>

معرّف ثابت تشترك فيه جميع إصدارات سير العمل. تستخدم الجلسات التي يتم إنشاؤها باستخدامه أحدث إصدار منشور.

workflow_label
string

اسم العرض لسير العمل.

workflow_type
enum<string> | null

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

الخيارات المتاحة:
kyc,
kyb,
adaptive_age_verification,
biometric_authentication,
address_verification,
questionnaire_verification,
email_verification,
phone_verification,
null
is_default
boolean

ما إذا كان هذا هو سير العمل الافتراضي للتطبيق.

is_archived
boolean

لا يمكن لمهام سير العمل المؤرشفة بدء جلسات جديدة.

version
integer

رقم الإصدار ضمن سير العمل.

status
enum<string>

إصدارات المسودة قابلة للتعديل؛ أما الإصدارات المنشورة فغير قابلة للتغيير وتُستخدم للجلسات الجديدة.

الخيارات المتاحة:
draft,
published
published_at
string<date-time> | null

وقت نشر هذا الإصدار. القيمة null للمسودات.

is_simple_workflow
boolean

تكون true عندما لا يحتوي سير العمل على workflow_graph مخصص.

is_editable
boolean

تكون القيمة true فقط لإصدارات draft.

workflow_url
string<uri>

رابط URL عام يبدأ جلسة باستخدام سير العمل هذا.

workflow_graph
object | null

هيكل المخطط لسير العمل (العقد والحواف). null لسير العمل البسيط.

features
string

الميزات المُمكّنة مفصولة بـ " + "، على سبيل المثال "OCR + LIVENESS".

total_price
number | null

السعر لكل جلسة؛ بالنسبة لمسارات سير العمل القائمة على المخطط، يمثل المسار الأكثر تكلفة.

min_price
number | null

سعر المسار الأقل تكلفة عبر سير العمل.

max_price
number | null

سعر المسار الأكثر تكلفة عبر سير العمل.

special_add_on_prices
object | null

أسعار الإضافات الخاصة بالمؤسسة، أو null عند عدم تعيين أي منها.

max_retry_attempts
integer

عمليات إعادة المحاولة المسموح بها بعد عملية تحقق مرفوضة.

retry_window_days
integer | null

الأيام التي يُسمح خلالها بإعادة المحاولة.

session_expiration_time
integer

عدد الثواني قبل انتهاء صلاحية الجلسة غير المكتملة.

questionnaire
object | null

الاستبيان المرفق بسير العمل، أو null.

kyb_role_settings
object[]

إعدادات التحقق لكل دور للأشخاص الرئيسيين في KYB.

created_at
string<date-time>
updated_at
string<date-time>
signature_availability
object

أي مستويات التوقيع الإلكتروني يمكنها التوقيع الآن. تحقق منها قبل تعيين signature_level. يتم إرجاعها في مسارات عمل kyc وkyb والمخطط.

is_bank_verification_enabled
boolean

ما إذا كان سير عمل KYC أو KYB البسيط يشغّل التحقق المصرفي. يعمل بعد خطوات التواصل (والتحقق من الموقع) وقبل التحقق من قواعد البيانات وفحص AML وتحليل IP. التحقق المصرفي غير متاح بشكل عام بعد: يتم رفض تفعيله أينما لم يكن مُمكّناً.

bank_verification_config
object

إعدادات التحقق البنكي لسير عمل بسيط، مع نفس المفاتيح التي تقبلها عقدة BANK_VERIFICATION (على سبيل المثال bank_countries وbank_method_order). يتم تجاهل المفاتيح غير المعروفة. كل مفتاح اختياري والمفتاح الغائب يحتفظ بقيمته الافتراضية، لذا يعني {} تطبيق جميع القيم الافتراضية. راجع إعدادات التحقق البنكي.

مثال:
is_geolocation_enabled
boolean

ما إذا كان سير عمل KYC البسيط يشغّل التحقق من الموقع. يعمل بعد خطوات التواصل وقبل التحقق المصرفي والتحقق من قواعد البيانات. لا يمكن لسير عمل الشركات (KYB) تشغيله.

geolocation_config
object

إعدادات التحقق من الموقع لسير عمل بسيط، مع نفس المفاتيح التي تأخذها عقدة GEOLOCATION (على سبيل المثال is_geolocation_geofencing_enabled و geolocation_max_attempts). يتم تجاهل المفاتيح غير المعروفة. كل مفتاح اختياري ويحتفظ المفتاح الغائب بقيمته الافتراضية، لذا فإن {} تعني جميع القيم الافتراضية.

مثال:
آخر تعديل في ٧ نوفمبر ٢٠٢٦