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

# التحقق من التوقيعات: إعادة فحص ملفات PDF الموقّعة

> أعد فحص المستندات الموقّعة في خطوة التوقيع الإلكتروني عبر Didit: سلامة الملف وتوقيع PAdES والشهادة وبيانات الإلغاء والختم الزمني.

يتحقق مجددًا من المستندات الموقّعة لخطوة ما، ويحفظ النتيجة في `validation` لكل موقّع. يعيد Didit قراءة كل ملف PDF موقّع ويتحقق من قيمة SHA-256 الخاصة به. وبالنسبة إلى التوقيع المتقدم (AES)، يتحقق أيضًا من توقيع PAdES والشهادة وبيانات الإلغاء والطابع الزمني. التوقيع البسيط لا يحتوي على توقيع رقمي، لذلك يُتحقق فقط من سلامة الملف. لا يُعاد توقيع أي مستند. في وحدة التحكم، يقابل ذلك زر **التحقق مجددًا** في تبويب **التوقيع** الخاص بالجلسة.

```bash theme={null}
curl -X POST 'https://verification.didit.me/v3/session/{session_id}/signatures/{node_id}/validate/' \
  -H 'x-api-key: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"signature_id": "{signature_id}"}'
```

أرسل `signature_id` للتحقق من موقّع واحد. ومن دون هذا الحقل، يتحقق Didit من كل موقّعي الخطوة، ويرد بالرمز `409` مع `signature_not_signed` إذا لم يوقّع أحدهم. أما ملف PDF الموقّع المخزَّن الذي لم يعد يطابق `sha256_signed`، فيرد بالرمز `400` مع `signature_document_changed`.

الاستجابة هي `{ "signatures": [...] }` وتتضمن الموقّعين الذين جرى التحقق منهم. اقرأ `validation.valid` للحصول على النتيجة الإجمالية، و`validation.documents[]` لكل مستند. راجع [التحقق من التوقيع مجددًا](https://docs.didit.me/ar/core-technology/electronic-signature/report-electronic-signature.md#التحقق-من-التوقيع-مجددًا) لمعرفة كل حقل.

## ذات صلة

* [التقرير الخاص بالتوقيع الإلكتروني](https://docs.didit.me/ar/core-technology/electronic-signature/report-electronic-signature.md)
* [تنزيل مستند موقّع](https://docs.didit.me/ar/sessions-api/electronic-signature/download-signed-document.md)


## OpenAPI

````yaml ar/openapi-25.json POST /v3/session/{sessionId}/signatures/{nodeId}/validate/
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/session/{sessionId}/signatures/{nodeId}/validate/:
    post:
      tags:
        - Sessions
      summary: التحقق من صحة التواقيع مرة أخرى
      description: >-
        إعادة التحقق من المستندات الموقعة في خطوة التوقيع الإلكتروني. تعيد Didit
        قراءة كل ملف PDF موقع، وتتحقق من قيمة SHA-256 الخاصة به، وبالنسبة
        للتوقيع المتقدم (AES)، تتحقق من توقيع PAdES، والشهادة، وبيانات الإلغاء،
        والطابع الزمني (لا يحتوي التوقيع البسيط على توقيع رقمي، لذا يتم التحقق
        من سلامة الملف فقط)، ثم تحفظ النتيجة في حقل `validation` الخاص بكل موقع
        وتُرجع العناصر المحدثة. لا تتم إعادة توقيع أي شيء. أرسل `signature_id`
        للتحقق من موقع واحد؛ وبدونه، يتم فحص كل موقع في الخطوة، ويفشل الاستدعاء
        إذا لم يوقع أي منهم.


        يتطلب الإذن `write:sessions`؛ يعمل مفتاح API الخاص بك. في لوحة التحكم،
        هذا هو زر **Validate again**.
      operationId: post_v3_session_signature_validate
      parameters:
        - name: sessionId
          in: path
          required: true
          description: جلسة التحقق من المستخدمين (KYC) أو التحقق من الشركات (KYB).
          schema:
            type: string
            format: uuid
            example: 11111111-2222-3333-4444-555555555555
        - name: nodeId
          in: path
          required: true
          description: 'خطوة التوقيع الإلكتروني: `node_id` الخاص بالعنصر في `signatures[]`.'
          schema:
            type: string
            example: feature_signature
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                signature_id:
                  type: string
                  format: uuid
                  description: '`id` لعنصر أحد الموقّعين في `signatures[]`.'
            example:
              signature_id: 0e6c2a8e-6c2f-4b8e-9a51-3f2f6a7d9b10
      responses:
        '200':
          description: الموقعون الذين تم فحصهم، مع تحديث `validation` الخاص بهم.
          content:
            application/json:
              schema:
                type: object
                properties:
                  signatures:
                    type: array
                    items:
                      $ref: '#/components/schemas/SignatureResult'
        '400':
          description: ملف PDF موقع ومخزّن لم يعد يطابق SHA-256 المسجل عند توقيعه.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                  code:
                    type: string
              examples:
                Document changed:
                  summary: ملف موقع لم يعد يطابق تجزئته
                  value:
                    code: signature_document_changed
                    detail: signature_document_changed
        '403':
          description: >-
            بيانات اعتماد مفقودة، أو بيانات اعتماد لا يمكنها قراءة هذه الجلسة.
            يؤدي المفتاح المفقود إلى إرجاع `403`؛ بينما يؤدي المفتاح الخاطئ أو
            الملغى أو منتهي الصلاحية إلى إرجاع `401`.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: You do not have permission to perform this action.
        '404':
          description: >-
            لا يوجد توقيع مطابق: الجلسة أو الخطوة أو الموقّع غير موجود أو تم
            حذفه.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                  code:
                    type: string
              examples:
                Unknown signer:
                  summary: لا يوجد توقيع كهذا في هذه الخطوة
                  value:
                    code: signature_not_found
                    detail: signature_not_found
        '409':
          description: موقّع الخطوة لم يوقّع بعد، لذا لا يوجد شيء للتحقق منه.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                  code:
                    type: string
              examples:
                Not signed:
                  summary: الموقّع لم يوقّع بعد
                  value:
                    code: signature_not_signed
                    detail: signature_not_signed
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            result = client.sessions.signatures.validate(
                "11111111-2222-3333-4444-555555555555",
                "feature_signature",
                signature_id="0e6c2a8e-6c2f-4b8e-9a51-3f2f6a7d9b10",
            )
            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.sessions.signatures.validate(
              "11111111-2222-3333-4444-555555555555",
              "feature_signature",
              {
                signature_id: "0e6c2a8e-6c2f-4b8e-9a51-3f2f6a7d9b10",
              },
            );
            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.Sessions.Signatures.Validate(ctx, \"11111111-2222-3333-4444-555555555555\", \"feature_signature\", didit.SessionsSignaturesValidateParams{\n\tSignatureID: didit.String(\"0e6c2a8e-6c2f-4b8e-9a51-3f2f6a7d9b10\"),\n})\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"
        - lang: java
          label: Java
          source: >-
            import me.didit.Didit;

            import me.didit.types.SessionsSignaturesValidateParams;


            // Reads DIDIT_API_KEY.

            Didit client = new Didit();


            var result =
            client.sessions().signatures().validate("11111111-2222-3333-4444-555555555555",
            "feature_signature", SessionsSignaturesValidateParams.builder()
                    .signatureId("0e6c2a8e-6c2f-4b8e-9a51-3f2f6a7d9b10")
                    .build());
            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->sessions->signatures->validate('11111111-2222-3333-4444-555555555555',
            'feature_signature', [
                'signature_id' => '0e6c2a8e-6c2f-4b8e-9a51-3f2f6a7d9b10',
            ]);

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

            # Reads DIDIT_API_KEY.
            didit = Didit::Client.new

            result = didit.sessions.signatures.validate(
              "11111111-2222-3333-4444-555555555555",
              "feature_signature",
              signature_id: "0e6c2a8e-6c2f-4b8e-9a51-3f2f6a7d9b10"
            )
            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.Sessions.Signatures.ValidateAsync("11111111-2222-3333-4444-555555555555",
            "feature_signature", new SessionsSignaturesValidateParams

            {
                SignatureId = "0e6c2a8e-6c2f-4b8e-9a51-3f2f6a7d9b10",
            });

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    SignatureResult:
      type: object
      description: >-
        نتيجة موقّع واحد لخطوة واحدة من التوقيع الإلكتروني. راجع [تقرير التوقيع
        الإلكتروني](/ar/core-technology/electronic-signature/report-electronic-signature).
      properties:
        id:
          type: string
          format: uuid
          description: مرّره كـ `signature_id` لتنزيل أدلة هذا الموقّع أو التحقق من توقيعه.
        node_id:
          type: string
          description: خطوة سير العمل التي أنتجتها.
        status:
          type: string
          enum:
            - intro
            - review
            - code
            - signing
            - signed
            - declined
          description: >-
            موضع الموقّع ضمن الخطوة. القيمة `signed` فقط هي التي تعني أن
            المستندات قد تم توقيعها.
        verdict:
          type: string
          enum:
            - Not Finished
            - Approved
            - In Review
            - Declined
          description: >-
            نتيجة الخطوة. يُعيّنها التحذير من خلال قاعدته؛ وتُطبّق قواعد الحالة
            المخصصة بعد ذلك.
        level:
          type: string
          enum:
            - simple
            - aes
            - qes
          description: >-
            `simple` (افتراضي) أو `aes`. التوقيع `qes` (التوقيع الإلكتروني
            المؤهل، QES) هو إضافة غير متوفرة بعد.
        format:
          type: string
          enum:
            - pdf
            - pades
          description: '`pdf` للتوقيع من النوع Simple، و`pades` للنوع Advanced (AES).'
        profile:
          type: string
          nullable: true
          description: '`PAdES-B-LT` بمجرد إتمام توقيع متقدم (AES)، وخلاف ذلك null.'
        signer:
          type: object
          properties:
            name:
              type: string
              nullable: true
              description: >-
                اسم الموقّع. يتم التحقق منه (من التحقق من الهوية المقبول أو
                الجلسة) باستثناء المستوى Simple دون اسم جلسة تم التحقق منه، حيث
                يكون الاسم هو ما كتبه الموقّع ولا يتم التحقق منه.
            capacity:
              type: string
              enum:
                - self
                - company
            company:
              type: string
              nullable: true
            role:
              type: string
              nullable: true
              description: المسمى الوظيفي للشخص الرئيسي، كما تم التصريح به.
            roles:
              type: array
              items:
                type: string
              description: الأدوار المنظمة للشخص الرئيسي، كما تم التصريح بها للشركة.
            identity_session_id:
              type: string
              format: uuid
              description: جلسة KYC التي تحققت من الموقّع.
        identity_used:
          type: object
          description: >-
            الهوية التي تم التحقق منها والتي يعتمد عليها التوقيع. فارغة بالنسبة
            للتوقيع البسيط (Simple) بدون هوية تم التحقق منها.
          properties:
            session_id:
              type: string
              format: uuid
            kyc_id:
              type: string
              format: uuid
              nullable: true
            verified:
              type: boolean
            expected_name:
              type: string
              nullable: true
              description: الاسم الذي كان على الموقّع مطابقته.
        certificate:
          type: object
          nullable: true
          description: >-
            الشهادة التي تم توقيع المستندات بها. تكون `null` حتى يتم التوقيع،
            وتكون دائماً `null` للتوقيع البسيط (Simple signature).
          properties:
            issuer:
              type: string
            issued_to:
              type: string
            serial:
              type: string
              description: الرقم التسلسلي، بنظام السداسي عشر.
            valid_from:
              type: string
              format: date-time
            valid_until:
              type: string
              format: date-time
        confirmation:
          type: object
          properties:
            channel:
              type: string
              nullable: true
              enum:
                - email
                - sms
              description: '`null` للتوقيع من النوع Simple، والذي لا يحتوي على رمز.'
            destination:
              type: string
              nullable: true
              description: جهة الاتصال المقنّعة التي أُرسل الرمز إليها.
            confirmed_at:
              type: string
              format: date-time
              nullable: true
            attempts:
              type: integer
              description: الرموز المُدخلة، بما في ذلك الرمز الصحيح.
        timestamp:
          type: object
          nullable: true
          description: >-
            الختم الزمني RFC 3161 في التوقيع، الصادر عن Didit. تكون القيمة
            `null` حتى يتم التوقيع، ودائماً `null` للتوقيع البسيط (Simple).
          properties:
            time:
              type: string
              format: date-time
            qualified:
              type: boolean
              description: دائماً `false` لـ AES.
            valid:
              type: boolean
        documents:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                format: uuid
                description: >-
                  المستند الموجود في نسخة هذا الموقّع. استخدمه لتنزيل الملف
                  الموقّع.
              uuid:
                type: string
                format: uuid
                description: مطابق لـ `id`.
              title:
                type: string
              file_name:
                type: string
              pages:
                type: integer
                description: >-
                  صفحات المستند الموقعة. بالنسبة لـ Word، صفحات ملف PDF
                  المُحوَّل.
              size_bytes:
                type: integer
              sha256_original:
                type: string
                description: تشفير SHA-256 للمستند كما عُرض على الموقّع.
              sha256_signed:
                type: string
                nullable: true
                description: تشفير SHA-256 لملف PDF الموقّع، بمجرد توقيعه.
              status:
                type: string
                enum:
                  - signed
                  - declined
                  - not_signed
                  - not_reached
                description: >-
                  `not_signed`: تم فتحها ولكن لم يتم توقيعها. `not_reached`: لم
                  يتم فتحها أبداً.
              opened_at:
                type: string
                format: date-time
                nullable: true
              read_at:
                type: string
                format: date-time
                nullable: true
                description: >-
                  متى وصل الموقّع إلى نهاية مستند بدون حقول، عندما تتطلب الخطوة
                  ذلك.
              read_to_end:
                type: boolean
              consented_at:
                type: string
                format: date-time
                nullable: true
                description: >-
                  متى وافق الموقّع على مستند بدون حقول، أو أكمل تعبئة حقول مستند
                  يحتوي على حقول.
              consent:
                type: boolean
              signed_file:
                type: string
                nullable: true
                description: >-
                  مسار ملف PDF الموقّع بمجرد توقيعه. راجع [تنزيل مستند
                  موقّع](/ar/sessions-api/electronic-signature/download-signed-document).
              mode:
                type: string
                enum:
                  - fields
                  - read_and_agree
                description: >-
                  `fields` لمستند يحتوي على حقول، و`read_and_agree` لمستند لا
                  يحتوي عليها.
              source_format:
                type: string
                enum:
                  - pdf
                  - docx
                description: '`pdf`، أو `docx` لمستند Word قامت Didit بتحويله إلى PDF.'
              conversion:
                type: object
                nullable: true
                description: >-
                  `null` لملف PDF. بالنسبة لمستند Word، الملف الأصلي والملف
                  المحوَّل.
                properties:
                  from:
                    type: string
                    enum:
                      - docx
                  file_name:
                    type: string
                    description: اسم ملف Word الأصلي الخاص بك.
                  sha256:
                    type: string
                    description: تشفير SHA-256 لملف Word الأصلي الخاص بك.
                  size_bytes:
                    type: integer
                    description: حجم ملف Word الأصلي الخاص بك.
                  converter:
                    type: string
                    description: إصدار المحوِّل الذي أنتج ملف PDF.
              fields:
                type: array
                description: >-
                  الحقول الموجودة في المستند، مع قيمها. فارغة لأي مستند بدون
                  حقول.
                items:
                  $ref: '#/components/schemas/SignatureFieldResult'
        adopted_signature:
          type: object
          nullable: true
          description: >-
            التوقيع والأحرف الأولى التي اعتمدها الموقّع لحقول التوقيع والأحرف
            الأولى. تكون قيمتهما `null` حتى يعتمد الموقّع أحدهما.
          properties:
            method:
              type: string
              enum:
                - typed
                - drawn
              description: >-
                `typed`: الاسم المتحقق منه بأسلوب خط اليد. `drawn`: مرسوم بإصبع
                أو بفأرة.
            font:
              type: string
              nullable: true
              description: نمط خط اليد للتوقيع المكتوب. `null` عندما يكون مرسوماً.
            adopted_at:
              type: string
              format: date-time
        electronic_signature_consent_at:
          type: string
          format: date-time
          nullable: true
          description: >-
            متى وافق الموقّع، في شاشة المراجعة، على توقيع المستندات إلكترونياً.
            يتم تعيينها عندما يحتوي أي مستند على حقول.
        evidence_file:
          type: string
          nullable: true
          description: >-
            مسار ملف PDF للأدلة، بمجرد توقيعه. راجع [تنزيل أدلة
            التوقيع](/ar/sessions-api/electronic-signature/download-evidence).
        warnings:
          type: array
          description: >-
            التحذيرات الصادرة لهذا الموقّع. راجع [تحذيرات التوقيع
            الإلكتروني](/ar/core-technology/electronic-signature/warnings-electronic-signature).
          items:
            type: object
            properties:
              code:
                type: string
                enum:
                  - SIGNATURE_DECLINED
                  - SIGNATURE_OTP_FAILED
                  - SIGNATURE_NAME_MISMATCH
                  - SIGNATURE_IDENTITY_NOT_VERIFIED
                  - SIGNATURE_DOCUMENT_CHANGED
                  - SIGNATURE_FIELD_DATA_MISSING
              node_id:
                type: string
        validation:
          type: object
          nullable: true
          description: >-
            آخر فحص تشفيري للمستندات الموقعة. تكون القيمة `null` حتى يتم توقيع
            المستندات. إذا لم تتمكن Didit من تأكيد نتيجة التوقيع، فستكون القيمة
            `{"valid": null, "reason": "signature_provider_outcome_unknown",
            "checked_at": ...}` وتظل `status` بالحالة `signing`: عاملها كأنها
            غير موقعة.
          properties:
            valid:
              type: boolean
              nullable: true
              description: >-
                تكون القيمة `true` عندما تكون جميع المستندات صالحة. وتكون `null`
                عندما يتعذر تأكيد نتيجة التوقيع.
            reason:
              type: string
              description: >-
                يتم تعيينه عندما تكون قيمة `valid` هي `null`:
                `signature_provider_outcome_unknown`.
            checked_at:
              type: string
              format: date-time
            documents:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                    format: uuid
                  checked_at:
                    type: string
                    format: date-time
                  valid:
                    type: boolean
                    description: >-
                      تكون `true` عندما يكون كل من التوقيع والطابع الزمني صالحين
                      وموثوقين.
                  integrity:
                    type: boolean
                    description: تكون `true` عندما يكون المستند غير معدّل منذ التوقيع.
                  trusted:
                    type: boolean
                    description: تكون `true` عندما تتسلسل شهادة التوقيع إلى جذر موثوق.
                  revoked:
                    type: boolean
                  trusted_list:
                    type: object
                    description: >-
                      فحص القائمة الموثوقة للاتحاد الأوروبي (EU Trusted List).
                      بالنسبة لـ AES: `{"status": "not_applicable", "reason":
                      "aes_not_qualified"}`.
                    properties:
                      status:
                        type: string
                      reason:
                        type: string
                  certificate:
                    type: object
                    nullable: true
                    description: >-
                      الشهادة التي تم توقيع المستندات بها. تكون `null` حتى يتم
                      التوقيع، وتكون دائماً `null` للتوقيع البسيط (Simple
                      signature).
                    properties:
                      issuer:
                        type: string
                      issued_to:
                        type: string
                      serial:
                        type: string
                        description: الرقم التسلسلي، بنظام السداسي عشر.
                      valid_from:
                        type: string
                        format: date-time
                      valid_until:
                        type: string
                        format: date-time
                  timestamp:
                    type: object
                    nullable: true
                    description: >-
                      الختم الزمني RFC 3161 في التوقيع، الصادر عن Didit. تكون
                      القيمة `null` حتى يتم التوقيع، ودائماً `null` للتوقيع
                      البسيط (Simple).
                    properties:
                      time:
                        type: string
                        format: date-time
                      qualified:
                        type: boolean
                        description: دائماً `false` لـ AES.
                      valid:
                        type: boolean
        declined_at:
          type: string
          format: date-time
          nullable: true
        declined_action:
          type: string
          enum:
            - DECLINE
            - REVIEW
            - NO_ACTION
        signed_at:
          type: string
          format: date-time
          nullable: true
        expires_at:
          type: string
          format: date-time
          description: متى يتوقف رابط التوقيع عن العمل.
        email_sent_at:
          type: string
          format: date-time
          nullable: true
        email_unavailable_reason:
          type: string
          nullable: true
        ip_address:
          type: string
          nullable: true
          description: عنوان IP الخاص بالموقّع عندما طلب رمزه.
        place:
          type: string
          nullable: true
          description: 'لم يتم جمعها: تكون دائماً `null`.'
        place_unavailable_reason:
          type: string
          nullable: true
          enum:
            - not_collected
    SignatureFieldResult:
      type: object
      description: >-
        حقل في مستند موقّع، مع قيمته في نسخة هذا الموقّع. راجع
        [الحقول](/ar/core-technology/electronic-signature/report-electronic-signature#الحقول).
      properties:
        key:
          type: string
          description: مفتاح الحقل، كما هو مستخدم في `sign.field_values`.
        type:
          type: string
          enum:
            - signature
            - initials
            - full_name
            - date_signed
            - text
            - checkbox
            - email
            - data
        role:
          type: string
          enum:
            - verified_person
            - legal_representative
            - key_people
        label:
          type: string
        page:
          type: integer
          description: >-
            رقم الصفحة، يبدأ من 1. بالنسبة لمستند Word، تكون صفحة من ملف PDF
            المُحوَّل.
        x:
          type: number
          description: الحافة اليسرى، ككسر من عرض الصفحة.
        'y':
          type: number
          description: الحافة العلوية، كنسبة من ارتفاع الصفحة.
        width:
          type: number
          description: العرض، كنسبة من عرض الصفحة.
        height:
          type: number
          description: الارتفاع، كنسبة من ارتفاع الصفحة.
        required:
          type: boolean
        value:
          nullable: true
          description: >-
            سلسلة نصية لـ `text` و `email` و `full_name` و `date_signed` و
            `data`، وقيمة منطقية لـ `checkbox`، و `true` لتوقيع أو أحرف أولى
            مُضافة. `null` عندما تكون فارغة.
        display_value:
          type: string
          nullable: true
          description: >-
            القيمة كما تم ختمها على الصفحة: التواريخ وفق `date_format` الخاص
            بالحقل، أو `Yes` أو `No` لخانات الاختيار، أو `Signed` للتوقيع أو
            الأحرف الأولى.
        value_source:
          type: string
          nullable: true
          enum:
            - signer
            - identity
            - contact
            - company
            - session
            - metadata
            - api
            - signing_time
            - null
          description: >-
            مصدر القيمة: `signer` (مكتوبة، أو محددة، أو مطبقة بواسطة الموقّع)،
            أو `identity` (الهوية التي تم التحقق منها)، أو `contact` (البريد
            الإلكتروني أو الهاتف الذي تم التحقق منه)، أو `company` (الشركة التي
            تم التحقق منها)، أو `session` (`vendor_data`)، أو `metadata`، أو
            `api` (`sign.field_values`)، أو `signing_time` (تاريخ التوقيع).
        filled_at:
          type: string
          format: date-time
          nullable: true
        image_url:
          type: string
          nullable: true
          description: >-
            التوقيع والأحرف الأولى فقط: مسار الصورة المطبقة. راجع [تنزيل صورة
            التوقيع](/ar/sessions-api/electronic-signature/download-field-image).
        value_unavailable_reason:
          type: string
          nullable: true
          enum:
            - source_empty
            - null
          description: >-
            `source_empty` عندما لا يحتوي حقل مملوء مسبقاً على أي قيمة في الجلسة
            وسمح `signature_field_data_missing_action` للموقّع بالتوقيع على أي
            حال.
  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.