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

# 南アフリカ DHA指紋照合API：ID照合

> 南アフリカ DHA指紋照合：Didit経由で南アフリカの公的データベースを照会。1回$1.28から従量課金、契約不要、最低利用額なし。

提出された指紋画像をDepartment of Home Affairsの指紋登録簿と照合します。Didit はこのサービスを`POST /v3/database-validation/`で提供しています。提出されたデータを公的な情報源と照合し、正規化された照合結果を受け取れます。

## 対応範囲

* **対応範囲：** -
* **国：** 南アフリカ
* **サービスID：** `zaf_dha_fingerprint_match`
* **データドメイン：** 生体情報
* **カテゴリ：** 政府

## 入力

| フィールド | 必須 | 例 |
| - | -: | - |
| `national_id` | はい | `SAMPLE-NID-12345` |
| `right_thumb` | はい | `RIGHT_THUMB_TEMPLATE` |
| `left_thumb` | はい | `LEFT_THUMB_TEMPLATE` |
| `vendor_data` | いいえ | `user-1234` |

* **必須の入力：** `national_id`、`right_thumb`、`left_thumb`
* **任意の入力：** `vendor_data`
* **同意：** 必須
* **ワークフローでの利用：** スタンドアロンAPIのみ
* **対応範囲：** -
* **料金：** 成功したクエリ1件あたり\$1.28

このサービスでは`right_thumb`と`left_thumb`が必要です。これらはワークフローのステップで生成される値ではないため、値を直接指定するスタンドアロンAPIでのみ利用できます。

## ボディパラメーター

**issuing\_state** `string` *required* (default: ZAF)

このデータベースサービスのISO 3166-1 alpha-3国コードです。

例：`ZAF`

**services** `string` *required* (default: zaf\_dha\_fingerprint\_match)

このサービスIDを含む配列です。サービスを固定することで、リクエストの対象をこのデータベースに限定できます。

例：`zaf_dha_fingerprint_match`

**consent** `boolean` *required* (default: true)

このサービスに対するエンドユーザーの明示的な同意です。

例：`true`

**national\_id** `string` *required* (default: SAMPLE-NID-12345)

このサービスで使用する国民識別番号です。

例：`SAMPLE-NID-12345`

**right\_thumb** `string` *required* (default: RIGHT\_THUMB\_TEMPLATE)

このデータベースサービスで必須の`right_thumb`の値です。

例：`RIGHT_THUMB_TEMPLATE`

**left\_thumb** `string` *required* (default: LEFT\_THUMB\_TEMPLATE)

このデータベースサービスで必須の`left_thumb`の値です。

例：`LEFT_THUMB_TEMPLATE`

**vendor\_data** `string` (default: user-1234)

社内のユーザーIDなど、この人物に対して一貫して使用するユーザー参照値です。Didit はこの値を使って、スタンドアロンのチェックを同じエンドユーザーに紐付け、重複検知のノイズを減らします。

例：`user-1234`

## 入力ルールと検証に関する注意事項

* 上記のフィールドは、ユーザーまたは書類から取得したとおりの値で送信してください。
* Didit はデータベースに照会する前に必須フィールドを検証します。情報源への照会前に拒否されたリクエストには課金されません。

## 呼び出し方法

```bash cURL theme={null}
curl -X POST "https://verification.didit.me/v3/database-validation/" \
  -H "x-api-key: YOUR_API_KEY" \
  -F "issuing_state=ZAF" \
  -F "services=zaf_dha_fingerprint_match" \
  -F "vendor_data=user-1234" \
  -F "consent=true" \
  -F "national_id=SAMPLE-NID-12345" \
  -F "right_thumb=RIGHT_THUMB_TEMPLATE" \
  -F "left_thumb=LEFT_THUMB_TEMPLATE"
```

呼び出しが成功すると、常にHTTP `200`が返ります。実際に何が起きたかは **`outcome_code`** フィールドで判断します。たとえば、実際に生体情報が不一致である場合(`BIOMETRIC_NO_MATCH`)と、セルフィーを読み取れなかった場合(`BIOMETRIC_IMAGE_UNUSABLE`)を区別できます。表示される`status`は機能のデフォルトのステータスであり、設定した[部分一致／不一致時のアクション](https://docs.didit.me/ja/core-technology/database-validation/database-validation-warnings.md)によって上書きされる場合があります。

**`MATCH`**：登録簿で本人であることが確認され、チェックしたすべてのフィールドが一致しました。

```json 200 OK — MATCH theme={null}
{
  "request_id": "req_01H…",
  "status": "Approved",
  "issuing_state": "ZAF",
  "match_type": "full_match",
  "validations": [
    {
      "outcome_code": "MATCH",
      "service_id": "zaf_dha_fingerprint_match",
      "service_name": "South Africa - DHA Fingerprint Match",
      "source_data": {
        "identification_number": "SAMPLE-ID-12345"
      },
      "validation": {
        "identification_number": "full_match"
      }
    }
  ]
}
```

**`NO_MATCH`**：提出されたデータに一致する記録が登録簿にありませんでした。

```json 200 OK — NO_MATCH theme={null}
{
  "request_id": "req_01H…",
  "status": "Declined",
  "issuing_state": "ZAF",
  "match_type": "no_match",
  "validations": [
    {
      "outcome_code": "NO_MATCH",
      "service_id": "zaf_dha_fingerprint_match",
      "service_name": "South Africa - DHA Fingerprint Match",
      "source_data": {
        "identification_number": "NO_MATCH"
      },
      "validation": {
        "identification_number": "no_match"
      }
    }
  ]
}
```

## 返されるデータ

`source_data`に含まれるフィールドは、登録簿が返す内容によって異なります。`zaf_dha_fingerprint_match`の生成例では、現在以下の正規化された形式が記載されています。

* `identification_number`

## 料金とSLA

South Africa - DHA Fingerprint Matchのクエリは、Didit が検証元から確定的な結果を受け取った場合にのみ課金されます。

* **1回あたりの料金：** \$1.28 USD。
* **請求：** 成功したクエリ1件ごと。登録簿に接続できない場合、必須フィールドが欠けている場合、またはリクエストが情報源に届く前に拒否された場合は課金されません。
* **レイテンシ：** 通常、p95は2秒未満。
* **可用性：** Didit 側で四半期あたり99.9%。下流の情報源の可用性は国やデータセットによって異なります。

## 関連情報

* [南アフリカのデータベース検証の概要](https://docs.didit.me/api-reference/database-validation/south-africa.md)
* [データベース検証の概要](https://docs.didit.me/ja/core-technology/database-validation/overview.md)
* [結果コード](https://docs.didit.me/ja/core-technology/database-validation/database-validation-outcome-codes.md)


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