curl -X GET 'https://verification.didit.me/v3/biometric-templates/?vendor_data=user-42&status=active' \
-H 'x-api-key: YOUR_API_KEY'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
for item in client.biometric_templates.list():
print(item)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
for await (const item of didit.biometricTemplates.list()) {
console.log(item);
}ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
iter := client.BiometricTemplates.ListAutoPaging(ctx, didit.BiometricTemplatesListParams{})
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.biometricTemplates().list()) {
System.out.println(item);
}<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
foreach ($didit->biometricTemplates->list() as $item) {
print_r($item->toArray());
}require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
didit.biometric_templates.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.BiometricTemplates.ListAsync())
{
Console.WriteLine(JsonSerializer.Serialize(item));
}{
"count": 1,
"next": null,
"previous": null,
"results": [
{
"uuid": "9d2f4b6e-1c3a-4e8f-b7d5-0a1c2e3f4a5b",
"vendor_user_uuid": "2f7c1a9e-8b4d-4c6a-9e1f-3d5b7a9c1e2f",
"vendor_data": "user-42",
"source_type": "session_delete",
"provenance_reference": "6b1e8d2f-4a3c-4f9e-8c7d-1a2b3c4d5e6f",
"retention_policy": "retain_until_user_deleted",
"retention_override": null,
"retained_at": "2026-08-28T10:15:42.318402Z",
"expires_at": "2027-08-28T10:15:42.318402Z",
"retained_by": "3c9e2b1f-7d4a-4e8b-9c1d-5f6a7b8c9d0e",
"retained_by_type": "API_KEY",
"instruction_class": "operational_session_delete",
"instruction_source": "api",
"instruction_id": "post-approval-cleanup-2026-08",
"held_out_of_use": false,
"status": "active",
"purged_at": null
}
]
}{
"retained_to": [
"Must be on or after retained_from."
]
}{
"detail": "You do not have permission to perform this action."
}生体認証テンプレート一覧取得API
GET /v3/biometric-templates/ は、Didit のアプリケーションが保持する画像を含まない顔の生体認証テンプレートをページネーション付きで一覧取得します。ユーザー、ステータス、ソース、日付でフィルターできます。
curl -X GET 'https://verification.didit.me/v3/biometric-templates/?vendor_data=user-42&status=active' \
-H 'x-api-key: YOUR_API_KEY'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
for item in client.biometric_templates.list():
print(item)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
for await (const item of didit.biometricTemplates.list()) {
console.log(item);
}ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
iter := client.BiometricTemplates.ListAutoPaging(ctx, didit.BiometricTemplatesListParams{})
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.biometricTemplates().list()) {
System.out.println(item);
}<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
foreach ($didit->biometricTemplates->list() as $item) {
print_r($item->toArray());
}require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
didit.biometric_templates.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.BiometricTemplates.ListAsync())
{
Console.WriteLine(JsonSerializer.Serialize(item));
}{
"count": 1,
"next": null,
"previous": null,
"results": [
{
"uuid": "9d2f4b6e-1c3a-4e8f-b7d5-0a1c2e3f4a5b",
"vendor_user_uuid": "2f7c1a9e-8b4d-4c6a-9e1f-3d5b7a9c1e2f",
"vendor_data": "user-42",
"source_type": "session_delete",
"provenance_reference": "6b1e8d2f-4a3c-4f9e-8c7d-1a2b3c4d5e6f",
"retention_policy": "retain_until_user_deleted",
"retention_override": null,
"retained_at": "2026-08-28T10:15:42.318402Z",
"expires_at": "2027-08-28T10:15:42.318402Z",
"retained_by": "3c9e2b1f-7d4a-4e8b-9c1d-5f6a7b8c9d0e",
"retained_by_type": "API_KEY",
"instruction_class": "operational_session_delete",
"instruction_source": "api",
"instruction_id": "post-approval-cleanup-2026-08",
"held_out_of_use": false,
"status": "active",
"purged_at": null
}
]
}{
"retained_to": [
"Must be on or after retained_from."
]
}{
"detail": "You do not have permission to perform this action."
}クエリパラメーター
| パラメーター | 型 | 説明 |
|---|---|---|
vendor_data | string | 所有者であるUserの現在のvendor_dataに対する、大文字と小文字を区別しない部分一致 |
vendor_user_uuid | UUID | 所有者であるUserとの完全一致 |
status | enum | pending、active、expired、held_out_of_use、purge_pending、purge_failed |
source_type | enum | session_delete、automatic_retention、backfill |
retained_from | datetime | この日時以降に保持されたテンプレート |
retained_to | datetime | この日時以前に保持されたテンプレート。retained_fromより前の日時は指定できません。 |
ordering | enum | retained_at、-retained_at(デフォルト)、expires_at、-expires_at |
limit | integer | ページサイズ |
offset | integer | ページネーションのオフセット |
例
curl -X GET "https://verification.didit.me/v3/biometric-templates/?vendor_data=user-42&status=active" \
-H "x-api-key: YOUR_API_KEY"
{
"count": 1,
"next": null,
"previous": null,
"results": [
{
"uuid": "9d2f4b6e-1c3a-4e8f-b7d5-0a1c2e3f4a5b",
"vendor_user_uuid": "2f7c1a9e-8b4d-4c6a-9e1f-3d5b7a9c1e2f",
"vendor_data": "user-42",
"source_type": "session_delete",
"provenance_reference": "6b1e8d2f-4a3c-4f9e-8c7d-1a2b3c4d5e6f",
"retention_policy": "retain_until_user_deleted",
"retention_override": null,
"retained_at": "2026-08-28T10:15:42.318402Z",
"expires_at": "2027-08-28T10:15:42.318402Z",
"retained_by": "3c9e2b1f-7d4a-4e8b-9c1d-5f6a7b8c9d0e",
"retained_by_type": "API_KEY",
"instruction_class": "operational_session_delete",
"instruction_source": "api",
"instruction_id": "post-approval-cleanup-2026-08",
"held_out_of_use": false,
"status": "active",
"purged_at": null
}
]
}
エラー
| ステータス | 発生条件 |
|---|---|
400 | フィルターの値が無効な場合、またはretained_toがretained_fromより前の場合 |
403 | コンソールのユーザートークンを使用した場合、またはAPIキーが許可されていない場合 |
承認
お客様のアプリケーションのAPIキーです。Business ConsoleのDevelopers -> API keysで取得できます。プライマリキーはフルアクセス権を持ちます。名前付きキーにはスコープを設定できます。リソースごとのアクセス権(なし、読み取り、書き込み)、一部のワークフローまたは承認済みセッションへの限定、IPアドレスのリストへの限定、有効期限の設定です。401は、キーが誤っている、失効している、または期限切れであることを意味します。403は、キーが送信されていない、キーにこのリソースやアクションへのアクセス権がない、またはIPリスト外のアドレスからリクエストが送信されたことを意味します。セッションのルートでの404は、セッションがキーのワークフローまたはステータスの対象外であることを意味します。メディアへのアクセス権がないキーでは、画像、動画、PDFのURLがnullで返されます。セッションの書き込み権限がないキーでは、セッションのリンクとトークンがnullで返されます。詳細は次を参照してください: https://docs.didit.me/console/api-keys
クエリパラメータ
所有するユーザーの現在のvendor_dataに対する大文字・小文字を区別しない部分一致。
所有者であるユーザーとの完全一致です。
ライフサイクルステータス。完全削除されたテンプレートは一覧に表示されません。
pending, active, expired, held_out_of_use, purge_pending, purge_failed テンプレートの作成方法。
session_delete, automatic_retention, backfill この日時以降に保持されたテンプレート。
この日時以前に保持されたテンプレート。retained_fromより前の日時は指定できません(400)。
並び順。
retained_at, -retained_at, expires_at, -expires_at ページサイズ。
ページネーションのオフセット。