> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xhuoapi.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 身份證識別及資訊核驗 API 對接說明

> Identity Authentication 集成指南 - XHuoAPI

本文將介紹一種 身份證識別及資訊核驗 API 對接說明，它可以通過輸入身份證圖片 或 姓名和身份證號碼，來校驗姓名和身份證號的真實性和一致性。本接口用於校驗姓名和身份證號的真實性和一致性，您可以通過輸入姓名和身份證號或傳入身份證人像面照片提供所需驗證資訊。

## 申請流程

要使用 API，需要先到 [身份證識別及資訊核驗 API](https://api.xhuoapi.ai/documents/67f96afa-60b8-4cbb-a4bf-0cbfcf139a23) 對應頁面申請對應的服務，進入頁面之後，點擊「Acquire」按鈕，如圖所示：

![](https://cdn.xhuoapi.ai/q6ytrc.png)

如果你尚未登入或註冊，會自動跳轉到登入頁面邀請您來註冊和登入，登入註冊之後會自動返回當前頁面。

在首次申請時會有免費額度贈送，可以免費使用該 API。

## 基本使用

首先先了解下基本的使用方式，就是輸入身份證圖片連結，便可獲得處理後驗證結果，首先需要簡單地傳遞一個 `image_url` 欄位，我們接下來就可以在介面上填寫對應的內容，如圖所示：

<p>
  <img src="https://cdn.xhuoapi.ai/qxy9rh.png" width="500" className="m-auto" />
</p>

可以看到這裡我們設定了 Request Headers，包括：

* `accept`：想要接收怎樣格式的響應結果，這裡填寫為 `application/json`，即 JSON 格式。
* `authorization`：調用 API 的密鑰，申請之後可以直接下拉選擇。

另外設定了 Request Body，包括：

* `image_url`：需要處理的身份證圖片連結。
* `encryption`：可選，敏感欄位加密參數（如需上送密文）。

選擇之後，可以發現右側也生成了對應代碼，如圖所示：

<p>
  <img src="https://cdn.xhuoapi.ai/uw90il.png" width="500" className="m-auto" />
</p>

點擊「Try」按鈕即可進行測試，如上圖所示，這裡我們就得到了如下結果：

```json theme={null}
{
  "result": "0",
  "description": "姓名和身份證號一致",
  "name": "身份證姓名",
  "id_card": "身份證號碼",
  "sex": "身份證性別",
  "nation": "身份證民族",
  "birth": "身份證生日",
  "address": "身份證家庭住址"
}
```

返回結果一共有多個欄位，介紹如下：

* `result `，認證結果碼，收費情況如下。
  * 收費結果碼：
    * 0: 姓名和身份證號一致
    * -1: 姓名和身份證號不一致
  * 不收費結果碼：
    * -2: 非法身份證號（長度、校驗位等不正確）
    * -3: 非法姓名（長度、格式等不正確）
    * -4: 證件庫服務異常
    * -5: 證件庫中無此身份證記錄
    * -6: 權威比對系統升級中，請稍後再試
    * -7: 認證次數超過當日限制。
* `description`，此處姓名與身份證號碼驗證的結果。
* `name`，身份證中的姓名資訊，如果沒有上傳身份證圖片則是空的。
* `id_card`，身份證中的身份證號碼資訊，如果沒有上傳身份證圖片則是空的。
* `sex`，身份證中的性別資訊，如果沒有上傳身份證圖片則是空的。
* `nation`，身份證中的民族資訊，如果沒有上傳身份證圖片則是空的。
* `birth`，身份證中的生日資訊，如果沒有上傳身份證圖片則是空的。
* `address`，身份證中的家庭住址資訊，如果沒有上傳身份證圖片則是空的。

可以看出身份證中姓名與身份證號碼的資訊是一致性並且有效的，同時也使用OCR技術提取了其它的資訊並展示出來。

另外如果想生成對應的對接代碼，可以直接複製生成，例如 CURL 的代碼如下：

```shell theme={null}
curl -X POST 'https://api.xhuoapi.ai/v1/identity/idcard/ocr' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "image_url": {image_url}
}'
```

Python 的對接代碼如下：

```python theme={null}
import requests

url = "https://api.xhuoapi.ai/v1/identity/idcard/ocr"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "image_url": {image_url}
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

## 自定義資訊驗證

我們也提供了一種不洩露身份證圖片資訊的方式來驗證，可以只傳入姓名`name` 和 身份證號碼 `id_card` 來進行校驗姓名和身份證號的真實性和一致性，下面是填的具體資訊：

<p>
  <img src="https://cdn.xhuoapi.ai/mc5bbw.png" width="500" className="m-auto" />
</p>

點擊運行後得到如下結果：

```json theme={null}
{
    "address": "",
    "birth": "",
    "description": "姓名和身份證號一致",
    "id_card": "身份證號碼",
    "name": "身份證姓名",
    "nation": "",
    "result": "0",
    "sex": ""
 }
```

這樣從結果看就不會洩露其它隱私資訊了，這也可以完成校驗姓名和身份證號的真實性和一致性。

## 錯誤處理

在調用 API 時，如果遇到錯誤，API 會返回相應的錯誤代碼和資訊。例如：

* `400 token_mismatched`：Bad request, possibly due to missing or invalid parameters.
* `400 api_not_implemented`：Bad request, possibly due to missing or invalid parameters.
* `401 invalid_token`：Unauthorized, invalid or missing authorization token.
* `429 too_many_requests`：Too many requests, you have exceeded the rate limit.
* `500 api_error`：Internal server error, something went wrong on the server.

### 錯誤響應示例

```json theme={null}
{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "fetch failed"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}
```

## 結論

通過本文檔，您已經了解了如何使用 身份證識別及資訊核驗 API 對輸入的圖片 或 姓名與身份證號碼資訊來進行校驗姓名和身份證號的真實性和一致性。希望本文檔能幫助您更好地對接和使用該 API。如有任何問題，請隨時聯繫我們的技術支持團隊。
