تكامل مراقبة الأحداث
استخدم مراقبة الأحداث عندما تريد أن تقيّم نيزا نشاط المنتج أثناء حدوثه: التسجيل، تسجيل الدخول، المدفوعات، السحوبات، وتغييرات الملف الشخصي وغيرها من الإجراءات التي قد تحمل مخاطر احتيال.
المسار الأساسي
- أرسل حدثًا موحّدًا إلى نيزا.
- تُثري نيزا الحدث وتقيّمه وفق قواعد المستأجر.
- طبّق قرار ALLOW أو BLOCK أو REVIEW المُعاد.
- أرسل ملاحظات بعد أن يؤكد فريق العمليات النتيجة.
اختر نمط التكامل
قرار متزامن
استخدم POST /api/v1/decisions/evaluate عندما يحتاج تدفق المنتج قرارًا فوريًا قبل المتابعة.
POST /api/v1/decisions/evaluate { "eventName": "payment.attempt", "eventCategory": "TRANSACTION", "customer": { "externalId": "cust_123", "email": "user@example.com" }, "device": { "externalId": "device_abc123", "fingerprint": "fp_abc123" }, "ip": "203.0.113.42", "sessionId": "session_xyz789", "metadata": { "amount": 250, "currency": "SAR", "paymentMethod": "card" } }
مراقبة غير متزامنة
استخدم POST /api/v1/events أو POST /api/v1/events/async عندما لا يحتاج المنتج انتظار القرار.
POST /api/v1/events/async { "eventName": "user.login", "eventCategory": "AUTHENTICATION", "customer": { "externalId": "cust_123" }, "device": { "externalId": "device_abc123" }, "ip": "203.0.113.42", "country": "SA", "sessionId": "session_xyz789" }
نمذجة الأحداث بشكل متسق
أبقِ أسماء الأحداث مستقرة ومحددة بالمجال، مثل user.signup أو payment.attempt أو withdrawal.requested.
customer.externalId— معرف العميل المستقر لديك.device.externalIdأوdevice.fingerprint— سياق جهاز مستقر.sessionId— يجمع النشاط من زيارة واحدة.metadata— حقول خاصة بالمنتج يمكن للقواعد تقييمها.
من القواعد إلى القرار
تقيّم القواعد حمولة الحدث وتنتج إجراءً. استخدم إشارات احتيال عالية الثقة لـ BLOCK، والإشارات الغامضة لـ REVIEW، والنشاط الطبيعي لـ ALLOW.
أبقِ أسماء القواعد قابلة للقراءة لأنها تظهر في مراجعة العمليات وسير عمل الملاحظات.
متابعة النتائج
احفظ معرفات الاستجابة من القرارات المتزامنة واستخدم correlationIds.eventId عند استعلام حدث أو إرسال ملاحظات.
{ "decision": "REVIEW", "riskScore": 82, "correlationIds": { "requestId": "req_abc123xyz", "eventId": "evt_ckm9876543210" } }
POST /api/v1/feedback/event/:id { "label": "FRAUD", "notes": "Customer confirmed the payment was unauthorized", "externalCaseId": "case_12345" }