メインコンテンツへスキップ

サイレント再検証

PrepareInfo属性
属性必須説明
externalUserIdStringあなたのシステムにおけるユーザー識別子。送信前に SHA-256 で自動的にハッシュ化され、平文で送信されることはありません。
サイレント再検証の開始
ステップ1initializeSDK を実装する

新しい UnicoSDK クラス/オブジェクトを作成し、context と、sdkKeybundleIdenvironment を含む UnicoSDKConfig を受け取って UnicoSDK インスタンスを返す静的な initializeSDK メソッドを実装します。返されたインスタンスは保持してください — 後で Java から startSilentValidation を呼び出す際に必要になります。

アプリ起動時に呼び出す

UnicoSDK.initializeSDK は、アプリ起動時(例: Application.onCreate)にできるだけ早く呼び出す必要があります。呼び出しが遅れると、バックグラウンド処理の時間が短くなり、認証結果が判定不能になる可能性が高まります。

UnicoSDK.initializeSDK(
context,
UnicoSDKConfig(
sdkKey = "your_sdk_key",
bundleId = "your_bundle_id",
environment = Environment.UAT
)
)
ステップ2startSilentValidation を実装する

initializeSDK の後、externalUserId を含む PrepareInfo を指定して startSilentValidation を呼び出すことで、すでに進行中の収集処理を識別済みのユーザーに関連付けます。

val prepareInfo = PrepareInfo(
externalUserId = "external_user_id"
)

UnicoSDK.startSilentValidation(prepareInfo)
.onSuccess { result -> /* ... */ }
.onFailure { error -> /* ... */ }

ログイン時など、フローの開始時点で検証が行われる場合は、ステップ3に進む前に onSuccess コールバックを待ってください。

ステップ3 — プロセスを作成して認証する

検証が進行中の状態で、認証を完了するための検証プロセスを作成します。APIリファレンス ▸ API ▸ プロセスの作成 を参照してください。

ステップ2の PrepareInfo で送信したものと同じ externalUserId をリクエストボディに含めてください — これにより、バックエンドはプロセス作成と、すでに進行中の検証とを関連付けることができます。

curl -X POST https://api.id.unico.app/processes/v1 \
-H "Authorization: Bearer $TOKEN" \
-H "APIKEY: $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"subject": {
"duiType": 1,
"code": "12345678909",
"name": "Luke Skywalker",
"gender": "M",
"birthDate": "2000-05-20",
"email": "[email protected]",
"phone": "5519725570707"
},
"useCase": "Onboarding",
"externalUserId": "external_user_id",
"imageBase64": "/9j/4AAQSkZJR..."
}'

レスポンスには、認証結果を示す silentAuth.result フィールドが含まれます:

{
"id": "80371b2a-3ac7-432e-866d-57fe37896ac6",
"status": 3,
"silentAuth": {
"result": "yes"
}
}
フィールド説明
silentAuth.resultstringyes または no — 可能な値については以下を参照してください。
silentAuth.result — 可能な値
意味
yes認証が承認されました。ユーザーは十分な確度で認識されており、追加のキャプチャは不要です。
noサイレントに承認するにはデータが不十分です。生体認証(セルフィー)またはその他の代替方法による認証を推奨します。