curl -s 'https://verification.didit.me/v3/sessions/?status=Approved,In%20Review&date_from=2026-06-01&limit=20' \
-H 'x-api-key: YOUR_API_KEY'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
for item in client.sessions.list():
print(item)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
for await (const item of didit.sessions.list()) {
console.log(item);
}ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
iter := client.Sessions.ListAutoPaging(ctx, didit.SessionsListParams{})
for iter.Next() {
fmt.Printf("%+v\n", iter.Current())
}
if err := iter.Err(); err != nil {
log.Fatal(err)
}import me.didit.Didit;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
for (var item : client.sessions().list()) {
System.out.println(item);
}<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
foreach ($didit->sessions->list() as $item) {
print_r($item);
}require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
didit.sessions.list.auto_paging_each do |item|
puts item.to_h
endusing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
await foreach (var item in await client.Sessions.ListAsync())
{
Console.WriteLine(JsonSerializer.Serialize(item));
}{
"count": 2,
"next": null,
"previous": null,
"results": [
{
"session_id": "5b3720ed-d429-42ef-b67f-37ea805f48ee",
"session_kind": "user",
"session_number": 720,
"session_url": "https://verify.didit.me/session/CuXoBYCYVO5Y",
"portrait_image": "https://<media-host>/portraits/5b3720ed.jpg?X-Amz-Expires=3600&X-Amz-Signature=...",
"document_type": "Passport",
"full_name": "Jane Marie Doe",
"country": "ESP",
"status": "Approved",
"vendor_data": "your-user-id-123",
"didit_internal_id": "d9e78474-6c8d-4f2a-bb90-6f5c2f3a1147",
"created_at": "2026-06-09T12:26:54.328364Z",
"features": [
{
"feature": "ID_VERIFICATION",
"status": "Approved"
},
{
"feature": "LIVENESS",
"status": "Approved"
},
{
"feature": "FACE_MATCH",
"status": "Approved"
},
{
"feature": "AML",
"status": "Approved"
},
{
"feature": "IP_ANALYSIS",
"status": "Approved"
}
],
"phone_number": {
"number": "+14155552671",
"is_verified": true
},
"email_address": {
"email": "jane@example.com",
"is_verified": true
},
"additional_details": {
"aml": {
"total_hits": 0,
"entity_type": "person",
"is_adverse_media_fetched": false
},
"liveness": {
"method": "PASSIVE",
"score": 0.98
},
"face_match": {
"score": 0.95
}
}
},
{
"session_id": "038ad62f-5ebd-46c2-afe9-4b2956bf687f",
"session_kind": "user",
"session_number": 719,
"session_url": "https://verify.didit.me/session/7RGKiO6ioGH6",
"portrait_image": null,
"document_type": null,
"full_name": null,
"country": null,
"status": "Not Started",
"vendor_data": "your-user-id-124",
"didit_internal_id": "eb4e679d-ca4b-461f-9685-687bac29ebdb",
"created_at": "2026-06-09T08:02:23.343053Z",
"features": [
{
"feature": "ID_VERIFICATION",
"status": "Not Finished"
},
{
"feature": "LIVENESS",
"status": "Not Finished"
},
{
"feature": "FACE_MATCH",
"status": "Not Finished"
},
{
"feature": "AML",
"status": "Not Finished"
},
{
"feature": "IP_ANALYSIS",
"status": "Not Finished"
}
],
"phone_number": null,
"email_address": null,
"additional_details": null
}
]
}セッション一覧API:KYC・KYBセッションの絞り込み
DiditのGET /v3/sessions/で認証セッションを一覧取得できます。種類、ステータス、ワークフロー、vendor dataで絞り込み可能です。KYCとKYBを統合したAPIで、従量課金制です。
curl -s 'https://verification.didit.me/v3/sessions/?status=Approved,In%20Review&date_from=2026-06-01&limit=20' \
-H 'x-api-key: YOUR_API_KEY'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
for item in client.sessions.list():
print(item)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
for await (const item of didit.sessions.list()) {
console.log(item);
}ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
iter := client.Sessions.ListAutoPaging(ctx, didit.SessionsListParams{})
for iter.Next() {
fmt.Printf("%+v\n", iter.Current())
}
if err := iter.Err(); err != nil {
log.Fatal(err)
}import me.didit.Didit;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
for (var item : client.sessions().list()) {
System.out.println(item);
}<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
foreach ($didit->sessions->list() as $item) {
print_r($item);
}require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
didit.sessions.list.auto_paging_each do |item|
puts item.to_h
endusing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
await foreach (var item in await client.Sessions.ListAsync())
{
Console.WriteLine(JsonSerializer.Serialize(item));
}{
"count": 2,
"next": null,
"previous": null,
"results": [
{
"session_id": "5b3720ed-d429-42ef-b67f-37ea805f48ee",
"session_kind": "user",
"session_number": 720,
"session_url": "https://verify.didit.me/session/CuXoBYCYVO5Y",
"portrait_image": "https://<media-host>/portraits/5b3720ed.jpg?X-Amz-Expires=3600&X-Amz-Signature=...",
"document_type": "Passport",
"full_name": "Jane Marie Doe",
"country": "ESP",
"status": "Approved",
"vendor_data": "your-user-id-123",
"didit_internal_id": "d9e78474-6c8d-4f2a-bb90-6f5c2f3a1147",
"created_at": "2026-06-09T12:26:54.328364Z",
"features": [
{
"feature": "ID_VERIFICATION",
"status": "Approved"
},
{
"feature": "LIVENESS",
"status": "Approved"
},
{
"feature": "FACE_MATCH",
"status": "Approved"
},
{
"feature": "AML",
"status": "Approved"
},
{
"feature": "IP_ANALYSIS",
"status": "Approved"
}
],
"phone_number": {
"number": "+14155552671",
"is_verified": true
},
"email_address": {
"email": "jane@example.com",
"is_verified": true
},
"additional_details": {
"aml": {
"total_hits": 0,
"entity_type": "person",
"is_adverse_media_fetched": false
},
"liveness": {
"method": "PASSIVE",
"score": 0.98
},
"face_match": {
"score": 0.95
}
}
},
{
"session_id": "038ad62f-5ebd-46c2-afe9-4b2956bf687f",
"session_kind": "user",
"session_number": 719,
"session_url": "https://verify.didit.me/session/7RGKiO6ioGH6",
"portrait_image": null,
"document_type": null,
"full_name": null,
"country": null,
"status": "Not Started",
"vendor_data": "your-user-id-124",
"didit_internal_id": "eb4e679d-ca4b-461f-9685-687bac29ebdb",
"created_at": "2026-06-09T08:02:23.343053Z",
"features": [
{
"feature": "ID_VERIFICATION",
"status": "Not Finished"
},
{
"feature": "LIVENESS",
"status": "Not Finished"
},
{
"feature": "FACE_MATCH",
"status": "Not Finished"
},
{
"feature": "AML",
"status": "Not Finished"
},
{
"feature": "IP_ANALYSIS",
"status": "Not Finished"
}
],
"phone_number": null,
"email_address": null,
"additional_details": null
}
]
}セッション種別フィルター
session_kindクエリパラメーターを使用して、返すセッションの種別を選択します。
| 値 | 返される内容 |
|---|---|
user(デフォルト) | ユーザー認証 (KYC)セッションのみ。後方互換性を維持した動作です。session_kindを省略するとこの動作になります。 |
business | 法人確認 (KYB)セッションのみ。 |
all | ユーザー認証セッションと法人確認セッションの両方を連結したもの。 |
session_kind: "user" | "business"が含まれるため、クライアント側で行ごとにデータ構造に応じた処理を切り替えられます。
共通フィルター
以下のフィルターは両方の種別に適用されます(session_kind=businessの場合はユーザー専用のフィルターが無視され、その逆も同様です)。
| クエリパラメーター | 説明 |
|---|---|
session_kind | user、business、またはall。デフォルトはuserです。 |
vendor_data | お客様の識別子との完全一致。 |
status | 1つ以上のステータスをカンマ区切りで指定します。Approved、Declined、In Reviewなど、APIが返すとおりの表記で記述してください(検証ステータスを参照)。 |
workflow_id | 使用されたワークフローで絞り込みます。 |
country | 国コードによるフィルター(ユーザー:issuing_states、企業:country_code)。 |
date_from, date_to | 作成日の期間(ISO 8601)。 |
tags | カンマ区切りのタグID。いずれかのタグが付いたセッションを返します。 |
decided_from, decided_to | ISO 8601形式の日時。その期間内にステータスが最後に変更されたセッションを返します(開始は含み、終了は含みません)。作成日時ではなく、最後にステータスが変更された日時を使用します。 |
search | S-0001やB-0001のように表示される参照番号を完全な形で入力すると、そのセッション番号と種別のみに一致します。先頭のゼロと大文字・小文字の違いは無視されます。それ以外の入力では、既存の氏名、連絡先、書類、登記番号、vendor_dataの各フィールドを検索します。 |
例
- ユーザー認証 (KYC)セッションの一覧を取得(デフォルト)
- 法人確認 (KYB)セッションの一覧を取得
- 両方の種別の一覧を取得
curl -G https://verification.didit.me/v3/sessions/ \
-H "x-api-key: YOUR_API_KEY" \
--data-urlencode "vendor_data=user-42"
{
"count": 3,
"next": null,
"previous": null,
"results": [
{
"session_id": "...",
"session_kind": "user",
"session_number": 1024,
"session_url": "...",
"portrait_image": "...",
"document_type": "Passport",
"full_name": "John Doe",
"country": "GBR",
"status": "Approved",
"vendor_data": "user-42",
"didit_internal_id": "...",
"created_at": "2026-04-10T09:00:00Z",
"features": "ID_VERIFICATION,LIVENESS,FACE_MATCH,AML",
"phone_number": "+14155550123",
"email_address": "jane@example.com",
"additional_details": null
}
]
}
curl -G https://verification.didit.me/v3/sessions/ \
-H "x-api-key: YOUR_API_KEY" \
--data-urlencode "session_kind=business" \
--data-urlencode "status=Approved"
{
"count": 1,
"next": null,
"previous": null,
"results": [
{
"session_id": "...",
"session_kind": "business",
"session_number": 89,
"status": "Approved",
"vendor_data": "biz-acme-001",
"created_at": "2026-04-01T09:00:00Z",
"workflow_id": "wf_kyb_standard",
"workflow_type": "business",
"workflow_label": "Standard KYB",
"company_name": "Acme Corporation Limited",
"registration_number": "12345678",
"country": "GBR"
}
]
}
curl -G https://verification.didit.me/v3/sessions/ \
-H "x-api-key: YOUR_API_KEY" \
--data-urlencode "session_kind=all" \
--data-urlencode "date_from=2026-04-01T00:00:00Z"
results配列で返します。クライアント側では、各行のsession_kindに応じて処理を切り替えてください。allモードは、結果をタイムスタンプ順に交互に並べるのではなく、連結して返します。大量のデータを種別混在で走査する場合は、種別ごとに個別に呼び出し、クライアント側でマージしてください。行の形式は種別によって異なります
ユーザー認証 (KYC)の行には、portrait_image、document_type、full_name、country(発行国)、phone_number、email_addressに加え、いくつかのレビュー用フィールドが含まれます。assignee(セッションを担当しているConsoleのレビュアー、またはnull)、waiting_sinceとsla_due_at(セッションがIn Reviewの間のみ設定されます)、top_warnings(最も重要な警告で、それぞれにrisk、feature、log_type、short_descriptionが含まれます)、そしてwarnings_countです。
法人確認 (KYB)の行には、workflow_type、workflow_label、company_name、registration_number、country(設立国)が含まれます。
両方に共通して含まれるフィールドは、session_id、session_kind、session_number、status、vendor_data、created_at。
機能の全体一覧については、セッションの概要を参照してください。
ページネーション
ページネーションにはlimit(デフォルト50)とoffset(デフォルト0)を使用し、レスポンスには絶対URLのnextとpreviousが含まれます。どちらのパラメーターも1000000までの値を受け付け、それより大きい値を指定すると400が返されます。
countは100までは正確な値ですが、それを超えると100のままになるため、合計件数としては使用しないでください。nextのURLがnullになるまでリクエストを続けてください。session_kind=allの場合、countは両方の種別の合計で、それぞれ100が上限となります。
関連情報
承認
お客様のアプリケーションのAPIキーです。Business ConsoleのDevelopers -> API keysで取得できます。プライマリキーはフルアクセス権を持ちます。名前付きキーにはスコープを設定できます。リソースごとのアクセス権(なし、読み取り、書き込み)、一部のワークフローまたは承認済みセッションへの限定、IPアドレスのリストへの限定、有効期限の設定です。401は、キーが誤っている、失効している、または期限切れであることを意味します。403は、キーが送信されていない、キーにこのリソースやアクションへのアクセス権がない、またはIPリスト外のアドレスからリクエストが送信されたことを意味します。セッションのルートでの404は、セッションがキーのワークフローまたはステータスの対象外であることを意味します。メディアへのアクセス権がないキーでは、画像、動画、PDFのURLがnullで返されます。セッションの書き込み権限がないキーでは、セッションのリンクとトークンがnullで返されます。詳細は次を参照してください: https://docs.didit.me/console/api-keys
クエリパラメータ
一覧表示するセッションの種類:user(KYCのみ、デフォルト)、business(KYBのみ)、またはall(両方を連結したもの。統合ページネーションの仕様については説明を参照してください)。照合では大文字と小文字は区別されません(BUSINESSも有効です)。user/business/allの大文字小文字違い以外の値を指定すると400が返されます。
user, business, all 1ページあたりの最大行数(session_kind=allの場合は種類ごと)です。デフォルトは50です。
1 <= x <= 1000000最初に返す行の前にスキップする行数です。デフォルトは0です。レスポンスのnext/previousのURLをたどる方法を推奨します。
0 <= x <= 1000000セッション作成時に送信したvendor_data(自社のユーザーまたは企業の識別子)による完全一致フィルターです。部分一致には代わりにsearchを使用してください。
S-0001(ユーザー)やB-0001(企業)のような表示上の完全な参照番号は、そのセッション番号と種類にのみ一致します。先頭のゼロや大文字・小文字の違いは一致判定に影響しません。スマートなフリーテキスト検索です。完全なUUIDはsession_idに一致し、数値の入力はセッション番号の前方一致、書類番号/個人番号、電話番号の前方一致、またはvendor_dataに一致します。@を含む入力はメールアドレスの前方一致に、その他のテキストは氏名(アクセントを区別しない)とvendor_dataに一致します。数字を含むフリーテキストは、さらに書類番号/個人番号の検索フィールドとセッション番号の前方一致にも一致します。
カンマ区切りのワークフローUUID(Consoleのワークフローページで確認できます)。リスト内の不正な形式のUUIDは無視され、有効なものが1つもない場合、結果は空になります。
この日付(UTC)以降に作成されたセッションのみ。形式はYYYY-MM-DDです。不正な形式の日付は400を返します。
この日付(UTC)までに作成されたセッションのみ。形式はYYYY-MM-DDです。KYCの行では当日全体が含まれます。KYBの行では比較がcreated_at <= date_to(午前0時)となるため、KYBセッションの1日分をすべて含めるには翌日の日付を使用してください。
カンマ区切りのタグID(アプリケーションのtags)。いずれかのタグが付いたセッションを返します。有効なUUIDでないIDは無視され、有効なIDが1つもない場合、リストは空になります。
ISO 8601形式の日時。ステータスがこの日時以降に最後に変更されたセッションを返します。作成日時ではなく、最後のステータス変更日時でフィルタリングします。
ISO 8601形式の日時。ステータスがこの日時より前に最後に変更されたセッションを返します。decided_fromと組み合わせると半開区間を指定できます。
カンマ区切りの国フィルター。KYCの行の場合は、本人確認書類の発行国を示すISO 3166-1 alpha-3コード(例:ESP,USA)で、国籍とは異なる場合があります。KYBの行の場合は、登記上の企業の国コードです。
セッションで検証された本人確認書類の種類コードのカンマ区切りリスト(KYC行のみ): P(パスポート)、ID(身分証明書)、DL(運転免許証)、RP(在留許可証)、SSC(社会保障カード)、HIC(健康保険証)、WP(労働許可証)、TC(納税カード)、VISA、PSC(公共サービスカード)、BC(出生証明書)、OTHER。なお、レスポンスフィールドdocument_typeにはコードではなく表示名が含まれます。
書類名の完全一致です。複数の名前をカンマ区切りで渡せますが、値がカンマで分割されるのは-区切りが2つ以上含まれる場合のみです(カンマを含む単一の名前は全体で照合されます)。名前は書類検証(表面または裏面)で認識されたもので、例えばSpain - Id Card (2021)です。KYCの行のみが対象です。
カンマ区切りの書類の地域/州の値(米国の運転免許証など、地域ごとに発行される書類向け)。KYCの行のみが対象です。
Diditの内部ユーザー識別子(レスポンスフィールドdidit_internal_id)で絞り込み、認証済みの1人のユーザーのすべてのセッションを一覧表示します。有効なUUIDである必要があり、不正な形式の値を指定すると400が返ります。KYCの行のみが対象です。
カンマ区切りのセッション作成チャネル:API、HOSTED、MIGRATED。特別な値ALLを指定する(またはパラメーターを省略する)と、フィルターが無効になります。KYCの行のみが対象です。
スタンドアロンAPIセッションをサービスで絞り込みます。無効な値を指定すると400が返されます。KYCの行のみが対象です。
ID_VERIFICATION, FACE_MATCH, AGE_ESTIMATION, FACE_SEARCH, POA, AML, KYB_REGISTRY, PASSIVE_LIVENESS, DATABASE_VALIDATION, PHONE_VERIFICATION, EMAIL_VERIFICATION AMLおよびデータベース検証でスクリーニングされたデータ内を、アクセントを区別せずに名前で検索します。api_service=AMLまたはapi_service=DATABASE_VALIDATIONと組み合わせると、検索はその機能のスクリーニング済みデータに限定されます。KYCの行のみが対象です。
trueの場合、判定が最初にIn Reviewとなったセッションのみを対象にします(手動レビューの件数の監査に便利です)。KYCの行のみが対象です。
trueを指定すると書類検証が手動レビュー対象としてフラグ付けされたセッションを返し、falseを指定すると書類検証が明示的にフラグ付けされていないセッションを返します。無効にするには省略します。KYCの行のみが対象です。
エンドユーザーのeuuid(認証を行うユーザーに割り当てられたUUIDで、Consoleのディープリンクで使用されます)で絞り込みます。有効なUUIDでなければなりません。不正な形式の値を指定すると、フィールドエラー付きの400が返されます。KYCの行のみが対象です。
カンマ区切りの組織名。Console向けの機能です。APIキー(すでに1つのアプリケーションにスコープされています)を使用する場合は、自分の組織名にのみ一致します。
レスポンス
ページ分割されたセッション一覧。resultsの各項目は、session_kindに応じてKYCの行、KYBの行、またはその両方になります。各行のsession_kindフィールドで種類を判別してください。
フィルターに一致したセッションの数です。100件までは正確な値で、それを超える場合は100で打ち切られるため、合計値としては使用しないでください。さらにページがあるかどうかはnextで確認してください。session_kind=allの場合は両方の種類の合計で、それぞれ100で打ち切られます。
2
次のページの絶対URL。最後のページではnullになります。
"https://verification.didit.me/v3/sessions/?limit=20&offset=20"
前のページの絶対URL。最初のページではnullになります。
null
セッションの行(新しい順)。session_kind=allの場合、KYCの行が先に並び、その後にKYBの行が続きます。
ユーザー認証(KYC)セッションの概要行。本人情報フィールド(full_name、country、document_type、portrait_image、連絡先フィールド)は、ユーザーが認証ステップを完了するにつれて順次入力され、該当するステップが完了するまではnullです。ワークフローのレスポンス属性設定で制限されたフィールドもnullとして返されます。
- KYC session row (session_kind: user)
- KYB session row (session_kind: business)
Show child attributes
Show child attributes