> ## 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: 차단 목록 및 허용 목록

> Didit 차단 목록, 허용 목록 또는 사용자 지정 목록에 항목(얼굴, 문서, IP, 지갑, 이메일, 전화번호)을 추가합니다. 프로그래밍 방식의 컴플라이언스 및 사기 방지 통제 기능.



목록 항목 생성 API 프롬프트
        프롬프트를 클립보드에 복사



      
      

\<pre>

\`Add an entry to a Didit list (blocklist, allowlist, or custom) through the Management API.

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

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

Goal:
\- Insert a single entry into a list. Three add modes are supported:
1\. By value: pass value matching the list's entry_type.
2\. From a verification session: pass reference_session_id and Didit reads the value from the session's most recent record of the list's entry_type (face, document, phone, email, ip_address, device_fingerprint) and links the entry to the session.
3\. With a source reference: pass value plus reference_object_uuid and metadata.reference_type so the console links the entry back to the transaction, user or business it came from.

Path parameter:
\- list_uuid: list UUID from GET /v3/lists/. For a face without a session, use POST /v3/lists/{list_uuid}/entries/face-upload/ instead.

Request body (application/json):
\{
"value": "string",                  // required unless reference_session_id is sent
"reference_session_id": "uuid",     // optional: read the value from this session of my application
"reference_object_uuid": "uuid",    // optional: transaction UUID, or didit_internal_id of a user or business
"face_image_source": "liveness" | "front_image_camera_front" | "back_image_camera_front", // optional, system face blocklist + reference_session_id only; default liveness
"reference_node_id": "string",      // optional, with a document-capture face_image_source: which ID verification node's selfie to use
"display_label": "string",          // optional, at most 512 characters
"comment": "string",                // optional, reason or note
"metadata": {                       // optional, free-form; reference_image_url and front_image_url are ignored
"reference_type": "transaction" | "vendor_user" | "vendor_business",
"reference_id": "uuid"
}
}

Value validation by entry_type:
\- email: valid email address.
\- phone: valid international phone number (stored in E.164).
\- ip_address: IP address or CIDR range (e.g. 10.0.0.0/8).
\- device_fingerprint: at least 8 characters among letters, digits, -, _, : and . (a blocklist refuses a fingerprint that several distinct devices have reported).
\- country: ISO 3166-1 alpha-2 or alpha-3 (stored as alpha-3).
\- user, business: the vendor_data to block.
\- face, document, wallet_address, bank_account, key: any non-empty string.
Values are case-insensitive: country codes are stored in upper case, phone numbers in E.164, everything else in lower case.
A list holds each value once: adding a value that is already there returns 400.

Adding from a session, what Didit does:
\- Looks up the session (it must belong to the same application).
\- Reads the value from the session's most recent record of the list's entry_type:
\- face: the liveness face (value is the face UUID). With face_image_source = front_image_camera_front / back_image_camera_front, the face from the selfie the front camera took while the user photographed the front / back of their document instead (system face blocklist only, leave value empty).
\- document: the document number; full_name, issuing_state, document_type, region and document_number go into metadata.
\- phone / email: the phone number / email address.
\- ip_address: the session's IP address.
\- device_fingerprint: a fingerprint that identifies one device. On a blocklist, Didit refuses a session that only has a device-class fingerprint or was completed on more than one device; pass the exact fingerprint as value in that case.
\- Links the entry to the session (reference_session_id) and to that record (reference_object_uuid).
\- If I also send value, Didit stores my value but still links the most recent record. To list a value from an earlier record, add it by value without reference_session_id.

Example calls:
\# By value
curl -X POST "https://verification.didit.me/v3/lists/{list_uuid}/entries/" \
-H "x-api-key: YOUR_API_KEY" -H "Content-Type: application/json" \
-d '{"value": "+14155552671", "comment": "Reported fraud"}'

\# From a session
curl -X POST "https://verification.didit.me/v3/lists/{list_uuid}/entries/" \
-H "x-api-key: YOUR_API_KEY" -H "Content-Type: application/json" \
-d '{"reference_session_id": "33333333-4444-5555-6666-777777777777"}'

\# The face from the selfie taken during document capture (system face blocklist)
curl -X POST "https://verification.didit.me/v3/lists/{list_uuid}/entries/" \
-H "x-api-key: YOUR_API_KEY" -H "Content-Type: application/json" \
-d '{"reference_session_id": "33333333-4444-5555-6666-777777777777", "face_image_source": "front_image_camera_front"}'

\# From a transaction
curl -X POST "https://verification.didit.me/v3/lists/{list_uuid}/entries/" \
-H "x-api-key: YOUR_API_KEY" -H "Content-Type: application/json" \
-d '{"value": "0x52908400098527886E0F7030069857D2E4169EE7", "reference_object_uuid": "55555555-6666-7777-8888-999999999999", "metadata": {"reference_type": "transaction"}}'

Failure modes:
\- 400: value fails the entry_type validator or is already in the list, neither value nor reference_session_id was sent, reference_session_id is not a session of this application, or the session has no data of the list's entry_type.
\- 400 (face_image_source): the list is not the system face blocklist, value was sent, the session has no image for that source, no clear face was found in that selfie, or that selfie is already in the blocklist.
\- 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: list not found in this application ({ "detail": "List not found." }).
\- 503 (face_image_source): face analysis is temporarily unavailable; nothing was added, retry later.
\- 429: rate limited (see /integration/rate-limiting); back off and retry.

Side effects:
\- System face, document, phone and email blocklists: a record read from a session is flagged as blocklisted at once, and new sessions that match it are declined.
\- System user and business blocklists: users or businesses of the application whose vendor_data equals value (or whose UUID equals reference_object_uuid) are set to BLOCKED.
\- Sessions and transactions that already finished are not changed.

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

\</pre>



      
      

붙여넣을 곳

목록에 항목을 추가합니다. 값은 목록의 항목 유형에 따라 검증됩니다.* **email**: 유효한 이메일 주소
* **phone**: 유효한 국제 전화번호이며, E.164 형식으로 저장됩니다(예: `+14155552671`)
* **ip\_address**: 유효한 IP 주소 또는 CIDR 범위(예: `192.168.1.1` 또는 `10.0.0.0/8`)
* **device\_fingerprint**: 영문자, 숫자, `-`, `_`, `:`, `.`로 이루어진 8자 이상의 문자열. 여러 개의 서로 다른 기기가 보고한 핑거프린트는 차단 목록에서 거부됩니다. 이를 차단하면 관련 없는 사람들까지 거절되기 때문입니다.
* **country**: 유효한 [ISO 3166-1 알파-3 국가 코드](https://docs.didit.me/ko/core-technology/id-verification/supported-documents-id-verification.md)(예: `USA`, `GBR`, `ESP`). 알파-2 코드(예: `US`)도 허용되며 알파-3 코드로 자동 변환됩니다.
* **user**, **business**: 사용자 또는 기업의 `vendor_data`
* **face**, **document**, **wallet\_address**, **bank\_account**, **key**: 비어 있지 않은 문자열이면 됩니다.> [!NOTE]
>
> 모든 항목 값은 **대소문자를 구분하지 않습니다**. 전송한 값은 저장 시 정규화됩니다(전화번호는 E.164로, 국가 코드는 대문자로, 그 밖의 값은 소문자로 저장합니다). 인증 시에는 대소문자를 구분하지 않고 일치 여부를 확인합니다. 예를 들어 `User@Example.COM`을 차단하면 `user@example.com`도 차단됩니다. 목록에는 각 값이 한 번만 들어가며, 이미 목록에 있는 값을 추가하면 `400`이 반환됩니다.얼굴 항목의 경우 이미지만 있으면 [얼굴 업로드](https://docs.didit.me/ko/management-api/lists/upload-face.md)를 사용하고, 기존 세션의 얼굴을 사용하려면 `reference_session_id`를 보내십시오. 얼굴 항목에는 대조할 저장된 얼굴이 필요하며, 입력한 `value`로는 이를 제공할 수 없습니다.## 세션에서 추가하기`reference_session_id`를 제공하면 Didit은 다음을 수행합니다:1) 세션을 조회합니다(같은 애플리케이션에 속해 있어야 합니다).
2) 목록의 항목 유형에 해당하는 세션의 **가장 최근** 레코드에서 값을 읽습니다:
   * **face**: 라이브니스 셀피의 얼굴입니다. `value`는 얼굴 UUID입니다.
   * **document**: 문서 번호입니다. 성명, 발급 주, 문서 유형, 지역, 문서 번호는 `metadata`에 저장되며, `display_label`의 기본값은 소지자의 이름과 문서 번호입니다.
   * **phone**: 전화번호입니다.
   * **email**: 이메일 주소입니다.
   * **ip\_address**: 세션의 IP 주소입니다.
   * **device\_fingerprint**: 하나의 기기를 식별하는 핑거프린트이며, 인증 단계를 완료한 기기를 우선합니다. 차단 목록에서는 기기 클래스 핑거프린트만 가진 세션이나 둘 이상의 기기에서 완료된 세션을 Didit이 거부합니다. 이 경우 정확한 핑거프린트를 `value`로 보내십시오.
3) 추적을 위해 항목을 세션(`reference_session_id`)과 레코드(`reference_object_uuid`)에 연결합니다.시스템 얼굴, 문서, 전화번호, 이메일 차단 목록에서는 레코드도 차단됨으로 표시되어, 일치하는 새 세션이 거부됩니다. 그 밖의 항목 유형에서는 `value`도 함께 보내십시오.세션을 찾을 수 없거나 요청한 항목 유형의 데이터가 세션에 없으면 `400`이 반환됩니다.### 문서 촬영 셀피의 얼굴사용자가 문서를 촬영하는 동안 전면 카메라가 사용자의 셀피를 찍을 수 있습니다([신분증 인증 보고서](https://docs.didit.me/ko/core-technology/id-verification/report-id-verification.md)의 `front_image_camera_front` 및 `back_image_camera_front` 이미지). 이 얼굴도 라이브니스 얼굴과 마찬가지로 얼굴 차단 목록에 추가할 수 있습니다. 사용할 이미지와 함께 `face_image_source`를 전달하십시오.```json theme={null}
{
  "reference_session_id": "33333333-4444-5555-6666-777777777777",
  "face_image_source": "front_image_camera_front"
}
```- 항목은 시스템 **얼굴 차단 목록**에만 생성되며, `value`는 비워 두어야 합니다. Didit이 세션의 셀피에서 얼굴을 가져옵니다.
- 셀피에는 선명한 얼굴이 하나만 있어야 합니다. 그렇지 않으면 요청이 `400`을 반환하고 아무것도 추가되지 않습니다.
- 각 셀피는 한 번만 추가할 수 있습니다. 항목의 `metadata.face_image_source`와 `metadata.reference_node_id`는 해당 셀피의 출처를 나타냅니다.
- 신분증 인증 단계가 두 개 이상 있는 워크플로에서는 `reference_node_id`가 사용할 셀피가 있는 단계를 지정합니다. 기본적으로 Didit은 해당 셀피가 있는 가장 최근의 신분증 인증을 사용합니다.
- 이후 이 얼굴은 차단 목록에 있는 다른 얼굴과 마찬가지로 대조됩니다. 즉, 모든 새 세션의 라이브니스 셀피 및 모든 새 문서 촬영 셀피와 대조됩니다([`FRONT_CAMERA_FACE_IN_BLOCKLIST`](https://docs.didit.me/ko/core-technology/id-verification/warnings-id-verification) 참조).
- 항목을 삭제하면 얼굴이 차단 목록에서 제거되며, 더 이상 새 세션과 일치하지 않습니다.### 같은 유형의 레코드가 여러 개인 세션세션에는 같은 유형의 레코드가 여러 개 있을 수 있습니다. 예를 들어 여러 단계로 된 워크플로에서 전화번호가 두 개일 수 있습니다. Didit은 항상 **가장 최근** 레코드를 읽습니다. `value`를 `reference_session_id`와 함께 보내면 항목에는 보낸 `value`가 저장되지만, 여전히 가장 최근 레코드에 연결되며, 시스템 차단 목록에서는 그 레코드가 차단됨으로 표시됩니다.이전 레코드의 값을 목록에 추가하려면 `reference_session_id` 없이 `value`만 사용해 추가하십시오:```json theme={null}
{
  "value": "+34612345678",
  "comment": "First phone number of session 42"
}
```## 거래, 사용자, 기업 참조하기거래 또는 벤더 사용자/기업의 데이터를 차단할 때는 해당 엔터티의 UUID를 `reference_object_uuid`로 전달하고, `metadata`에 출처 유형을 표시하십시오:```json theme={null}
{
  "value": "0x52908400098527886E0F7030069857D2E4169EE7",
  "reference_object_uuid": "55555555-6666-7777-8888-999999999999",
  "metadata": {
    "reference_type": "transaction",
    "reference_id": "55555555-6666-7777-8888-999999999999"
  }
}
```이렇게 하면 차단 목록 항목에서 콘솔의 원래 거래, 사용자 또는 기업으로 이동할 수 있습니다. Didit은 `metadata`의 키를 저장하지만, `reference_image_url`과 `front_image_url`은 Didit만 설정하는 키입니다. 세션에서 읽은 항목의 경우 Didit은 자체 키를 사용자의 키에 추가하며, 키가 겹치면 Didit의 키가 우선합니다.| 소스 엔터티 | `reference_object_uuid` | `metadata.reference_type` |
| - | - | - |
| 인증 세션 | Didit이 설정(얼굴, 문서, 전화번호 또는 이메일 레코드) | 필요 없음: `reference_session_id` 사용 |
| 거래 | 거래 UUID | `"transaction"` |
| 벤더 사용자 | `didit_internal_id` | `"vendor_user"` |
| 벤더 기업 | `didit_internal_id` | `"vendor_business"` |시스템 **사용자** 및 **기업** 차단 목록에서는 Didit이 해당 사용자 또는 기업도 `BLOCKED`로 설정합니다. 즉, `vendor_data`가 `value`와 같거나 `didit_internal_id`가 `reference_object_uuid`와 같은 사용자 또는 기업이 대상입니다. [사용자 차단 목록](https://docs.didit.me/ko/entities/users/blocklist.md) 및 [기업 차단 목록](https://docs.didit.me/ko/entities/businesses/blocklist.md)을 참조하십시오.


## OpenAPI

````yaml ko/openapi-25.json POST /v3/lists/{list_uuid}/entries/
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}/entries/:
    post:
      tags:
        - Lists
      summary: 목록 항목 생성
      description: >-
        목록에 항목을 세 가지 방식 중 하나로 추가합니다. `value`로 추가하거나, `reference_session_id`가 있는
        인증 세션에서 추가(Didit이 해당 목록 항목 유형에 대한 세션의 최신 기록에서 값을 읽어 항목에 연결)하거나, 거래, 사용자
        또는 기업을 다시 가리키는 `reference_object_uuid` 및 `metadata.reference_type`과 함께
        `value`로 추가합니다. 시스템 얼굴, 문서, 전화번호 및 이메일 차단 목록에서는 세션에서 읽은 레코드도 차단 목록에 포함된
        것으로 플래그 지정되어 일치하는 새 세션이 거부됩니다. 시스템 사용자 및 기업 차단 목록에서는 일치하는 사용자 또는 기업이
        `BLOCKED`로 설정됩니다. 이미 완료된 세션 및 거래는 변경되지 않습니다. 스코프가 지정된 API 키에는
        `workflows: write`가 필요합니다. 각 모드에 대한 자세한 내용은 [목록 항목
        생성](https://docs.didit.me/ko/management-api/lists/create-entry)을 참조하십시오.
      operationId: create_list_entry
      parameters:
        - name: list_uuid
          in: path
          required: true
          description: >-
            추가할 대상 목록의 UUID입니다. 이미지만 가지고 있는 얼굴의 경우 대신 목록에 얼굴 업로드(Upload a face
            to a list)를 사용하십시오.
          schema:
            type: string
            format: uuid
          example: 11111111-2222-3333-4444-555555555555
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: >-
                `value`, `reference_session_id` 또는 둘 다를 전송합니다. 적용되는 필드는 목록의
                `entry_type`에 따라 다릅니다.
              properties:
                value:
                  type: string
                  description: >-
                    목록에 등록할 값이며, 목록의 `entry_type`에 따라 유효성이 검증됩니다. `email`은 유효한
                    이메일 주소, `phone`은 E.164 형식으로 저장되는 유효한 국제 전화번호, `ip_address`는
                    IP 주소 또는 CIDR 범위(예: `10.0.0.0/8`), `device_fingerprint`는 문자,
                    숫자, `-`, `_`, `:`, `.` 중 최소 8자(차단 목록은 서로 다른 여러 기기에서 보고된 지문을
                    거부함), `country`는 alpha-3로 저장되는 ISO 3166-1 alpha-2 또는 alpha-3
                    코드, `user` 및 `business`는 `vendor_data`, 기타 유형은 비어 있지 않은
                    문자열입니다. 전화번호와 국가 코드를 제외하고 소문자로 저장되며, 목록에는 각 값이 한 번만
                    포함됩니다(대소문자 구분 없음). `reference_session_id`가 전송되지 않는 한 필수이며,
                    문서 캡처 `face_image_source`를 사용하는 경우 비워 두어야 합니다.
                reference_session_id:
                  type: string
                  format: uuid
                  description: >-
                    값을 가져올 애플리케이션의 개인 또는 기업 확인(KYB) 세션입니다. Didit은 목록의 엔트리
                    유형(`face`, `document`, `phone`, `email`, `ip_address`,
                    `device_fingerprint`)에 해당하는 세션의 가장 최근 레코드를 읽고, 엔트리를 세션 및 해당
                    레코드와 연결하며, 문서의 경우 `display_label` 및 `metadata`를 채웁니다.
                    `device_fingerprint` 차단 목록의 경우, 기기 등급 핑거프린트만 있거나 둘 이상의 기기에서
                    완료된 세션은 거부되므로 정확한 핑거프린트를 `value`로 전송하십시오. 다른 엔트리 유형의 경우 또는
                    세션에 해당 레코드가 없는 경우 `value`도 함께 전송하십시오. 그러면 전송한 `value`가 저장되며
                    엔트리는 여전히 세션에 연결됩니다.
                reference_object_uuid:
                  type: string
                  format: uuid
                  description: >-
                    세션에서 생성되지 않은 경우 해당 항목이 나타내는 레코드의 UUID: 거래 UUID 또는 사용자나 기업의
                    `didit_internal_id`입니다. `metadata.reference_type`과 함께
                    사용하십시오. `reference_session_id`가 레코드를 제공하는 경우 세션의 레코드로 대체됩니다.
                face_image_source:
                  type: string
                  enum:
                    - liveness
                    - front_image_camera_front
                    - back_image_camera_front
                  default: liveness
                  description: >-
                    `reference_session_id`가 있는 얼굴 목록: 세션의 어느 이미지에서 얼굴을 가져왔는지를
                    나타냅니다. `liveness`(기본값)는 라이브니스 셀피입니다.
                    `front_image_camera_front` 및 `back_image_camera_front`는 사용자가
                    문서의 앞면 또는 뒷면을 촬영하는 동안 전면 카메라가 촬영한 셀피입니다. 시스템 얼굴 차단 목록에서만
                    허용되며, `reference_session_id` 및 빈 `value`와 함께 사용됩니다. 각 셀피는 한
                    번만 추가할 수 있으며 하나의 선명한 얼굴이 표시되어야 합니다.
                reference_node_id:
                  type: string
                  nullable: true
                  maxLength: 100
                  description: >-
                    문서 캡처 `face_image_source`가 지정된 경우: 둘 이상의 신분증 인증이 있는 워크플로에서
                    사용할 셀피의 신분증 인증 노드입니다. 기본값은 해당 이미지를 보유한 가장 최근의 신분증 인증입니다.
                    `liveness`와 함께 사용하는 것은 거부됩니다.
                display_label:
                  type: string
                  maxLength: 512
                  description: >-
                    사람이 읽기 쉬운 라벨입니다. 비어 있는 경우 Didit은 가능한 경우 세션에서 라벨을 도출합니다(예:
                    소지자의 성명 및 문서 번호).
                comment:
                  type: string
                  description: 등재 사유 등의 자유 형식 메모입니다.
                metadata:
                  type: object
                  additionalProperties: true
                  description: >-
                    엔트리와 함께 저장되고 저장된 그대로 반환되는 자유 형식 JSON입니다. 콘솔이 원본으로 다시 연결되도록
                    `reference_type` 및 `reference_id`를 사용하십시오.
                    `reference_image_url` 및 `front_image_url`은 Didit에 의해서만 설정되며,
                    전송하더라도 제외됩니다. 세션에서 읽은 엔트리의 경우 Didit의 키가 사용자의 키와 병합됩니다.
                  properties:
                    reference_type:
                      type: string
                      enum:
                        - transaction
                        - vendor_user
                        - vendor_business
                      description: '`reference_object_uuid`가 가리키는 대상입니다.'
                    reference_id:
                      type: string
                      description: 소스 레코드의 식별자입니다.
            examples:
              By value:
                value:
                  value: '+14155552671'
                  comment: Reported fraud
              From a session:
                value:
                  reference_session_id: 33333333-4444-5555-6666-777777777777
              Face from a document-capture selfie:
                value:
                  reference_session_id: 33333333-4444-5555-6666-777777777777
                  face_image_source: front_image_camera_front
              From a transaction:
                value:
                  value: '0x52908400098527886E0F7030069857D2E4169EE7'
                  reference_object_uuid: 55555555-6666-7777-8888-999999999999
                  comment: Linked to a chargeback
                  metadata:
                    reference_type: transaction
                    reference_id: 55555555-6666-7777-8888-999999999999
              Country:
                value:
                  value: PRK
                  comment: Sanctioned jurisdiction
      responses:
        '201':
          description: 항목이 생성되었습니다.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComplianceListEntry'
              examples:
                By value:
                  value:
                    uuid: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
                    value: '+14155552671'
                    display_label: ''
                    comment: Reported fraud
                    added_by: api
                    reference_session_id: null
                    reference_session_number: null
                    reference_session_type: null
                    reference_object_uuid: null
                    metadata: null
                    created_at: '2026-10-12T10:04:51.220391Z'
                Document from a session:
                  value:
                    uuid: bbbbbbbb-cccc-dddd-eeee-ffffffffffff
                    value: X1234567
                    display_label: Jane Doe - X1234567
                    comment: ''
                    added_by: api
                    reference_session_id: 33333333-4444-5555-6666-777777777777
                    reference_session_number: 1042
                    reference_session_type: kyc
                    reference_object_uuid: 66666666-7777-8888-9999-000000000000
                    metadata:
                      full_name: Jane Doe
                      issuing_state: ESP
                      document_type: ID
                      region: ''
                      document_number: X1234567
                    created_at: '2026-10-12T10:06:12.774915Z'
                From a transaction:
                  value:
                    uuid: dddddddd-eeee-ffff-0000-111111111111
                    value: '0x52908400098527886e0f7030069857d2e4169ee7'
                    display_label: ''
                    comment: Linked to a chargeback
                    added_by: api
                    reference_session_id: null
                    reference_session_number: null
                    reference_session_type: null
                    reference_object_uuid: 55555555-6666-7777-8888-999999999999
                    metadata:
                      reference_type: transaction
                      reference_id: 55555555-6666-7777-8888-999999999999
                    created_at: '2026-10-12T10:20:40.117062Z'
        '400':
          description: 본문이 잘못되었거나, 값이 이미 목록에 있거나, 세션에서 해당 값을 제공할 수 없습니다.
          content:
            application/json:
              examples:
                Nothing to list:
                  value:
                    value:
                      - >-
                        Either 'value' or 'reference_session_id' must be
                        provided.
                Duplicate value:
                  value:
                    value:
                      - An entry with this value already exists in this list.
                Invalid phone:
                  value:
                    value:
                      - >-
                        Invalid phone number. Provide a valid international
                        number (e.g. +1234567890).
                Invalid IP:
                  value:
                    value:
                      - >-
                        Invalid IP address or CIDR range (e.g. 192.168.1.1 or
                        10.0.0.0/24).
                Invalid country:
                  value:
                    value:
                      - >-
                        Invalid country code: XX. Provide a valid ISO 3166-1
                        alpha-2 or alpha-3 country code.
                Device-class fingerprint:
                  value:
                    value:
                      - >-
                        This value is a device-class fingerprint: several
                        distinct devices have reported it, so blocklisting it
                        would decline unrelated people. Block the user by
                        document, face, email or phone instead.
                Unknown session:
                  value:
                    reference_session_id:
                      - >-
                        Session not found or does not belong to this
                        application.
                No data in session:
                  value:
                    value:
                      - >-
                        Either provide a 'value' or ensure the session contains
                        data for this entry type.
                Selfie on another list:
                  value:
                    face_image_source:
                      - >-
                        A document-capture selfie can only be added to the face
                        blocklist.
                No clear face in selfie:
                  value:
                    face_image_source:
                      - >-
                        No clear face was found in this selfie, so it cannot be
                        blocklisted.
                Selfie already listed:
                  value:
                    face_image_source:
                      - This selfie is already in the blocklist.
        '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: API 키의 애플리케이션에 이 UUID를 가진 목록이 존재하지 않거나 삭제되었습니다.
          content:
            application/json:
              examples:
                Not found:
                  value:
                    detail: List not found.
        '429':
          $ref: '#/components/responses/RateLimitedWrite'
        '503':
          description: 문서 캡처 셀피의 얼굴 분석을 일시적으로 사용할 수 없습니다. 아무것도 추가되지 않았으므로 나중에 다시 시도하십시오.
          content:
            application/json:
              examples:
                Unavailable:
                  value:
                    detail: Service temporarily unavailable. Please try again later.
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X POST
            'https://verification.didit.me/v3/lists/11111111-2222-3333-4444-555555555555/entries/'
            \
              -H 'x-api-key: YOUR_API_KEY' \
              -H 'Content-Type: application/json' \
              -d '{"value": "+14155552671", "comment": "Reported fraud"}'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            result = client.lists.entries.create(
                "11111111-2222-3333-4444-555555555555",
                value="+14155552671",
                comment="Reported fraud",
            )
            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.entries.create("11111111-2222-3333-4444-555555555555", {
              value: "+14155552671",
              comment: "Reported fraud",
            });

            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.Lists.Entries.Create(ctx, \"11111111-2222-3333-4444-555555555555\", didit.ListsEntriesCreateParams{\n\tValue:   didit.String(\"+14155552671\"),\n\tComment: didit.String(\"Reported fraud\"),\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.ListsEntriesCreateParams;


            // Reads DIDIT_API_KEY.

            Didit client = new Didit();


            var result =
            client.lists().entries().create("11111111-2222-3333-4444-555555555555",
            ListsEntriesCreateParams.builder()
                    .value("+14155552671")
                    .comment("Reported fraud")
                    .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->entries->create('11111111-2222-3333-4444-555555555555',
            [
                'value' => '+14155552671',
                'comment' => 'Reported fraud',
            ]);

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

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

            result = didit.lists.entries.create(
              "11111111-2222-3333-4444-555555555555",
              value: "+14155552671",
              comment: "Reported fraud"
            )
            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.Entries.CreateAsync("11111111-2222-3333-4444-555555555555",
            new ListsEntriesCreateParams

            {
                Value = "+14155552671",
                Comment = "Reported fraud",
            });

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    ComplianceListEntry:
      type: object
      description: 목록 내의 값 1개입니다.
      required:
        - uuid
        - value
        - display_label
        - comment
        - added_by
        - reference_session_id
        - reference_session_number
        - reference_session_type
        - reference_object_uuid
        - metadata
        - created_at
      properties:
        uuid:
          type: string
          format: uuid
          description: 항목 식별자. 목록 항목 삭제에서 `entry_uuid`로 사용합니다.
        value:
          type: string
          description: >-
            목록에 등록된 값: E.164 형식의 전화번호, 이메일 주소, 문서 번호, IP 주소 또는 CIDR 범위, 기기 지문,
            지갑 주소, 은행 계좌, ISO 3166-1 alpha-3 국가 코드, `vendor_data`, `key` 목록의 모든
            문자열, 또는 얼굴 목록에 저장된 얼굴의 UUID입니다. 전송하는 값은 전화번호와 국가 코드를 제외하고 소문자로
            저장됩니다. 일치 여부 확인 시 대소문자를 구분하지 않습니다.
        display_label:
          type: string
          nullable: true
          maxLength: 512
          description: >-
            사람이 읽기 쉬운 라벨입니다. 아무것도 전송하지 않으면 Didit이 세션에서 가져온 항목(예: 소지자의 성명 및 문서
            번호)으로 채웁니다.
        comment:
          type: string
          description: 자유 형식 메모입니다. 설정되지 않은 경우 빈 문자열입니다.
        added_by:
          type: string
          nullable: true
          description: >-
            항목을 추가한 주체: `api`(API 키), 콘솔 사용자의 이메일 주소 또는 `console`, `system` 또는
            `migration`(Didit이 생성한 항목), 또는 `rule`(거래 규칙 또는 모니터링 규칙의 작업).
        reference_session_id:
          type: string
          format: uuid
          nullable: true
          description: 해당 항목을 가져온 인증 세션입니다. 항목이 값으로 직접 추가된 경우 `null`입니다.
        reference_session_number:
          type: integer
          nullable: true
          description: 콘솔에 표시되는 해당 세션의 애플리케이션별 번호입니다.
        reference_session_type:
          type: string
          nullable: true
          enum:
            - kyc
            - kyb
            - null
          description: 개인 인증 세션인 경우 `kyc`, 기업 확인 세션인 경우 `kyb`, 세션이 없는 경우 `null`입니다.
        reference_object_uuid:
          type: string
          format: uuid
          nullable: true
          description: >-
            항목이 나타내는 레코드입니다. 세션에서 읽은 얼굴, 문서, 전화번호 또는 이메일 레코드, 목록에 얼굴 업로드를 통해 생성된
            얼굴, 또는 전송한 UUID(예: 거래 UUID 또는 사용자의 `didit_internal_id`)입니다.
        metadata:
          type: object
          nullable: true
          additionalProperties: true
          description: >-
            추가 컨텍스트입니다. 항목 생성 시 전송한 `metadata`와 병합된 Didit이 설정한 키(여기에 나열됨)가 포함되며,
            저장된 그대로 반환됩니다. 없는 경우 `null`입니다.
          properties:
            reference_image_url:
              type: string
              description: >-
                얼굴 항목: 호출마다 새로 발급되는 단기 서명된 URL입니다. `media: read` 권한이 없는 범위 지정
                API 키의 경우 `null`입니다. 해당 항목에 이미지가 없으면 생략됩니다.
            front_image_url:
              type: string
              description: >-
                문서 앞면 이미지를 포함하는 문서 항목: 호출할 때마다 다시 발급되는 수명이 짧은 서명된 URL입니다.
                `media: read` 권한이 없는 범위가 지정된 API 키의 경우 `null`입니다.
            full_name:
              type: string
              description: '세션에서 가져온 문서 항목: 소지자의 성명입니다.'
            issuing_state:
              type: string
              description: '세션에서 가져온 문서 항목: ISO 3166-1 alpha-3 발급 국가입니다.'
            document_type:
              type: string
              description: '세션에서 가져온 문서 항목: 문서 유형 코드(예: `P`, `ID`, `DL`)입니다.'
            region:
              type: string
              description: >-
                세션에서 가져온 문서 항목: 지역에서 발급된 문서의 발급 주 또는 도이며, 해당하지 않는 경우 비어 있습니다. 세션
                항목을 차단 목록에 추가해도 설정되지 않습니다.
            document_number:
              type: string
              description: '세션에서 가져온 문서 항목: 문서 번호입니다.'
            face_image_source:
              type: string
              enum:
                - front_image_camera_front
                - back_image_camera_front
              description: '문서 캡처 셀피에서 가져온 얼굴 항목: 셀피 구분입니다. 라이브니스 얼굴인 경우 없습니다.'
            reference_node_id:
              type: string
              nullable: true
              description: '문서 캡처 셀피에서 가져온 얼굴 항목: 셀피가 생성된 신분증 인증 노드입니다.'
            fingerprint_tier:
              type: string
              nullable: true
              enum:
                - persistent_id
                - composite_hash
                - legacy_fp
                - unknown
                - null
              description: >-
                세션에서 수집된 기기 핑거프린트 항목(핑거프린트가 파생된 방식)입니다. `persistent_id`는 단일 기기를
                식별하며, `composite_hash` 및 `legacy_fp`는 동일한 모델의 기기 간에 공유될 수 있습니다.
            sandbox:
              type: boolean
              description: 샌드박스 애플리케이션에 업로드된 얼굴 항목인 경우 `true`입니다. 이러한 항목은 어떤 것과도 일치하지 않습니다.
            reference_type:
              type: string
              enum:
                - transaction
                - vendor_user
                - vendor_business
              description: >-
                사용자가 직접 설정: 콘솔에서 다시 연결할 수 있도록 `reference_object_uuid`가 가리키는
                대상입니다.
            reference_id:
              type: string
              description: '사용자가 직접 설정: 소스 레코드의 식별자입니다.'
        created_at:
          type: string
          format: date-time
          description: 항목이 추가된 시점입니다.
  responses:
    RateLimitedWrite:
      description: >-
        API 키당 분당 300개의 요청을 처리하는 공유 쓰기 속도 제한을 초과했습니다. 다시 시도하기 전에 `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: >-
        Business Console의 Developers -> API keys에서 발급받은 귀하 애플리케이션의 API 키입니다. 기본
        키는 전체 접근 권한을 갖습니다. 이름이 지정된 키는 리소스별 none, read, write 범위로 권한을 제한할 수 있으며
        특정 워크플로나 승인된 세션, IP 주소 목록, 만료일 등으로 제한할 수도 있습니다. 401은 키가 잘못되었거나 폐기되었거나
        만료되었음을 의미합니다. 403은 키가 전송되지 않았거나, 키에 해당 리소스나 작업에 대한 접근 권한이 없거나, 요청이 허용된
        IP 목록 외부 주소에서 발생했음을 의미합니다. 세션 경로에서의 404는 해당 세션이 키의 허용 워크플로 또는 상태 범위를
        벗어났음을 의미합니다. 미디어 접근 권한이 없는 키는 이미지, 비디오, PDF URL을 null로 수신하며, 세션 write
        권한이 없는 키는 세션 링크와 token을 null로 수신합니다.
        https://docs.didit.me/console/api-keys 를 참고하십시오.

````

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