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

# تحديث القائمة API: تعديل قائمة الامتثال

> PATCH /v3/lists/{list_uuid}/: إعادة تسمية قائمة سماح أو قائمة مخصصة في Didit أو تحديث وصفها. لا يمكن تعديل القوائم النظامية.



موجه واجهة API لتحديث القائمة
        نسخ الموجّه إلى الحافظة



      
      

\<pre>

\`Rename a Didit list or update its description through the Management API.

Endpoint:
PATCH https://verification.didit.me/v3/lists/{list_uuid}/

Authentication:
Use the x-api-key header with my Didit API key. A scoped API key needs workflows: write.

Goal:
\- Update the editable metadata of an allowlist or custom list: name and description.
\- list_type and entry_type cannot change: any other field in the body is ignored. To change them, create a new list.
\- System lists (is_system: true) cannot be modified.

Path parameter:
\- list_uuid: the list UUID returned by GET /v3/lists/ or POST /v3/lists/.

Request body (application/json), send either field or both:
\{
"name": "Trusted office and VPN IPs",  // at most 255 characters, unique among the application's lists
"description": "Office egress ranges and the corporate VPN"
}

Example call:
curl -X PATCH "https://verification.didit.me/v3/lists/{list_uuid}/" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name": "Trusted office and VPN IPs"}'

Example response (200), only the editable fields:
\{
"name": "Trusted office and VPN IPs",
"description": "Office egress ranges"
}

Call GET /v3/lists/{list_uuid}/ when you need the full list after the update.

Failure modes:
\- 400: the list is a system list ({ "non_field_errors": ["System lists cannot be modified."] }), or the new name is empty, longer than 255 characters, or already used by another list of the application ({ "name": ["A list with this name already exists for this application."] }).
\- 401: the API key has expired.
\- 403: missing x-api-key (a wrong, revoked or expired key gets 401) ({ "detail": "You do not have permission to perform this action." }), or a scoped key without workflows: write.
\- 404: no list with this UUID in this application, or it was deleted.
\- 429: rate limited (see /integration/rate-limiting); back off and retry.

Side effects:
\- The new name and description are visible in the console and on subsequent GET calls immediately.

For the full integration shape, see /integration/integration-prompt.`

\</pre>



      
      

الصق في

حدّث اسم القائمة أو وصفها. يتم تجاهل أي حقل آخر في نص الطلب، لذا تحتفظ `list_type` و`entry_type` بالقيم التي أُنشئت بها. لا يمكن تعديل قوائم النظام، وتُرجع `400`.تحتوي الاستجابة على `name` و`description` فقط. لعرض القائمة الكاملة، استدعِ [الحصول على القائمة](https://docs.didit.me/ar/management-api/lists/get.md).


## OpenAPI

````yaml ar/openapi-25.json PATCH /v3/lists/{list_uuid}/
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/lists/{list_uuid}/:
    patch:
      tags:
        - Lists
      summary: تحديث قائمة
      description: >-
        إعادة تسمية قائمة أو تغيير وصفها. تتم قراءة `name` و`description` فقط؛
        ويتم تجاهل أي حقل آخر، بحيث يحتفظ `list_type` و`entry_type` بالقيم التي
        أُنشئا بها. لا يمكن تعديل قوائم النظام وتُرجع `400`. تحتوي الاستجابة على
        `name` و`description` فقط: استدعِ [الحصول على
        قائمة](https://docs.didit.me/ar/management-api/lists/get) للحصول على
        القائمة الكاملة. يحتاج مفتاح API ذو النطاق المحدد إلى `workflows:
        write`.
      operationId: update_list
      parameters:
        - name: list_uuid
          in: path
          required: true
          description: معرّف UUID للقائمة، كما تم إرجاعه بواسطة سرد القوائم أو إنشاء قائمة.
          schema:
            type: string
            format: uuid
          example: 11111111-2222-3333-4444-555555555555
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 255
                  description: الاسم الجديد. يجب أن يختلف عن اسم أي قائمة أخرى في التطبيق.
                description:
                  type: string
                  description: الوصف الجديد. أرسل سلسلة فارغة لمسحه.
            examples:
              Rename:
                value:
                  name: Trusted office and VPN IPs
              Rename and describe:
                value:
                  name: Trusted office and VPN IPs
                  description: Office egress ranges and the corporate VPN
      responses:
        '200':
          description: تم تحديث القائمة. يتم إرجاع الحقول القابلة للتعديل فقط.
          content:
            application/json:
              schema:
                type: object
                required:
                  - name
                  - description
                properties:
                  name:
                    type: string
                    description: اسم القائمة بعد التحديث.
                  description:
                    type: string
                    description: وصف القائمة بعد التحديث.
              examples:
                Renamed:
                  value:
                    name: Trusted office and VPN IPs
                    description: Office egress ranges
        '400':
          description: القائمة هي قائمة نظام، أو أن نص الطلب غير صالح.
          content:
            application/json:
              examples:
                System list:
                  value:
                    non_field_errors:
                      - System lists cannot be modified.
                Duplicate name:
                  value:
                    name:
                      - >-
                        A list with this name already exists for this
                        application.
                Blank name:
                  value:
                    name:
                      - This field may not be blank.
        '401':
          description: >-
            انتهت صلاحية مفتاح API محدد النطاق. تُرجع حالات فشل المصادقة الأخرى
            الرمز `403`.
          content:
            application/json:
              examples:
                Expired API key:
                  value:
                    detail: This API key has expired.
        '403':
          description: >-
            رأس `x-api-key` مفقود (المفتاح الخاطئ أو الملغى أو منتهي الصلاحية
            يحصل على `401`)، أو أن مفتاح API محدد النطاق يفتقر إلى `workflows:
            write` أو تم استخدامه من عنوان IP خارج قائمة السماح الخاصة به.
          content:
            application/json:
              examples:
                Missing or invalid API key:
                  value:
                    detail: You do not have permission to perform this action.
                Scoped key without workflows access:
                  value:
                    detail: This API key has no write access to workflows.
        '404':
          description: >-
            لا توجد قائمة بهذا المعرّف UUID في التطبيق المرتبط بمفتاح API، أو قد
            تم حذفها.
          content:
            application/json:
              examples:
                Not found:
                  value:
                    detail: No List matches the given query.
        '429':
          $ref: '#/components/responses/RateLimitedWrite'
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X PATCH
            'https://verification.didit.me/v3/lists/11111111-2222-3333-4444-555555555555/'
            \
              -H 'x-api-key: YOUR_API_KEY' \
              -H 'Content-Type: application/json' \
              -d '{"name": "Trusted office and VPN IPs"}'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            result = client.lists.update(
                "11111111-2222-3333-4444-555555555555",
                name="Trusted office and VPN IPs",
            )
            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.lists.update("11111111-2222-3333-4444-555555555555", {
              name: "Trusted office and VPN IPs",
            });

            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.Lists.Update(ctx, \"11111111-2222-3333-4444-555555555555\", didit.ListsUpdateParams{\n\tName: didit.String(\"Trusted office and VPN IPs\"),\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.ListsUpdateParams;


            // Reads DIDIT_API_KEY.

            Didit client = new Didit();


            var result =
            client.lists().update("11111111-2222-3333-4444-555555555555",
            ListsUpdateParams.builder()
                    .name("Trusted office and VPN IPs")
                    .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->lists->update('11111111-2222-3333-4444-555555555555', [
                'name' => 'Trusted office and VPN IPs',
            ]);

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

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

            result = didit.lists.update(
              "11111111-2222-3333-4444-555555555555",
              name: "Trusted office and VPN IPs"
            )
            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.Lists.UpdateAsync("11111111-2222-3333-4444-555555555555", new
            ListsUpdateParams

            {
                Name = "Trusted office and VPN IPs",
            });

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  responses:
    RateLimitedWrite:
      description: >-
        تم تجاوز حد الكتابة المشترك البالغ 300 طلب في الدقيقة لكل مفتاح API.
        التزم بالمدة المحددة في `Retry-After` قبل إعادة المحاولة.
      content:
        application/json:
          schema:
            type: object
            required:
              - detail
            properties:
              detail:
                type: string
          example:
            detail: >-
              Write request rate limit exceeded. You can make up to 300 requests
              per minute.
  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.