---
title: 获取流程
description: 通过流程 ID 获取 Human Token 流程及其 humanToken — 在 Human Token Journey 之后，或再次查询 API Only 的结果。
canonical: https://developer.unico.io/zh-CN/human-token/api-reference/get-process
locale: zh-CN
generated_by: markdown-export
---

- [/zh-CN/](/zh-CN/)
- API 参考
- 获取流程

**本页内容获取流程GET通过标识符获取 Human Token 流程 — 在用户从 Human Token Journey 返回后，或再次查询 API Only 的结果。

### 端点​

环境URL**生产环境**`GET https://humantoken.unico.app/client/v1/process/{processId}`
### 请求​

请求头
Header值`x-unico-accesskey``<your_access_key>`（参见[身份验证](/zh-CN/human-token/get-started/authentication)）
路径参数
参数类型必填描述`processId`string (UUID)是由[创建流程](/zh-CN/human-token/api-reference/post-processes)返回的流程标识符。
### 示例​

cURLNode.js```
curl -X GET https://humantoken.unico.app/client/v1/process/$PROCESS_ID \  -H "x-unico-accesskey: $UNICO_ACCESS_KEY"
```

```
import fetch from 'node-fetch';const res = await fetch(  `https://humantoken.unico.app/client/v1/process/${processId}`,  { headers: { 'x-unico-accesskey': process.env.UNICO_ACCESS_KEY } });const result = await res.json();// result.data.humanToken.value
```

### 响应​

200 OK
响应的格式与[创建流程](/zh-CN/human-token/api-reference/post-processes#responses)相同。`data` 的结构取决于创建流程时使用的流。
**标准流**（`api+humantoken`、`api+liveness+humantoken`、`humantoken`）：
```
{  "id": "6ed74799-4c2f-4023-b43f-a73cf7c847b2",  "state": "PROCESS_STATE_FINISHED",  "data": {    "humanToken": {      "value": "3f9a1c7e5b2d4086a1e3c5f7092b4d6e8a0c2e4f6183a5c7e9b1d3f5072a4c6e",      "status": "validated"    }  }}
```

**重新验证流**（`api+liveness+humantoken+revalidation`、`humantoken+revalidation`）：
```
{  "id": "cb0472c0-6dbc-46c6-b830-2be7edc35424",  "state": "PROCESS_STATE_FINISHED",  "data": {    "humanTokenMatch": "true"  }}
```

字段类型描述`id`string (UUID)流程标识符。`state`string流程状态 — 参见 [`state` 取值](#state-values)。`data.​humanToken.​value`string仅标准流。人脸的稳定、不透明标识符（最多 100 个字符）。同一个人始终解析为相同的值。`data.​humanTokenMatch`string仅重新验证流。如果自拍与引用的 `humanToken` 匹配则为 `"true"`，否则为 `"false"`。
state 取值
值含义`PROCESS_STATE_UNSPECIFIED`未设置状态。`PROCESS_STATE_CREATED`流程已创建，仍可接受新的会话。`data` 为 `{}`。`PROCESS_STATE_FINISHED`流程已完成，不再接受新的会话。对于标准流，生成了 Human Token 时包含 `data.humanToken`；对于重新验证流，`data.humanTokenMatch` 指示自拍是否与引用的令牌匹配。否则 `data` 为 `{}`。`PROCESS_STATE_FAILED`流程失败。`data` 为 `{}`。`PROCESS_STATE_CANCELED`流程已取消。`data` 为 `{}`。`PROCESS_STATE_AWAITING_FOR_DOCUMENT`流程正在等待身份证件。`data` 为 `{}`。
警告使用 `data.humanToken.value` 之前，请务必确认其不为空。
### 错误代码​

400 Bad Request401 Unauthorized404 Not Found429 Too Many Requests500 Internal Server Error代码消息描述`3`process id is invalid流程 ID 无效时。`x-unico-accesskey` 请求头中的访问密钥缺失或无效。参见[身份验证](/zh-CN/human-token/get-started/authentication)。代码消息描述`5`error getting process: rpc error: code = NotFound desc = process not found未找到该流程 ID 时。已达到速率限制。当您的系统收到 HTTP 429 错误时，必须实施机制以防止级联故障并避免加重限制。
**最佳实践：**

**冷却期（backoff）：** 立即停止或限制系统的后续请求。不要在紧密循环中持续重试失败的请求。
**排队与限流（Queueing & throttling）：** 在您的一侧缓冲或排队传出请求，以便在重新发送之前控制流量。
**带抖动的指数退避（Exponential backoff with jitter）：** 重试时，在尝试之间以指数方式增加等待时间（例如，1秒、2秒、4秒、8秒），并添加一个小的随机延迟（"抖动"），以防止所有排队请求在完全相同的毫秒重试的羊群效应。

警告在未应用退避的情况下持续请求受速率限制的端点，可能会**延长限制期**并严重影响系统的运行吞吐量。在您的一侧正确限流请求可确保更顺畅、更具弹性的集成。
有关默认限制、增加请求及其他详细信息，请参阅[速率限制](/zh-CN/developers/start/rate-limits)。代码消息描述`99999`Internal failure! Try again later发生内部错误时。
### 后续步骤​

返回[创建流程](/zh-CN/human-token/api-reference/post-processes)以发送新的自拍。
要了解 `humanToken` 代表什么以及在何种情况下不会生成，请参见 [Human Token 概览](/zh-CN/human-token/)。
最后更新 于 2026年10月22日**