> ## 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.

# الحصول على مهمة مراقبة AML المستمرة API

> تعرّف في Didit على حالة مهمة مراقبة AML المستمرة وعدادات نتائجها ونتيجة كل سجل، والمهمة المُطلقة من نقطة نهاية المستخدمين أو الشركات.



احصل على مطالبة مهمة مراقبة AML
        نسخ الموجّه إلى الحافظة



      
      

\<pre>

\`Goal: Read the status and the per-record results of an AML ongoing monitoring job started with POST /v3/users/aml-monitoring/ or POST /v3/businesses/aml-monitoring/. Needed whenever the toggle call returned 202 (more than 20 profiles); also works for jobs that already completed inline.

Endpoint: GET https://verification.didit.me/v3/aml-monitoring/jobs/{job_id}/
Auth header: x-api-key: <DIDIT_API_KEY>

Path param:
\- job_id: the job_id returned by the toggle endpoint.

curl:
curl 'https://verification.didit.me/v3/aml-monitoring/jobs/JOB_ID/' \
-H 'x-api-key: YOUR_API_KEY'

Response 200:
\{
"job_id": "<uuid>",
"status": "PROCESSING",            // PENDING | PROCESSING | COMPLETED | FAILED
"is_enabled": true,
"target_type": "user",             // user | business
"total": 120,
"processed": 40,
"outcomes": {"enabled": 12, "screened_and_enabled": 25, "already_enabled": 3, "disabled": 0, "skipped_no_identity_data": 0, "skipped_blocked": 0, "skipped_sandbox": 0, "failed_provider": 0, "failed_insufficient_balance": 0},
"results": [
\{"didit_internal_id": "<uuid>", "vendor_data": "user-123", "outcome": "enabled"},
...one entry per processed profile, in processing order...
],
"error": null,                     // generic message when status is FAILED
"created_at": "<datetime>",
"completed_at": null
}

Polling: request the job every couple of seconds while status is PENDING or PROCESSING. results grows as profiles are processed and is complete once status is COMPLETED. A FAILED job keeps the results recorded before the failure and carries a short generic message in error; re-send the toggle request for the profiles that have no result yet. Per-record results are recorded for jobs started through the API; a job started from the Business Console reports counters only.

Failure modes:
\- 401 - missing/invalid x-api-key.
\- 404 - no such job for this application (jobs are only visible to the application that created them).

For end-to-end Didit integration, paste in the full prompt at /integration/integration-prompt.`

\</pre>



      
      

الصق في

## نظرة عامةتُرجع هذه الواجهة مهمة مراقبة AML المستمرة التي بدأت من [تفعيل أو إيقاف مراقبة AML للمستخدمين](https://docs.didit.me/ar/management-api/aml-monitoring/toggle-users.md) أو [تفعيل أو إيقاف مراقبة AML للشركات](https://docs.didit.me/ar/management-api/aml-monitoring/toggle-businesses.md): حالتها، والعدادات لكل نتيجة، وعنصر `results` واحد لكل مستخدم أو شركة تمت معالجتها.تُشغَّل التحديدات التي تضم أكثر من 20 ملفًا شخصيًا في الخلفية، ويعيد استدعاء التفعيل أو الإيقاف الرمز `202` مع مهمة بحالة `PENDING`. استعلم من هذا endpoint كل بضع ثوانٍ حتى تصبح `status` إما `COMPLETED` أو `FAILED`. تُملأ `results` تدريجيًا أثناء معالجة الملفات الشخصية، وبالترتيب نفسه الذي تُعالج به، وتكتمل عند بلوغ المهمة الحالة `COMPLETED`. تُسجَّل نتائج كل سجل فقط للمهام التي بدأت عبر API؛ أما المهمة التي بدأت من Business Console فتعرض العدادات فقط.## حالة المهمة| `status` | المعنى |
| - | - |
| `PENDING` | تم قبول المهمة ولم تبدأ بعد. |
| `PROCESSING` | قيد التشغيل؛ يجري تحديث `processed` و`outcomes` و`results`. |
| `COMPLETED` | لكل ملف شخصي نتيجة. |
| `FAILED` | توقفت المهمة قبل اكتمالها. يحتوي `error` على رسالة عامة قصيرة، وتُحفظ النتائج المسجلة قبل الفشل. أعد إرسال طلب التفعيل أو الإيقاف للملفات الشخصية التي ليس لها نتيجة بعد. |توثَّق قيم `outcome` لكل سجل في صفحات التفعيل.## الأذوناتيمكن لأي مفتاح API نشط يتبع التطبيق استدعاء هذا endpoint. لا تكون المهمة مرئية إلا للتطبيق الذي أنشأها، وأي `job_id` آخر يعيد الرمز `404`.## ذات صلة- [تفعيل أو إيقاف مراقبة AML للمستخدمين](https://docs.didit.me/ar/management-api/aml-monitoring/toggle-users.md)
- [تفعيل أو إيقاف مراقبة AML للشركات](https://docs.didit.me/ar/management-api/aml-monitoring/toggle-businesses.md)
- [مراقبة AML المستمرة](https://docs.didit.me/ar/core-technology/aml-screening/continuous-monitoring-aml-screening.md)


## OpenAPI

````yaml ar/openapi-25.json GET /v3/aml-monitoring/jobs/{job_id}/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: API التحقق من الهوية. قم بالمصادقة باستخدام الرأس x-api-key.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/aml-monitoring/jobs/{job_id}/:
    get:
      tags:
        - AML Ongoing Monitoring
      summary: الحصول على مهمة مراقبة AML المستمرة
      description: >-
        الحالة وعدادات النتائج والنتائج لكل سجل لمهمة تبديل المراقبة التي بدأت
        من `POST /v3/users/aml-monitoring/` أو `POST
        /v3/businesses/aml-monitoring/`. قم بالاستعلام الدوري كل ثانيتين أثناء
        كون `status` هي `PENDING` أو `PROCESSING`؛ وتكتمل `results` بمجرد أن
        تصبح `COMPLETED`.
      operationId: get_aml_monitoring_job
      parameters:
        - name: job_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: معرّف `job_id` الذي يرجعه endpoint التبديل.
      responses:
        '200':
          description: المهمة.
          content:
            application/json:
              schema:
                type: object
                properties:
                  job_id:
                    type: string
                    format: uuid
                  status:
                    type: string
                    enum:
                      - PENDING
                      - PROCESSING
                      - COMPLETED
                      - FAILED
                  is_enabled:
                    type: boolean
                    description: true عندما تفعّل المهمة المراقبة، وfalse عندما تعطلها.
                  target_type:
                    type: string
                    enum:
                      - user
                      - business
                    description: أي عائلة ملفات تعريف تبدّلها المهمة.
                  total:
                    type: integer
                    description: الملفات الشخصية التي تعالجها المهمة.
                  processed:
                    type: integer
                    description: الملفات الشخصية التي تمت معالجتها حتى الآن.
                  outcomes:
                    type: object
                    description: >-
                      عدادات النتائج لكل سجل. يُحل كل ملف تعريفي محدد إلى عداد
                      واحد بالضبط؛ لا يتم تخطي أي شيء بصمت.
                    properties:
                      enabled:
                        type: integer
                        description: تم تمكين المراقبة على فحص AML حالي.
                      screened_and_enabled:
                        type: integer
                        description: >-
                          تم إنشاء فحص AML جديد (تمت فوترته) وتم تفعيل المراقبة
                          عليه.
                      already_enabled:
                        type: integer
                        description: >-
                          كانت المراقبة نشطة بالفعل؛ لم يتغير شيء ولم تتم فوترة
                          أي شيء.
                      disabled:
                        type: integer
                        description: >-
                          تم إيقاف تشغيل المراقبة في جميع فحوصات AML للملف
                          التعريفي.
                      skipped_no_identity_data:
                        type: integer
                        description: >-
                          تم التخطي: يفتقر الملف التعريفي إلى الاسم الكامل
                          وتاريخ الميلاد والدولة (للمستخدمين) أو الاسم (للشركات)
                          المطلوبة لإجراء الفحص.
                      skipped_blocked:
                        type: integer
                        description: 'تم التخطي: تم حظر المستخدم.'
                      skipped_sandbox:
                        type: integer
                        description: >-
                          تم التخطي: تطبيق في البيئة التجريبية، لم يتم إنشاء أي
                          فحص.
                      failed_provider:
                        type: integer
                        description: تعذر إكمال الفحص؛ أعد المحاولة لاحقاً.
                      failed_insufficient_balance:
                        type: integer
                        description: نفد الرصيد أثناء تشغيل المهمة.
                  results:
                    type: array
                    description: >-
                      إدخال واحد لكل ملف شخصي تمت معالجته، وفق ترتيب المعالجة.
                      تتزايد الإدخالات أثناء تشغيل المهمة؛ وتكتمل بمجرد أن تصبح
                      الحالة COMPLETED. يُسجَّل للمهام التي بدأت عبر API؛ أما
                      المهمة التي تبدأ من Business Console فتبلغ عن العدادات
                      فقط.
                    items:
                      type: object
                      properties:
                        didit_internal_id:
                          type: string
                          format: uuid
                          description: المعرّف الداخلي لـ Didit للملف التعريفي.
                        vendor_data:
                          type: string
                          nullable: true
                          description: المعرّف الخاص بك للملف الشخصي.
                        outcome:
                          type: string
                          enum:
                            - enabled
                            - screened_and_enabled
                            - already_enabled
                            - disabled
                            - skipped_no_identity_data
                            - skipped_blocked
                            - skipped_sandbox
                            - failed_provider
                            - failed_insufficient_balance
                  error:
                    type: string
                    nullable: true
                    description: >-
                      رسالة فشل عامة عندما تكون الحالة FAILED؛ يتم الاحتفاظ
                      بالسبب التفصيلي من جهة المنصة.
                  created_at:
                    type: string
                    format: date-time
                  completed_at:
                    type: string
                    format: date-time
                    nullable: true
        '401':
          description: مفتاح API مفقود أو غير صالح.
        '404':
          description: لا توجد مهمة كهذه لهذا التطبيق.
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl 'https://verification.didit.me/v3/aml-monitoring/jobs/JOB_ID/'
            \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            result = client.aml_monitoring.retrieve_job(
                "11111111-2222-3333-4444-555555555555",
            )
            print(result)
        - lang: javascript
          label: Node.js
          source: >-
            import Didit from "@didit-protocol/sdk-node";


            // Reads DIDIT_API_KEY.

            const didit = new Didit();


            const result = await
            didit.amlMonitoring.retrieveJob("11111111-2222-3333-4444-555555555555");

            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.AMLMonitoring.RetrieveJob(ctx, \"11111111-2222-3333-4444-555555555555\")\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"
        - lang: java
          label: Java
          source: >-
            import me.didit.Didit;


            // Reads DIDIT_API_KEY.

            Didit client = new Didit();


            var result =
            client.amlMonitoring().retrieveJob("11111111-2222-3333-4444-555555555555");

            System.out.println(result);
        - lang: php
          label: PHP
          source: >-
            <?php


            require 'vendor/autoload.php';


            use Didit\DiditClient;


            // Reads DIDIT_API_KEY.

            $didit = new DiditClient();


            $result =
            $didit->amlMonitoring->retrieveJob('11111111-2222-3333-4444-555555555555');

            print_r($result->toArray());
        - lang: ruby
          label: Ruby
          source: >-
            require "didit"


            # Reads DIDIT_API_KEY.

            didit = Didit::Client.new


            result =
            didit.aml_monitoring.retrieve_job("11111111-2222-3333-4444-555555555555")

            puts result.to_h
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using System.Text.Json;

            using Didit;


            // Reads DIDIT_API_KEY.

            using var client = new DiditClient();


            var result = await
            client.AmlMonitoring.RetrieveJobAsync("11111111-2222-3333-4444-555555555555");

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        مفتاح API الخاص بتطبيقك، من Developers -> API keys في Business Console.
        يمتلك المفتاح الأساسي وصولاً كاملاً. يمكن تحديد نطاق المفتاح المسمى: لا
        شيء، أو قراءة، أو كتابة لكل مورد، ومحدوداً ببعض مسارات العمل أو بالجلسات
        المقبولة، وبقائمة من عناوين IP، وبتاريخ انتهاء الصلاحية. يشير 401 إلى أن
        المفتاح غير صحيح أو ملغى أو منتهي الصلاحية؛ ويشير 403 إلى أنه لم يتم
        إرسال أي مفتاح، أو أن المفتاح ليس لديه حق الوصول إلى هذا المورد أو
        الإجراء، أو أن الطلب جاء من عنوان خارج قائمة عناوين IP الخاصة به؛ ويشير
        404 في مسار جلسة إلى أن الجلسة خارج مسارات العمل أو الحالات الخاصة
        بالمفتاح. يتلقى المفتاح الذي لا يمتلك حق الوصول إلى الوسائط عناوين URL
        للصور ومقاطع الفيديو وملفات PDF كـ null، ويتلقى المفتاح الذي لا يمتلك
        إذن كتابة للجلسات روابط الجلسة وtoken كـ null. راجع
        https://docs.didit.me/console/api-keys.

````

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