POSTidcard-face-validate
顔写真・身分証照合
氏名、身分証明書、顔写真の3つの要素が一致するかを判定し、ユーザーの本人確認を行います。
導入ドキュメント
氏名、身分証明書、顔写真の3つの要素が一致するかを判定し、ユーザーの本人確認を行います。
実装サンプルコード
Shell、Python、Go、Java、PHP の呼び出し例をまとめ、既存プロジェクトに組み込みやすくしています。
Shell 例
curl --request POST \
--url 'https://openapi.toolkk.com/v1/idcard-face-validate' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: YOUR_API_KEY' \
--data '{\n "name": "张三",\n "idCardNo": "110105199003078887",\n "facePhotoUrl": "https://example.com/face.jpg"\n}'Python 例
import os
import requests
url = "https://openapi.toolkk.com/v1/idcard-face-validate"
payload = {
"name": "张三",
"idCardNo": "110105199003078887",
"facePhotoUrl": "https://example.com/face.jpg"
}
headers = {
"Content-Type": "application/json",
"X-API-Key": os.getenv("TOOLKK_API_KEY", "YOUR_API_KEY"),
}
response = requests.request("POST", url, headers=headers, json=payload, timeout=30)
response.raise_for_status()
print(response.json())Go 例
package main
import (
"bytes"
"fmt"
"io"
"net/http"
)
func main() {
endpoint := "https://openapi.toolkk.com/v1/idcard-face-validate"
payload := []byte("{\n \"name\": \"张三\",\n \"idCardNo\": \"110105199003078887\",\n \"facePhotoUrl\": \"https://example.com/face.jpg\"\n}")
req, err := http.NewRequest("POST", endpoint, bytes.NewBuffer(payload))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("X-API-Key", "YOUR_API_KEY")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println(string(body))
}Java 例
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class ToolkkExample {
public static void main(String[] args) throws Exception {
String payload = "{\n \"name\": \"张三\",\n \"idCardNo\": \"110105199003078887\",\n \"facePhotoUrl\": \"https://example.com/face.jpg\"\n}";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://openapi.toolkk.com/v1/idcard-face-validate"))
.method("POST", HttpRequest.BodyPublishers.ofString(payload))
.header("Content-Type", "application/json")
.header("X-API-Key", "YOUR_API_KEY")
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}PHP 例
<?php
$endpoint = 'https://openapi.toolkk.com/v1/idcard-face-validate';
$payload = "{\n \"name\": \"张三\",\n \"idCardNo\": \"110105199003078887\",\n \"facePhotoUrl\": \"https://example.com/face.jpg\"\n}";
$ch = curl_init($endpoint);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'X-API-Key: YOUR_API_KEY',
],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($ch);
if ($response === false) {
throw new RuntimeException(curl_error($ch));
}
curl_close($ch);
echo $response;リクエスト例
{
"name": "张三",
"idCardNo": "110105199003078887",
"facePhotoUrl": "https://example.com/face.jpg"
}レスポンス例
{
"code": "SUCCESS",
"message": "success",
"data": {
"result": "一致",
"similarity": 0.92,
"threshold": 0.7
}
}リクエスト項目
以下の項目はサンプル JSON から自動抽出した参考情報です。
| パス | 型 | サンプル値 |
|---|---|---|
| name | string | 张三 |
| idCardNo | string | 110105199003078887 |
| facePhotoUrl | string | https://example.com/face.jpg |
レスポンス項目
以下の項目はサンプル JSON から自動抽出した参考情報です。
| パス | 型 | サンプル値 |
|---|---|---|
| code | string | SUCCESS |
| message | string | success |
| data | object | {...} |
| data.result | string | 一致 |
| data.similarity | number | 0.92 |
| data.threshold | number | 0.7 |