发起员工异动(不推荐)
该接口用于发起员工异动(变更员工雇佣信息),若发起成功,会生成一条员工的异动数据,同时产生相应的事件:异动状态变更事件
Error: 本事件不再推荐使用,请使用新版本发起员工异动
请求
| 项目 | 值 |
|---|---|
| HTTP URL | https://open.feishu.cn/open-apis/corehr/v1/job_changes |
| HTTP Method | POST |
| 接口频率限制 | 100 次/分钟 |
| 支持的应用类型 | custom |
| 权限要求 调用该 API 所需的权限。开启其中任意一项权限即可调用 开启任一权限即可 | corehr:corehr 更新核心人事信息 corehr:job_change:write 读写员工异动信息 |
| 字段权限要求 | > Tip: 该接口返回体中存在下列敏感字段,仅当开启对应的权限后才会返回;如果无需获取这些字段,则不建议申请 corehr:job_change.employment_custom_field:read 获取异动工作信息自定义字段 contact:user.employee_id:readonly 获取用户 user ID corehr:job_data.compensation_type:read 获取薪资类型 corehr:job_data.service_company:read 获取任职公司 |
请求头
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| Authorization | string | 是 | tenant_access_token 值格式:"Bearer access_token" 示例值:"Bearer t-7f1bcd13fc57d46bac21793a18e560" 了解更多:如何选择与获取 access token |
| Content-Type | string | 是 | 固定值:"application/json; charset=utf-8" |
查询参数
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
user_id_type | string | 否 | 用户 ID 类型 示例值:open_id 可选值有: - open_id: 标识一个用户在某个应用中的身份。同一个用户在不同应用中的 Open ID 不同。了解更多:如何获取 Open ID - union_id: 标识一个用户在某个应用开发商下的身份。同一用户在同一开发商下的应用中的 Union ID 是相同的,在不同开发商下的应用中的 Union ID 是不同的。通过 Union ID,应用开发商可以把同个用户在多个应用中的身份关联起来。了解更多:如何获取 Union ID? - user_id: 标识一个用户在某个租户内的身份。同一个用户在租户 A 和租户 B 内的 User ID 是不同的。在同一个租户内,一个用户的 User ID 在所有应用(包括商店应用)中都保持一致。User ID 主要用于在不同的应用间打通用户数据。了解更多:如何获取 User ID? - people_admin_id: 以people_admin_id来识别用户 - people_corehr_id: 以飞书人事的ID来识别用户默认值: open_id当值为 user_id,字段权限要求: contact:user.employee_id:readonly 获取用户 user ID |
department_id_type | string | 否 | 此次调用中使用的部门 ID 类型 示例值:people_corehr_department_id 可选值有: - open_department_id: 以 open_department_id 来标识部门 - department_id: 以 department_id 来标识部门 - people_corehr_department_id: 以 people_corehr_department_id 来标识部门默认值: people_corehr_department_id |
请求体
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
transfer_mode | int | 是 | 异动方式 示例值:2 可选值有: - 1: 直接异动(无审批) - 2: 正常异动(完整流程) |
employment_id | string | 是 | 雇员ID,ID 类型与查询参数 user_id_type 的取值一致。 - 当user_id_type=user_id时,该字段取员工的user_id,取值参考user_id_type部分。 - 当user_id_type=people_corehr_id时,则取该员工的人事雇佣ID,可从雇佣ID接口获取。 示例值:"ou_a294793e8fa21529f2a60e3e9de45520" |
transfer_type_unique_identifier | string | 是 | 异动类型唯一标识,不支持仅在特殊场景使用的异动类型,如组织架构调整、职责转交和试用期转正。可通过接口获取异动类型列表获取 示例值:"internal_transfer" |
flow_id | string | 否 | 关联流程唯一标识符,可通过接口获取异动类型列表获取 注意:当异动方式为2时,该字段为必填 示例值:"people_6963913041981490725_6983885526583627531" |
effective_date | string | 是 | 生效日期,格式:"YYYY-MM-DD" 示例值:"2022-03-01" |
transfer_info | transfer_info | 是 | 异动详细信息,以下参数如不传,无默认值,代表对应数据无异动 |
└ remark | string | 否 | 备注 示例值:"异动详情" |
└ offer_info | string | 否 | offer信息 注:本字段仅会存储到数据库,前端表单不支持直接显示。 示例值:"offer info" |
└ target_dotted_manager_clean | boolean | 否 | 是否撤销虚线上级 示例值:true |
└ probation_exist | boolean | 否 | 是否有试用期 示例值:false |
└ original_department | string | 否 | 原部门ID,可通过【批量查询部门】接口获取 示例值:"6966236933198579208" |
└ target_department | string | 否 | 新部门ID,可通过【批量查询部门】接口获取 示例值:"6966236933198579208" |
└ original_work_location | string | 否 | 原工作地点,可通过【批量查询地点】接口获取 示例值:"6967271100992587295" |
└ target_work_location | string | 否 | 新工作地点,可通过【批量查询地点】接口获取 示例值:"6967271100992587295" |
└ original_direct_manager | string | 否 | 原直属上级,可通过【搜索员工信息】接口获取 示例值:"6974641477444060708" |
└ target_direct_manager | string | 否 | 新直属上级,可通过【搜索员工信息】接口获取 示例值:"7013619729281713671" |
└ original_dotted_manager | string | 否 | 原虚线上级,可通过【搜索员工信息】接口获取 示例值:"6974648866876573198" |
└ target_dotted_manager | string | 否 | 新虚线上级,可通过【搜索员工信息】接口获取 示例值:"7013328578351842852" |
└ original_job | string | 否 | 原职务, 可通过【批量查询职务】接口获取 示例值:"6969469398088287751" |
└ target_job | string | 否 | 新职务, 可通过【批量查询职务】接口获取 示例值:"6969469557836760606" |
└ original_job_family | string | 否 | 原序列ID,可通过【批量查询序列】接口获取 示例值:"6967287547462419975" |
└ target_job_family | string | 否 | 新序列ID,可通过【批量查询序列】接口获取 示例值:"6967287547462419975" |
└ original_job_level | string | 否 | 原职级ID, 可通过【批量查询职级】接口获取 示例值:"6972085707674355214" |
└ target_job_level | string | 否 | 新职级ID, 可通过【批量查询职级】接口获取 示例值:"6972085707674355214" |
└ original_workforce_type | string | 否 | 原人员类型,可通过【批量查询人员类型】接口获取 示例值:"6968386026792289828" |
└ target_workforce_type | string | 否 | 新人员类型,可通过【批量查询人员类型】接口获取 示例值:"7036268995372303885" |
└ original_employee_subtype | string | 否 | 原人员子类型 示例值:"6968386026792289828" |
└ target_employee_subtype | string | 否 | 新人员子类型 示例值:"7036268995372303885" |
└ original_company | string | 否 | 原公司,详细信息可通过【批量查询公司】接口查询获得 示例值:"6974659700705068581" |
└ target_company | string | 否 | 新公司,详细信息可通过【批量查询公司】接口查询获得 示例值:"6974659700705068581" |
└ original_contract_number | string | 否 | 原合同编号,可通过【批量查询合同】接口获取详细信息 示例值:"55332" |
└ target_contract_number | string | 否 | 新合同编号,可通过【批量查询合同】接口获取详细信息 示例值:"55333" |
└ original_contract_type | string | 否 | 原合同类型,可通过【批量查询合同】接口获取详细信息 示例值:"labor_contract" |
└ target_contract_type | string | 否 | 新合同类型,可通过【批量查询合同】接口获取详细信息 示例值:"labor_contract" |
└ original_duration_type | string | 否 | 原期限类型,可通过【批量查询合同】接口获取详细信息 示例值:"fixed_term" |
└ target_duration_type | string | 否 | 新期限类型,可通过【批量查询合同】接口获取详细信息 示例值:"fixed_term" |
└ original_signing_type | string | 否 | 原签订类型,可通过【批量查询合同】接口获取详细信息 示例值:"new" |
└ target_signing_type | string | 否 | 新签订类型,可通过【批量查询合同】接口获取详细信息 示例值:"new" |
└ original_contract_start_date | string | 否 | 原合同开始日期,格式:"YYYY-MM-DD" 示例值:"2021-07-01" |
└ target_contract_start_date | string | 否 | 新合同开始日期,格式:"YYYY-MM-DD" 示例值:"2021-07-01" |
└ original_contract_end_date | string | 否 | 原合同结束日期,格式:"YYYY-MM-DD" 示例值:"2024-07-01" |
└ target_contract_end_date | string | 否 | 新合同结束日期,格式:"YYYY-MM-DD" 示例值:"2024-07-01" |
└ original_working_hours_type | string | 否 | 原工时制度,可通过【批量查询工时制度】接口获取 示例值:"6969087376740206087" |
└ target_working_hours_type | string | 否 | 新工时制度,可通过【批量查询工时制度】接口获取 示例值:"6969087376740206087" |
└ original_working_calendar | string | 否 | 原工作日历,请开通休假服务后联系管理员获取工作日历数据 示例值:"6969087376740236087" |
└ target_working_calendar | string | 否 | 新工作日历,请开通休假服务后联系管理员获取工作日历数据 示例值:"6969087376740236087" |
└ original_probation_end_date | string | 否 | 原试用期预计结束日期,格式:"YYYY-MM-DD" 示例值:"2021-11-17" |
└ target_probation_end_date | string | 否 | 新试用期预计结束日期,格式:"YYYY-MM-DD" 示例值:"2021-11-17" |
└ original_weekly_working_hours | string | 否 | 原周工作时长 示例值:"162" |
└ target_weekly_working_hours | string | 否 | 新周工作时长 示例值:"160" |
└ original_work_shift | string | 否 | 原排班 示例值:"work_shift" |
└ target_work_shift | string | 否 | 新排班 示例值:"non_work_shift" |
└ original_cost_center_rate | support_cost_center_item\[\] | 否 | 原成本中心分摊信息 |
└ cost_center_id | string | 否 | 支持的成本中心id,详细信息可通过【搜索成本中心信息】接口查询获得 示例值:"6950635856373745165" |
└ rate | int | 否 | 分摊比例 示例值:100 |
└ target_cost_center_rate | support_cost_center_item\[\] | 否 | 新成本中心分摊信息 |
└ cost_center_id | string | 否 | 支持的成本中心id,详细信息可通过【搜索成本中心信息】接口查询获得 示例值:"6950635856373745165" |
└ rate | int | 否 | 分摊比例 示例值:100 |
└ original_employment_change | tranfer_employment_info | 否 | 原工作信息 |
└ regular_employee_start_date | string | 否 | 转正式员工日期,格式:"YYYY-MM-DD" 示例值:"2023-01-01" |
└ seniority_date | string | 否 | 司龄起算日期,格式:"YYYY-MM-DD" 示例值:"2023-01-01" |
└ employee_number | string | 否 | 员工编号,可通过【搜索员工信息】接口获取 示例值:"1111111" |
└ custom_fields | custom_field_data\[\] | 否 | 自定义字段 |
└ custom_api_name | string | 是 | 自定义字段 apiname,即自定义字段的唯一标识。可以通过获取自定义字段列表获取 示例值:"name" |
└ value | string | 是 | 字段值,是 json 转义后的字符串,根据元数据定义不同,字段格式不同(如 123, 123.23, "true", ["id1","id2"], "2006-01-02 15:04:05") 注意: 1.枚举字段值可通过获取字段详情获取,参考接口返回的 字段详情 > 字段类型配置信息 > 选项配置信息 > 选项信息 > 枚举常量集 API name 示例值:"231" |
└ target_employment_change | tranfer_employment_info | 否 | 新工作信息 |
└ regular_employee_start_date | string | 否 | 转正式员工日期,格式:"YYYY-MM-DD" 示例值:"2023-01-01" |
└ seniority_date | string | 否 | 司龄起算日期,格式:"YYYY-MM-DD" 示例值:"2023-01-01" |
└ employee_number | string | 否 | 员工编号,可通过【搜索员工信息】接口获取 示例值:"1111111" |
└ custom_fields | custom_field_data\[\] | 否 | 自定义字段 |
└ custom_api_name | string | 是 | 自定义字段 apiname,即自定义字段的唯一标识。可以通过获取自定义字段列表获取 示例值:"name" |
└ value | string | 是 | 字段值,是 json 转义后的字符串,根据元数据定义不同,字段格式不同(如 123, 123.23, "true", ["id1","id2"], "2006-01-02 15:04:05") 注意: 1.枚举字段值可通过获取字段详情获取,参考接口返回的 字段详情 > 字段类型配置信息 > 选项配置信息 > 选项信息 > 枚举常量集 API name 示例值:"231" |
└ original_job_grade | string | 否 | 原职等,可通过【查询职等】接口获取 示例值:"7289005963599693366" |
└ target_job_grade | string | 否 | 新职等,可通过【查询职等】接口获取 示例值:"7289005963599693366" |
└ original_compensation_type | string | 否 | 原薪资类型 示例值:"hourly" |
└ target_compensation_type | string | 否 | 新薪资类型 示例值:"salary" |
└ original_service_company | string | 否 | 原任职公司,详细信息可通过【批量查询公司】接口查询获得 示例值:"7289005963599693367" |
└ target_service_company | string | 否 | 新任职公司,详细信息可通过【批量查询公司】接口查询获得 示例值:"7289005963599693367" |
└ original_position | string | 否 | 原岗位 示例值:"7289005963599693367" |
└ target_position | string | 否 | 新岗位 示例值:"7289005963599693367" |
transfer_key | string | 否 | 发起异动幂等标志,发起失败可以重新用此标志继续请求 示例值:"transfer_3627531" |
initiator_id | string | 否 | 异动发起人 ID,可通过【搜索员工信息】接口获取 示例值:"ou_a294793e8fa21529f2a60e3e9de45520" |
请求体示例
json
{
"transfer_mode": 2,
"employment_id": "ou_a294793e8fa21529f2a60e3e9de45520",
"transfer_type_unique_identifier": "internal_transfer",
"flow_id": "people_6963913041981490725_6983885526583627531",
"effective_date": "2022-03-01",
"transfer_info": {
"remark": "异动详情",
"offer_info": "offer info",
"target_dotted_manager_clean": true,
"probation_exist": false,
"original_department": "6966236933198579208",
"target_department": "6966236933198579208",
"original_work_location": "6967271100992587295",
"target_work_location": "6967271100992587295",
"original_direct_manager": "6974641477444060708",
"target_direct_manager": "7013619729281713671",
"original_dotted_manager": "6974648866876573198",
"target_dotted_manager": "7013328578351842852",
"original_job": "6969469398088287751",
"target_job": "6969469557836760606",
"original_job_family": "6967287547462419975",
"target_job_family": "6967287547462419975",
"original_job_level": "6972085707674355214",
"target_job_level": "6972085707674355214",
"original_workforce_type": "6968386026792289828",
"target_workforce_type": "7036268995372303885",
"original_employee_subtype": "6968386026792289828",
"target_employee_subtype": "7036268995372303885",
"original_company": "6974659700705068581",
"target_company": "6974659700705068581",
"original_contract_number": "55332",
"target_contract_number": "55333",
"original_contract_type": "labor_contract",
"target_contract_type": "labor_contract",
"original_duration_type": "fixed_term",
"target_duration_type": "fixed_term",
"original_signing_type": "new",
"target_signing_type": "new",
"original_contract_start_date": "2021-07-01",
"target_contract_start_date": "2021-07-01",
"original_contract_end_date": "2024-07-01",
"target_contract_end_date": "2024-07-01",
"original_working_hours_type": "6969087376740206087",
"target_working_hours_type": "6969087376740206087",
"original_working_calendar": "6969087376740236087",
"target_working_calendar": "6969087376740236087",
"original_probation_end_date": "2021-11-17",
"target_probation_end_date": "2021-11-17",
"original_weekly_working_hours": "162",
"target_weekly_working_hours": "160",
"original_work_shift": "work_shift",
"target_work_shift": "non_work_shift",
"original_cost_center_rate": [
{
"cost_center_id": "6950635856373745165",
"rate": 100
}
],
"target_cost_center_rate": [
{
"cost_center_id": "6950635856373745165",
"rate": 100
}
],
"original_employment_change": {
"regular_employee_start_date": "2023-01-01",
"seniority_date": "2023-01-01",
"employee_number": "1111111",
"custom_fields": [
{
"custom_api_name": "name",
"value": "231"
}
]
},
"target_employment_change": {
"regular_employee_start_date": "2023-01-01",
"seniority_date": "2023-01-01",
"employee_number": "1111111",
"custom_fields": [
{
"custom_api_name": "name",
"value": "231"
}
]
},
"original_job_grade": "7289005963599693366",
"target_job_grade": "7289005963599693366",
"original_compensation_type": "hourly",
"target_compensation_type": "salary",
"original_service_company": "7289005963599693367",
"target_service_company": "7289005963599693367",
"original_position": "7289005963599693367",
"target_position": "7289005963599693367"
},
"transfer_key": "transfer_3627531",
"initiator_id": "ou_a294793e8fa21529f2a60e3e9de45520"
}响应
响应体
| 名称 | 类型 | 描述 |
|---|---|---|
code | int | 错误码,非 0 表示失败 |
msg | string | 错误描述 |
data | job_change | - |
└ job_change_id | string | 异动记录 id,可通过接口 搜索异动信息 获取详细信息 |
└ employment_id | string | 雇员 id,可通过【搜索员工信息】接口获取 |
└ status | int | 异动状态 可选值有: - 0: Approving 审批中 - 1: Approved 审批通过 - 2: Transformed 已异动 - 3: Rejected 已拒绝 - 4: Cancelled 已撤销 - 5: NoNeedApproval 无需审批 |
└ transfer_type_unique_identifier | string | 异动类型唯一标识,,可通过接口 获取异动类型列表 获取详细信息 |
└ transfer_reason_unique_identifier | string | 异动原因唯一标识,可通过接口 获取异动原因列表 获取详细信息 |
└ process_id | string | 异动发起后审批流程 id,可通过【流程-获取单个流程列表】获取详细信息 |
└ effective_date | string | 异动生效日期,格式:"YYYY-MM-DD" |
└ created_time | string | 创建时间,格式:"YYYY-MM-DD" |
└ transfer_info | transfer_info | 异动详细信息 |
└ remark | string | 备注 |
└ offer_info | string | offer信息(数据仅会存储到系统,不支持页面上显示) |
└ target_dotted_manager_clean | boolean | 是否撤销虚线上级 |
└ probation_exist | boolean | 是否有试用期 |
└ original_department | string | 原部门,可通过【批量查询部门】接口获取 |
└ target_department | string | 新部门,可通过【批量查询部门】接口获取 |
└ original_work_location | string | 原工作地点,可通过【批量查询地点】接口获取 |
└ target_work_location | string | 新工作地点,可通过【批量查询地点】接口获取 |
└ original_direct_manager | string | 原直属上级,可通过【搜索员工信息】接口获取 |
└ target_direct_manager | string | 新直属上级,可通过【搜索员工信息】接口获取 |
└ original_dotted_manager | string | 原虚线上级,可通过【搜索员工信息】接口获取 |
└ target_dotted_manager | string | 新虚线上级,可通过【搜索员工信息】接口获取 |
└ original_job | string | 原职务, 可通过【批量查询职务】接口获取 |
└ target_job | string | 新职务, 可通过【批量查询职务】接口获取 |
└ original_job_family | string | 原序列,可通过【批量查询序列】接口获取 |
└ target_job_family | string | 新序列,可通过【批量查询序列】接口获取 |
└ original_job_level | string | 原级别, 可通过【批量查询职级】接口获取 |
└ target_job_level | string | 新职级, 可通过【批量查询职级】接口获取 |
└ original_workforce_type | string | 原人员类型,可通过【批量查询人员类型】接口获取 |
└ target_workforce_type | string | 新人员类型,可通过【批量查询人员类型】接口获取 |
└ original_employee_subtype | string | 原人员子类型 |
└ target_employee_subtype | string | 新人员子类型 |
└ original_company | string | 原公司,详细信息可通过【批量查询公司】接口查询获得 |
└ target_company | string | 新公司,详细信息可通过【批量查询公司】接口查询获得 |
└ original_contract_number | string | 原合同编号,可通过【批量查询合同】接口获取详细信息 |
└ target_contract_number | string | 新合同编号,可通过【批量查询合同】接口获取详细信息 |
└ original_contract_type | string | 原合同类型,可通过【批量查询合同】接口获取详细信息 |
└ target_contract_type | string | 新合同类型,可通过【批量查询合同】接口获取详细信息 |
└ original_duration_type | string | 原期限类型,可通过【批量查询合同】接口获取详细信息 |
└ target_duration_type | string | 新期限类型,可通过【批量查询合同】接口获取详细信息 |
└ original_signing_type | string | 原签订类型,可通过【批量查询合同】接口获取详细信息 |
└ target_signing_type | string | 新签订类型,可通过【批量查询合同】接口获取详细信息 |
└ original_contract_start_date | string | 原合同开始日期,格式:"YYYY-MM-DD" |
└ target_contract_start_date | string | 新合同开始日期,格式:"YYYY-MM-DD" |
└ original_contract_end_date | string | 原合同结束日期,格式:"YYYY-MM-DD" |
└ target_contract_end_date | string | 新合同结束日期,格式:"YYYY-MM-DD" |
└ original_working_hours_type | string | 原工时制度,可通过【批量查询工时制度】接口获取 |
└ target_working_hours_type | string | 新工时制度,可通过【批量查询工时制度】接口获取 |
└ original_working_calendar | string | 原工作日历,请开通休假服务后联系管理员获取工作日历数据 |
└ target_working_calendar | string | 新工作日历,请开通休假服务后联系管理员获取工作日历数据 |
└ original_probation_end_date | string | 原试用期预计结束日期,格式:"YYYY-MM-DD" |
└ target_probation_end_date | string | 新试用期预计结束日期,格式:"YYYY-MM-DD" |
└ original_weekly_working_hours | string | 原周工作时长 |
└ target_weekly_working_hours | string | 新周工作时长 |
└ original_work_shift | string | 原排班 |
└ target_work_shift | string | 新排班 |
└ original_cost_center_rate | support_cost_center_item\[\] | 原成本中心分摊信息 |
└ cost_center_id | string | 支持的成本中心id,详细信息可通过【搜索成本中心信息】接口查询获得 |
└ rate | int | 分摊比例 |
└ target_cost_center_rate | support_cost_center_item\[\] | 新成本中心分摊信息 |
└ cost_center_id | string | 支持的成本中心id,详细信息可通过【搜索成本中心信息】接口查询获得 |
└ rate | int | 分摊比例 |
└ original_employment_change | tranfer_employment_info | 原工作信息 |
└ regular_employee_start_date | string | 转正式员工日期,格式:"YYYY-MM-DD" |
└ seniority_date | string | 司龄起算日期,格式:"YYYY-MM-DD" |
└ employee_number | string | 员工编号,可通过【搜索员工信息】接口获取 |
└ custom_fields | custom_field_data\[\] | 自定义字段 字段权限要求: corehr:job_change.employment_custom_field:read 获取异动工作信息自定义字段 |
└ custom_api_name | string | 自定义字段 apiname,即自定义字段的唯一标识 |
└ name | custom_name | 自定义字段名称 |
└ zh_cn | string | 中文 |
└ en_us | string | 英文 |
└ type | int | 自定义字段类型 |
└ value | string | 字段值,是 json 转义后的字符串,根据元数据定义不同,字段格式不同(如 123, 123.23, "true", ["id1","id2"], "2006-01-02 15:04:05") |
└ target_employment_change | tranfer_employment_info | 新工作信息 |
└ regular_employee_start_date | string | 转正式员工日期,格式:"YYYY-MM-DD" |
└ seniority_date | string | 司龄起算日期,格式:"YYYY-MM-DD" |
└ employee_number | string | 员工编号,可通过【搜索员工信息】接口获取 |
└ custom_fields | custom_field_data\[\] | 自定义字段 字段权限要求: corehr:job_change.employment_custom_field:read 获取异动工作信息自定义字段 |
└ custom_api_name | string | 自定义字段 apiname,即自定义字段的唯一标识 |
└ name | custom_name | 自定义字段名称 |
└ zh_cn | string | 中文 |
└ en_us | string | 英文 |
└ type | int | 自定义字段类型 |
└ value | string | 字段值,是 json 转义后的字符串,根据元数据定义不同,字段格式不同(如 123, 123.23, "true", ["id1","id2"], "2006-01-02 15:04:05") |
└ original_job_grade | string | 原职等,可通过【查询职等】接口获取 |
└ target_job_grade | string | 新职等,可通过【查询职等】接口获取 |
└ original_compensation_type | string | 原薪资类型,请开通薪酬服务后联系管理员获取 字段权限要求: corehr:job_data.compensation_type:read 获取薪资类型 |
└ target_compensation_type | string | 新薪资类型,请开通薪酬服务后联系管理员获取 字段权限要求: corehr:job_data.compensation_type:read 获取薪资类型 |
└ original_service_company | string | 原任职公司,详细信息可通过【批量查询公司】接口查询获得 字段权限要求: corehr:job_data.service_company:read 获取任职公司 |
└ target_service_company | string | 新任职公司,详细信息可通过【批量查询公司】接口查询获得 字段权限要求: corehr:job_data.service_company:read 获取任职公司 |
└ original_position | string | 原岗位 |
└ target_position | string | 新岗位 |
响应体示例
json
{
"code": 0,
"msg": "success",
"data": {
"job_change_id": "6991776076699549697",
"employment_id": "ou_a294793e8fa21529f2a60e3e9de45520",
"status": 4,
"transfer_type_unique_identifier": "direct_leader_change",
"transfer_reason_unique_identifier": "involuntary_transfer",
"process_id": "6991776078461142564",
"effective_date": "2022-03-01",
"created_time": "1627899724000",
"transfer_info": {
"remark": "异动详情",
"offer_info": "优质人才,加急处理",
"target_dotted_manager_clean": true,
"probation_exist": false,
"original_department": "6966236933198579208",
"target_department": "6966236933198579208",
"original_work_location": "6967271100992587295",
"target_work_location": "6967271100992587295",
"original_direct_manager": "6974641477444060708",
"target_direct_manager": "7013619729281713671",
"original_dotted_manager": "6974648866876573198",
"target_dotted_manager": "7013328578351842852",
"original_job": "6969469398088287751",
"target_job": "6969469557836760606",
"original_job_family": "6967287547462419975",
"target_job_family": "6967287547462419975",
"original_job_level": "6972085707674355214",
"target_job_level": "6972085707674355214",
"original_workforce_type": "6968386026792289828",
"target_workforce_type": "7036268995372303885",
"original_employee_subtype": "6968386026792289828",
"target_employee_subtype": "7036268995372303885",
"original_company": "6974659700705068581",
"target_company": "6974659700705068581",
"original_contract_number": "55332",
"target_contract_number": "55333",
"original_contract_type": "labor_contract",
"target_contract_type": "labor_contract",
"original_duration_type": "fixed_term",
"target_duration_type": "fixed_term",
"original_signing_type": "new",
"target_signing_type": "new",
"original_contract_start_date": "2021-07-01",
"target_contract_start_date": "2021-07-01",
"original_contract_end_date": "2024-07-01",
"target_contract_end_date": "2024-07-01",
"original_working_hours_type": "6969087376740206087",
"target_working_hours_type": "6969087376740206087",
"original_working_calendar": "6969087376740236087",
"target_working_calendar": "6969087376740236087",
"original_probation_end_date": "2021-11-17",
"target_probation_end_date": "2021-11-17",
"original_weekly_working_hours": "162",
"target_weekly_working_hours": "160",
"original_work_shift": "work_shift",
"target_work_shift": "non_work_shift",
"original_cost_center_rate": [
{
"cost_center_id": "6950635856373745165",
"rate": 100
}
],
"target_cost_center_rate": [
{
"cost_center_id": "6950635856373745165",
"rate": 100
}
],
"original_employment_change": {
"regular_employee_start_date": "2023-01-01",
"seniority_date": "2023-01-01",
"employee_number": "1111111",
"custom_fields": [
{
"custom_api_name": "name",
"name": {
"zh_cn": "自定义姓名",
"en_us": "Custom Name"
},
"type": 1,
"value": "231"
}
]
},
"target_employment_change": {
"regular_employee_start_date": "2023-01-01",
"seniority_date": "2023-01-01",
"employee_number": "1111111",
"custom_fields": [
{
"custom_api_name": "name",
"name": {
"zh_cn": "自定义姓名",
"en_us": "Custom Name"
},
"type": 1,
"value": "231"
}
]
},
"original_job_grade": "7289005963599693366",
"target_job_grade": "7289005963599693366",
"original_compensation_type": "hourly",
"target_compensation_type": "salary",
"original_service_company": "7289005963599693367",
"target_service_company": "7289005963599693367",
"original_position": "7289005963599693367",
"target_position": "7289005963599693367"
}
}
}错误码
| HTTP状态码 | 错误码 | 描述 | 排查建议 |
|---|---|---|---|
| 400 | 1160100 | The transaction type can't be empty | 异动类型为必填,请填写异动类型 |
| 400 | 1160200 | Please check employment_id | 异动员工ID为必填,请填写异动员工ID |
| 400 | 1160201 | Has pending offboarding | 存在「审批中」或「待生效」的离职申请,请先撤销后再申请 |
| 400 | 1160202 | has a job status change which effective date is later | 存在晚于生效日期的异动记录,请撤销后重试 |
| 400 | 1160300 | Please check department effective date | 异动生效日期部门不存在或者已停用,请检查部门ID的部门后重试 |
| 400 | 1160301 | Please check work city effective date | 异动生效日期工作地点不存在或者已停用,请检查工作地点后重试 |
| 400 | 1160302 | Please check job effective date | 异动生效日期职务不存在或者已停用,请检查职务后重试 |
| 400 | 1160303 | Please check job family effective date | 异动生效日期序列不存在或者已停用,请检查序列后重试 |
| 400 | 1160306 | Please check work_hour_type | 请确认工时制度是否存在后重试 |
| 400 | 1160307 | Please check job level | 请确认职级是否存在后重试 |
| 400 | 1160308 | Please check work force type | 请确认人员类型是否存在后重试 |
| 400 | 1160400 | Please check leader | 直属汇报线成环,请确认直属上级链路是否成环后重试 |
| 400 | 1160401 | Please check virtual leader | 虚线汇报线成环,请确认虚线上级链路是否成环后重试 |
| 400 | 1160500 | system error | 调用上下游系统错误,请咨询技术支持。 |
| 400 | 1160501 | transform effective date early than onboarding | 异动生效日期早于入职日期,请检查后重试 |
| 400 | 1160502 | transform effective date later than offbaording | 异动生效日期晚于离职日期,请检查后重试 |
| 400 | 1160600 | At least fill in one field in transform information for job status change | 请至变更一个异动信息字段后再发起员工异动 |
| 400 | 1160601 | At least fill in one field in transform information for job status change | 请至变更一个异动信息字段后再发起员工异动 |
| 400 | 1160700 | check whether the selected members or job status change information are correct | 请确认原异动信息的字段与异动员工当前的信息一致后再发起 |
| 400 | 1162002 | Has a job data which effective date is later | 存在一条晚于当前异动生效日期的任职记录 |
| 400 | 1163000 | Please check department effective date | 异动生效日期部门不存在或者已停用,请检查部门ID的部门后重试 |
| 400 | 1163001 | Please check work city effective date | 异动生效日期工作地点不存在或者已停用,请检查工作地点后重试 |
| 400 | 1163002 | Please check job effective date | 异动生效日期职务不存在或者已停用,请检查职务后重试 |
| 400 | 1163003 | Please check job family effective date | 异动生效日期序列不存在或者已停用,请检查序列后重试 |
| 400 | 1163004 | The job doesn't match the job family or job level | 职务与职级或序列不匹配,请修改职务序列职级后重新提交 |
| 400 | 1163005 | The job doesn't match the job family or job level | 职务与职级或序列不匹配,请修改职务序列职级后重新提交 |
| 400 | 1163010 | The job family doesn't match job level | 请检查职级与序列是否匹配 |
| 400 | 1163012 | Insufficient headcount | 请检查是否还有head count后重试 |
| 400 | 1163015 | The weekly working hours value is out of range | 周工作时间值超出限定范围,请检查后重试 |
| 400 | 1163016 | In the work location field, you can only select a location whose purpose is work city | 工作地点字段只能选择用途为工作城市的地点,请检查后重试 |
| 400 | 1163017 | In the social security city field, you can only select a location whose purpose is social security city | 社保城市字段只能选择用途为社保城市的地点,请检查后重试 |
| 400 | 1163018 | The number of allocation proportion must be an integer from 1 to 100 | 成本中心的比例值只能限定在1-100范围内,请检查后重试 |
| 400 | 1163019 | Duplicate cost center rate | 多个成本中心比例总和必须等于100,请检查后重试 |
| 400 | 1163020 | Cost center is non-effective on the effective date of job status change | 异动生效日期当天成本中心还未生效,请检查后重试 |
| 400 | 1163021 | The number of allocation proportion must be an integer from 1 to 100 | 成本中心的比例值只能限定在1-100范围内,请检查后重试 |
| 400 | 1163022 | Please fill in both cost center and allocation proportion | 请同时填写成本中心id和对应比例 |
| 400 | 1163023 | Please enter the sub-level cost center | 请输入下级成本中心 |
| 400 | 1163024 | Illegal data format of cost center | 成本中心数据格式不合法,请检查成本中心填写格式后重试 |
| 400 | 1163025 | No cost centers found | 填写的成本中心不存在,请检查后重试 |
| 400 | 1163026 | Cost center is non-effective at a future date | 异动生效日期成本中心还未生效,请检查后重试 |
| 400 | 1164000 | Direct manager wasn't onboarded | 部门负责人还未入职,请检查后重试 |
| 400 | 1164001 | Direct manager was offboarded | 直属上级已离职,请重新填写后重新提交 |
| 400 | 1164002 | Dotted manager wasn't onboarded | 直属上级未入职,请重新填写后重新提交 |
| 400 | 1164003 | The effective date of the change is later than the offboarding date | 员工异动日期晚于离职日期,请重新填写后重新提交 |
| 400 | 1165000 | Dotted manager was offboarded | 虚线上级已离职,请重新填写后重新提交 |
| 400 | 1165001 | Contract start date is later than the original contract end date | 合同开始日期晚于原合同结束日期,请重新填写后重新提交 |
| 400 | 1165002 | Expected probation end date must be later than the effective date of job status change | 期望试用期结束日期必须晚于等于异动生效日期,请重新填写后重新提交 |
| 400 | 1165005 | Contract end date must be later than the effective date of job status change | 合同结束日期必须晚于等于异动生效日期,请重新填写后重新提交 |
| 400 | 1165006 | Contract end date can't be earlier than contract start date | 合同结束日期不能晚于原合同开始日期,请重新填写后重新提交 |
