# 获取流程表单数据

根据流程实例 id（process_id）获取流程表单字段数据，包括表单里的业务字段和自定义字段。仅支持飞书人事、假勤相关业务流程。

注：[旧版 API](https://open.larkoffice.com/document/server-docs/corehr-v1/process-form_variable_data/get) 文档已移动到【历史版本】目录。

## 请求

基本 | &nbsp;
---|---
HTTP URL | https://open.feishu.cn/open-apis/corehr/v2/processes/:process_id/form_variable_data
HTTP Method | GET
接口频率限制 | [100 次/分钟](https://open.feishu.cn/document/ukTMukTMukTM/uUzN04SN3QjL1cDN)
支持的应用类型 | Custom App、Store App
权限要求<br>**调用该 API 所需的权限。开启其中任意一项权限即可调用** | 获取流程数据(corehr:process:read)
字段权限要求 | **注意事项**：该接口返回体中存在下列敏感字段，仅当开启对应的权限后才会返回；如果无需获取这些字段，则不建议申请<br>获取用户 user ID(contact:user.employee_id:readonly)

### 请求头

名称 | 类型 | 必填 | 描述
---|---|---|---
Authorization | string | 是 | `tenant_access_token`<br>**值格式**："Bearer `access_token`"<br>**示例值**："Bearer t-7f1bcd13fc57d46bac21793a18e560"<br>[了解更多：如何选择与获取 access token](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-choose-which-type-of-token-to-use)

### 路径参数

名称 | 类型 | 描述
---|---|---
process_id | string | 流程实例id，是一个流程的唯一标识。<br>可通过[查询流程实例列表](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/process/list)接口返回的 process_ids 字段获取<br>**示例值**："7341373094948242956"

### 查询参数

名称 | 类型 | 必填 | 描述
---|---|---|---
user_id_type | string | 否 | 用户 ID 类型<br>**示例值**：people_corehr_id<br>**可选值有**：<br>- open_id：标识一个用户在某个应用中的身份。同一个用户在不同应用中的 Open ID 不同。[了解更多：如何获取 Open ID](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-openid)<br>- union_id：标识一个用户在某个应用开发商下的身份。同一用户在同一开发商下的应用中的 Union ID 是相同的，在不同开发商下的应用中的 Union ID 是不同的。通过 Union ID，应用开发商可以把同个用户在多个应用中的身份关联起来。[了解更多：如何获取 Union ID？](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-union-id)<br>- user_id：标识一个用户在某个租户内的身份。同一个用户在租户 A 和租户 B 内的 User ID 是不同的。在同一个租户内，一个用户的 User ID 在所有应用（包括商店应用）中都保持一致。User ID 主要用于在不同的应用间打通用户数据。[了解更多：如何获取 User ID？](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-user-id)<br>- people_corehr_id：以飞书人事的 ID 来识别用户<br>**默认值**：`people_corehr_id`<br>**当值为 `user_id`，字段权限要求**：<br>获取用户 user ID(contact:user.employee_id:readonly)
department_id_type | string | 否 | 此次调用中使用的部门 ID 类型<br>**示例值**：people_corehr_department_id<br>**可选值有**：<br>- open_department_id：以 open_department_id 来标识部门<br>- department_id：以 department_id 来标识部门<br>- people_corehr_department_id：以 people_corehr_department_id 来标识部门<br>**默认值**：`people_corehr_department_id`

## 响应

### 响应体

名称 | 类型 | 描述
---|---|---
code | int | 错误码，非 0 表示失败
msg | string | 错误描述
data | \- | \-
field_variable_values | field_variable_value\[\] | 表单数据
variable_api_name | string | 变量唯一标识
variable_name | field_variable_value_i18n | 变量名称
zh_cn | string | 中文值
en_us | string | 英文值
variable_value | field_variable_value_to | 变量值
text_value | string | 文本值
bool_value | boolean | 布尔值
number_value | string | 数字值
enum_value | string | 枚举值，这里是枚举的 id
date_value | string | 日期值，单位：天。从 1970 年 1 月 1 日 (UTC/GMT的午夜) 开始经过的天数<br>**示例值**：19688
date_time_value | string | 时间值，单位：ms。从 1970 年 1 月 1 日 (UTC/GMT的午夜) 开始经过的毫秒数<br>**示例值**：1719549169735
i18n_value | field_variable_value_i18n | 多语字段值
zh_cn | string | 中文值
en_us | string | 英文值
object_value | field_variable_value_to_object | 对象值
wk_id | string | 飞书人事主数据对象唯一标识。<br>例如：<br>wk_api_name为"job"时，wk_id代表职务ID。详请可参考[查询单个职务（V2）](https://open.larkoffice.com/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/job/get)<br>wk_api_name为"job_level"时，wk_id代表职级ID。详情可参考[查询单个职级](https://open.larkoffice.com/document/server-docs/corehr-v1/job-management/job_level/get)
wk_api_name | string | 飞书人事元数据对象的唯一标识。<br>例如：<br>职务的wk_api_name为"job"；职级的wk_api_name为"job_level"；<br>如需获取更多对象信息，可查询[获取飞书人事对象列表](https://open.larkoffice.com/document/server-docs/corehr-v1/basic-infomation/custom_field/list_object_api_name)接口
user_value | string | 用户 id，根据查询参数 user_id_type 选择对应的用户 id
department_value | string | 部门id，根据查询参数department_id_type类型选择对应的部门id。<br>可通过[搜索部门信息](https://open.larkoffice.com/document/server-docs/corehr-v1/organization-management/department/search) 或 [批量查询部门（ V2）](https://open.larkoffice.com/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/department/batch_get)接口查询详情。
record_values | field_variable_value_to_record\[\] | 记录类型字段值
variable_api_name | string | 变量唯一标识
sub_value_key | string | 变量值，对应subValues中的key
record_id | string | 记录唯一ID
employment_value | string | 员工类型字段值，为用户id，根据入参选择的user_id_type类型返回的用户id。<br>可通过[搜索员工信息](https://open.larkoffice.com/document/server-docs/corehr-v1/employee/search) 或 [批量查询员工信息](https://open.larkoffice.com/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/employee/batch_get)接口查询详情。
list_values | string\[\] | 数组类型值，里面包含多个值，每个元素都对应 sub_values 中的数组下标
file_value | field_variable_value_to_file | 文件类型字段值，可通过主数据的[文件下载Open API](https://open.larkoffice.com/document/server-docs/corehr-v1/employee/person/get-2)下载
open_file_id | string | 用于主数据[文件下载Open API](https://open.larkoffice.com/document/server-docs/corehr-v1/employee/person/get-2)下载接口的入参id
file_name | string | 文件名称
length | int | 文件大小，单位：Byte
mime_type | string | 文件类型，如`application/pdf`
sub_values | field_variable_sub_vlaue\[\] | 在 list_values 和 record_values 中引用的变量
key | string | 用于关联 list 和 record 类型变量值中的 key
value | field_variable_value_to | 变量值
text_value | string | 文本值
bool_value | boolean | 布尔值
number_value | string | 数字值
enum_value | string | 枚举值，这里是枚举的 id
date_value | string | 日期值，单位：天。从 1970 年 1 月 1 日 (UTC/GMT的午夜) 开始经过的天数
date_time_value | string | 时间值，单位：ms。从 1970 年 1 月 1 日 (UTC/GMT的午夜) 开始经过的毫秒数<br>**示例值**：1719549169735
i18n_value | field_variable_value_i18n | 多语字段值
zh_cn | string | 中文值
en_us | string | 英文值
object_value | field_variable_value_to_object | 对象值
wk_id | string | 飞书人事主数据对象唯一标识。<br>例如：<br>wk_api_name为"job"时，wk_id代表职务ID。详请可参考[查询单个职务（V2）](https://open.larkoffice.com/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/job/get)<br>wk_api_name为"job_level"时，wk_id代表职级ID。详情可参考[查询单个职级](https://open.larkoffice.com/document/server-docs/corehr-v1/job-management/job_level/get)
wk_api_name | string | 飞书人事元数据对象的唯一标识。<br>例如：<br>职务的wk_api_name为"job"；职级的wk_api_name为"job_level"；<br>如需获取更多对象信息，可查询[获取飞书人事对象列表](https://open.larkoffice.com/document/server-docs/corehr-v1/basic-infomation/custom_field/list_object_api_name)接口
user_value | string | 用户 id，根据查询参数 user_id_type 选择对应的用户 id
department_value | string | 部门id，根据查询参数department_id_type类型选择对应的部门id。<br>可通过[搜索部门信息](https://open.larkoffice.com/document/server-docs/corehr-v1/organization-management/department/search) 或 [批量查询部门（ V2）](https://open.larkoffice.com/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/department/batch_get)接口查询详情。
record_values | field_variable_value_to_record\[\] | 记录类型字段值
variable_api_name | string | 变量唯一标识
sub_value_key | string | 变量值，对应subValues中的key
record_id | string | 记录唯一ID
employment_value | string | 员工类型字段值，为用户id，根据入参选择的user_id_type类型返回的用户id。<br>可通过[搜索员工信息](https://open.larkoffice.com/document/server-docs/corehr-v1/employee/search) 或 [批量查询员工信息](https://open.larkoffice.com/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/employee/batch_get)接口查询详情。
list_values | string\[\] | 数组类型值，里面包含多个值，每个元素都对应 sub_values 中的数组下标
file_value | field_variable_value_to_file | 文件类型字段值，可通过主数据的[文件下载Open API](https://open.larkoffice.com/document/server-docs/corehr-v1/employee/person/get-2)下载
open_file_id | string | 用于主数据[文件下载Open API](https://open.larkoffice.com/document/server-docs/corehr-v1/employee/person/get-2)接口的id
file_name | string | 文件名称
length | int | 文件大小，单位：Byte
mime_type | string | 文件类型，如`application/pdf`
process_id | string | 流程实例id

### 响应体示例
```json
{
    "code": 0,
    "msg": "success",
    "data": {
        "field_variable_values": [
            {
                "variable_api_name": "custom123",
                "variable_name": {
                    "zh_cn": "北京",
                    "en_us": "Beijing"
                },
                "variable_value": {
                    "text_value": "测试测试",
                    "bool_value": true,
                    "number_value": "100",
                    "enum_value": "home_address",
                    "date_value": "19838",
                    "date_time_value": "1714013877512",
                    "i18n_value": {
                        "zh_cn": "北京",
                        "en_us": "Beijing"
                    },
                    "object_value": {
                        "wk_id": "6863326263210149383",
                        "wk_api_name": "country_region_subdivision"
                    },
                    "user_value": "ou_c57053dad6eea0aea4696c48433d8562",
                    "department_value": "od-a761814f6bc3f14bd3b00905ec1d7c6f",
                    "record_values": [
                        {
                            "variable_api_name": "city_v2",
                            "sub_value_key": "key1",
                            "record_id": "6863326263210149383"
                        }
                    ],
                    "employment_value": "ou_c57053dad6eea0aea4696c48433d8562",
                    "list_values": [
                        "key1"
                    ],
                    "file_value": {
                        "open_file_id": "66867ed00740ddd4a0bad4a5_c99b5322dc744fe4b99b76426ffe5d53",
                        "file_name": "file_name",
                        "length": 65535,
                        "mime_type": "application/pdf"
                    }
                },
                "sub_values": [
                    {
                        "key": "key1",
                        "value": {
                            "text_value": "测试测试",
                            "bool_value": true,
                            "number_value": "100",
                            "enum_value": "home_address",
                            "date_value": "19838",
                            "date_time_value": "1714013877512",
                            "i18n_value": {
                                "zh_cn": "北京",
                                "en_us": "Beijing"
                            },
                            "object_value": {
                                "wk_id": "6863326263210149383",
                                "wk_api_name": "country_region_subdivision"
                            },
                            "user_value": "ou_c57053dad6eea0aea4696c48433d8562",
                            "department_value": "od-a761814f6bc3f14bd3b00905ec1d7c6f",
                            "record_values": [
                                {
                                    "variable_api_name": "city_v2",
                                    "sub_value_key": "key1",
                                    "record_id": "6863326263210149383"
                                }
                            ],
                            "employment_value": "ou_c57053dad6eea0aea4696c48433d8562",
                            "list_values": [
                                "key1"
                            ],
                            "file_value": {
                                "open_file_id": "66867ed00740ddd4a0bad4a5_c99b5322dc744fe4b99b76426ffe5d53",
                                "file_name": "file_name",
                                "length": 65535,
                                "mime_type": "application/pdf"
                            }
                        }
                    }
                ]
            }
        ],
        "process_id": "7368832822481536556"
    }
}
```

### 错误码

HTTP状态码 | 错误码 | 描述 | 排查建议
---|---|---|---
400 | 1160100 | 审批流程不存在 | 确认审批流程ID是否存在
500 | 1160500 | 服务端内部错误 | 系统异常，请咨询[技术支持](https://applink.feishu.cn/TLJpeNdW)协助排查。
400 | 1160101 | 参数非法 | 参数错误，请操作接口字段说明自查
500 | 1160102 | 系统内部异常 | 系统内部异常，请咨询[技术支持](https://applink.feishu.cn/TLJpeNdW)协助排查。
403 | 1161003 | 无权限 | 请确认是否已申请所需权限：「获取流程数据」

