> ## 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のGET /v3/lists/で、アプリのブロックリスト、許可リスト、カスタムリストをすべて取得できます。リスト種別やエントリ種別でフィルター可能。API呼び出しごとの従量課金で、契約は不要です。



リスト一覧取得APIプロンプト
        プロンプトをクリップボードにコピー



      
      

\<pre>

\`Retrieve every blocklist, allowlist, and custom list in my Didit application through the Management API.

Endpoint:
GET https://verification.didit.me/v3/lists/

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

Goal:
\- Get a paginated list of all lists for my application so I can find a specific list's uuid, filter by type, or render a picker.

Behavior:
\- Returns the application's active lists, newest first by default. Deleted lists never appear.
\- Includes the system lists Didit provisions (is_system: true): one blocklist per entry type, the "High Risk Countries" custom list, and any system allowlist.
\- Paginated with limit (default 50) and offset. Follow next until it is null.

Query parameters (all optional):
\- list_type: "blocklist" | "allowlist" | "custom".
\- entry_type: face, document, phone, email, ip_address, device_fingerprint, wallet_address, bank_account, country, user, business, key.
\- ordering: created_at or -created_at (default).
\- limit: page size (default 50, at most 1000000).
\- offset: pagination offset (default 0).

Example call:
curl -X GET "https://verification.didit.me/v3/lists/?list_type=blocklist" \
-H "x-api-key: YOUR_API_KEY"

What to read from the response:
\- count / next / previous: standard pagination envelope.
\- results[].uuid: list id; use it as list_uuid in the list and entry calls.
\- results[].is_system: true for the lists Didit provisions. System lists cannot be renamed, edited or deleted, but you can add and remove their entries.
\- results[].entry_count, last_entry_added_at: computed over the list's current entries; useful for dashboards.

Failure modes:
\- 400: an unknown list_type or entry_type value, or limit/offset above 1000000.
\- 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: read.
\- 429: rate limited (see /integration/rate-limiting); back off and retry.

Side effects: none. This is a pure read.

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

\</pre>



      
      

貼り付け先

アプリケーションの有効なリストをすべて、ページネーション付きの一覧で取得します。対象には、Diditが用意するシステムリスト(エントリタイプごとに1つのブロックリスト、**High Risk Countries**リスト、およびシステム許可リスト)と、お客様が作成した許可リストおよびカスタムリストが含まれます。`list_type`または`entry_type`でフィルターでき、リストの値は[リストエントリ](https://docs.didit.me/ja/management-api/lists/list-entries.md)で取得できます。各リストタイプが本人確認および取引スクリーニングの際にどのように機能するかについては、[リスト](https://docs.didit.me/ja/management-api/lists/overview.md)を参照してください。


## OpenAPI

````yaml ja/openapi-25.json GET /v3/lists/
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/:
    get:
      tags:
        - Lists
      summary: リストを一覧表示
      description: >-
        アプリケーションのリストを新しい順に返します。対象は、Diditが用意するシステムリスト（エントリタイプごとに1つのブロックリスト、**High
        Risk
        Countries**カスタムリスト、およびシステム許可リストがある場合はそれ）と、お客様が作成した許可リストおよびカスタムリストです。`list_type`と`entry_type`でフィルターできます。削除されたリストは表示されません。結果は`limit`と`offset`でページ分割されます。スコープ付きAPIキーには`workflows:
        read`が必要です。各リストタイプの役割については[リスト](https://docs.didit.me/ja/management-api/lists/overview)を参照してください。
      operationId: list_lists
      parameters:
        - name: list_type
          in: query
          required: false
          description: このタイプのリストのみ。
          schema:
            type: string
            enum:
              - blocklist
              - allowlist
              - custom
        - name: entry_type
          in: query
          required: false
          description: このエントリタイプのリストのみ。
          schema:
            type: string
            enum:
              - face
              - document
              - phone
              - email
              - ip_address
              - device_fingerprint
              - wallet_address
              - bank_account
              - country
              - user
              - business
              - key
        - name: ordering
          in: query
          required: false
          description: '並び順: `-created_at`(新しい順、デフォルト)または`created_at`(古い順)。'
          schema:
            type: string
            enum:
              - '-created_at'
              - created_at
            default: '-created_at'
        - name: limit
          in: query
          required: false
          description: ページサイズ。デフォルトは50です。1000000を超える値は`400`を返します。0、負の値、数値以外の値の場合は50が使用されます。
          schema:
            type: integer
            default: 50
            minimum: 1
            maximum: 1000000
        - name: offset
          in: query
          required: false
          description: >-
            返す最初の項目の0始まりのインデックスです。`next`をたどる方法を推奨します。1000000を超える値は`400`を返し、負の値または数値以外の値は0として扱われます。
          schema:
            type: integer
            maximum: 1000000
            minimum: 0
            default: 0
      responses:
        '200':
          description: リストのページ。
          content:
            application/json:
              schema:
                type: object
                required:
                  - count
                  - next
                  - previous
                  - results
                properties:
                  count:
                    type: integer
                    minimum: 0
                    description: フィルターに一致するリストの総数。
                  next:
                    type: string
                    format: uri
                    nullable: true
                    description: 次のページの絶対URL。最後のページでは`null`になります。
                  previous:
                    type: string
                    format: uri
                    nullable: true
                    description: 前のページの絶対URL。最初のページでは`null`になります。
                  results:
                    type: array
                    items:
                      $ref: '#/components/schemas/ComplianceList'
              examples:
                Lists:
                  value:
                    count: 2
                    next: null
                    previous: null
                    results:
                      - uuid: 22222222-3333-4444-5555-666666666666
                        name: Trusted office IPs
                        description: Office egress ranges
                        list_type: allowlist
                        entry_type: ip_address
                        is_system: false
                        entry_count: 3
                        last_entry_added_at: '2026-10-02T08:15:27.501334Z'
                        created_at: '2026-09-30T13:20:45.889120Z'
                        updated_at: '2026-09-30T13:20:45.889120Z'
                      - uuid: 11111111-2222-3333-4444-555555555555
                        name: Face Blocklist
                        description: >-
                          Blocked biometric faces. When a face matching an entry
                          in this list is detected during liveness verification,
                          the session will be automatically declined.
                        list_type: blocklist
                        entry_type: face
                        is_system: true
                        entry_count: 12
                        last_entry_added_at: '2026-10-09T16:42:03.118204Z'
                        created_at: '2026-01-14T10:02:11.402917Z'
                        updated_at: '2026-01-14T10:02:11.402917Z'
        '400':
          description: クエリパラメーターが無効です。
          content:
            application/json:
              examples:
                Unknown list type:
                  value:
                    list_type:
                      - '"denylist" is not a valid choice.'
                Unsupported ordering:
                  value:
                    ordering:
                      - '"name" is not a valid choice.'
                Limit too large:
                  value:
                    - limit must not exceed 1000000.
        '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:
            read`がないか、許可リスト外の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 read access to workflows.
        '429':
          description: APIキーあたり毎分600リクエストの共有読み取り制限を超えました。再試行する前に`Retry-After`に従ってください。
          content:
            application/json:
              examples:
                Rate limited:
                  value:
                    detail: >-
                      GET request rate limit exceeded. You can make up to 600
                      requests per minute.
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X GET
            'https://verification.didit.me/v3/lists/?list_type=blocklist' \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            for item in client.lists.list():
                print(item)
        - lang: javascript
          label: Node.js
          source: |-
            import Didit from "@didit-protocol/sdk-node";

            // Reads DIDIT_API_KEY.
            const didit = new Didit();

            for await (const item of didit.lists.list()) {
              console.log(item);
            }
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\niter := client.Lists.ListAutoPaging(ctx, didit.ListsListParams{})\nfor iter.Next() {\n\tfmt.Printf(\"%+v\\n\", iter.Current())\n}\nif err := iter.Err(); err != nil {\n\tlog.Fatal(err)\n}"
        - lang: java
          label: Java
          source: |-
            import me.didit.Didit;

            // Reads DIDIT_API_KEY.
            Didit client = new Didit();

            for (var item : client.lists().list()) {
                System.out.println(item);
            }
        - lang: php
          label: PHP
          source: |-
            <?php

            require 'vendor/autoload.php';

            use Didit\DiditClient;

            // Reads DIDIT_API_KEY.
            $didit = new DiditClient();

            foreach ($didit->lists->list() as $item) {
                print_r($item->toArray());
            }
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

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

            didit.lists.list.auto_paging_each do |item|
              puts item.to_h
            end
        - lang: csharp
          label: .NET
          source: |-
            using System;
            using System.Text.Json;
            using Didit;

            // Reads DIDIT_API_KEY.
            using var client = new DiditClient();

            await foreach (var item in await client.Lists.ListAsync())
            {
                Console.WriteLine(JsonSerializer.Serialize(item));
            }
components:
  schemas:
    ComplianceList:
      type: object
      description: 1つのアプリケーションのブロックリスト、許可リスト、またはカスタムリスト。
      required:
        - uuid
        - name
        - description
        - list_type
        - entry_type
        - is_system
        - entry_count
        - last_entry_added_at
        - created_at
        - updated_at
      properties:
        uuid:
          type: string
          format: uuid
          description: >-
            リストの識別子です。リストおよびエントリのエンドポイントでは`list_uuid`として使用し、`value_type:
            "list"`のワークフローまたは取引ルールの条件では値として使用します。
        name:
          type: string
          maxLength: 255
          description: リスト名です。アプリケーションのリスト内で一意です。
        description:
          type: string
          description: 自由記述の説明。未設定の場合は空文字列です。
        list_type:
          type: string
          enum:
            - blocklist
            - allowlist
            - custom
          description: >-
            `blocklist`：一致するとセッションまたは取引が却下されます（システムリストのみ、エントリタイプごとに1つ）。`allowlist`：一致した項目は信頼されます。たとえば顔の許可リストでは重複顔のアクションがスキップされます。ブロックリストの一致を上書きすることはありません。`custom`：ワークフローおよび取引ルールの条件で使用されます（`value_type:
            "list"`）。
        entry_type:
          type: string
          enum:
            - face
            - document
            - phone
            - email
            - ip_address
            - device_fingerprint
            - wallet_address
            - bank_account
            - country
            - user
            - business
            - key
          description: >-
            リストが保持する内容です。`face`、`document`（書類番号）、`phone`、`email`、`ip_address`（IPアドレスまたはCIDR範囲）、`device_fingerprint`、`wallet_address`、`bank_account`、`country`（ISO
            3166-1
            alpha-3）、`user`または`business`（お客様の`vendor_data`）、`key`（任意の文字列）のいずれかです。エントリの値の検証方法と照合方法はこれによって決まります。
        is_system:
          type: boolean
          description: >-
            Diditが用意するリストでは`true`です。対象は、エントリタイプごとに1つずつ用意されるブロックリスト（`face`、`document`、`phone`、`email`、`ip_address`、`device_fingerprint`、`wallet_address`、`bank_account`、`user`、`business`）、**High
            Risk
            Countries**カスタムリスト、およびシステム許可リストです。システムリストは名前の変更、編集、削除ができません。エントリの追加と削除は可能です。
        entry_count:
          type: integer
          minimum: 0
          description: 現在リストに含まれるエントリー数。
        last_entry_added_at:
          type: string
          format: date-time
          nullable: true
          description: 最新の現行エントリが追加された日時。空のリストでは`null`です。
        created_at:
          type: string
          format: date-time
          description: リストが作成された日時。
        updated_at:
          type: string
          format: date-time
          description: リストが最後に更新された日時。
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        お客様のアプリケーションのAPIキーです。Business ConsoleのDevelopers -> API
        keysで取得できます。プライマリキーはフルアクセス権を持ちます。名前付きキーにはスコープを設定できます。リソースごとのアクセス権（なし、読み取り、書き込み）、一部のワークフローまたは承認済みセッションへの限定、IPアドレスのリストへの限定、有効期限の設定です。401は、キーが誤っている、失効している、または期限切れであることを意味します。403は、キーが送信されていない、キーにこのリソースやアクションへのアクセス権がない、またはIPリスト外のアドレスからリクエストが送信されたことを意味します。セッションのルートでの404は、セッションがキーのワークフローまたはステータスの対象外であることを意味します。メディアへのアクセス権がないキーでは、画像、動画、PDFのURLがnullで返されます。セッションの書き込み権限がないキーでは、セッションのリンクとトークンがnullで返されます。詳細は次を参照してください:
        https://docs.didit.me/console/api-keys

````

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