# Update job

Update job. This interface is for full update. If the field is not filled with value, the original value will be cleared. Whether the field is required or not will be subject to the settings in the "Mange Job Fields" in the system.

## Request

Facts | &nbsp;
---|---
HTTP URL | https://open.feishu.cn/open-apis/hire/v1/jobs/:job_id/combined_update
HTTP Method | POST
Rate Limit | [10 per second](https://open.feishu.cn/document/ukTMukTMukTM/uUzN04SN3QjL1cDN)
Supported app types | Custom App
Required scopes<br>**To use this API, you must have at least 1 of the listed scopes.** | Update job information in hiring(hire:job)
Required field scopes | **Notice**：The response body of the API contains the following sensitive fields, and they will be returned only after corresponding scopes are added. If you do not need the fields, it is not recommended that you request the scopes.<br>Obtain user ID(contact:user.employee_id:readonly)

### Request header

Parameter | Type | Required | Description
---|---|---|---
Authorization | string | Yes | `tenant_access_token`<br>**Value format**: "Bearer `access_token`"<br>**Example value**: "Bearer t-7f1bcd13fc57d46bac21793a18e560"<br>[How to choose and get access token](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-choose-which-type-of-token-to-use)
Content-Type | string | Yes | **Fixed value**: "application/json; charset=utf-8"

### Path parameters

Parameter | Type | Description
---|---|---
job_id | string | Job ID , which can be queried through the [Get job list](https://open.feishu.cn/document/ukTMukTMukTM/uMzM1YjLzMTN24yMzUjN/hire-v1/job/list)<br>interface.<br>**Example value**: "6960663240925956660"

### Query parameters

Parameter | Type | Required | Description
---|---|---|---
user_id_type | string | No | User ID categories<br>**Example value**: open_id<br>**Optional values are**:<br>- open_id：Identifies a user to an app. The same user has different Open IDs in different apps. [How to get Open ID](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-openid)<br>- union_id：Identifies a user to a tenant that acts as a developer. A user has the same Union ID in apps developed by the same developer, and has different Union IDs in apps developed by different developers. A developer can use Union ID to link the same user's identities in multiple apps.[How to get Union ID](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-union-id)<br>- user_id：Identifies a user to a tenant. The same user has different User IDs in different tenants. In one single tenant, a user has the same User ID in all apps （including store apps）. User ID is usually used to communicate user data between different apps. [How to get User ID](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-obtain-user-id)<br>**Default value**: `open_id`<br>**When the value is `user_id`, the following field scopes are required**:<br>Obtain user ID(contact:user.employee_id:readonly)
department_id_type | string | No | Department Id Type<br>**Example value**: open_department_id<br>**Optional values are**:<br>- open_department_id：Open Department ID Type<br>- department_id：Department ID Type<br>**Default value**: `open_department_id`
job_level_id_type | string | No | The type of "Job Level ID" used in this request<br>**Example value**: 6942778198054125570<br>**Optional values are**:<br>- people_admin_job_level_id：The Job Level ID applicable to "HCM Platform". The HCM Platform is gradually being offline. It is recommended not to continue using this ID type.<br>- job_level_id：The Job Level ID applicable to "Feishu Management Backend" can be obtained through the [Query the list of job level](https://open.feishu.cn/document/server-docs/contact-v3/job_level/list) interface.<br>**Default value**: `people_admin_job_level_id`
job_family_id_type | string | No | The type of "Job Family ID" used in this request<br>**Example value**: 6942778198054125571<br>**Optional values are**:<br>- people_admin_job_category_id：The Job Family ID applicable to "HCM Platform". The HCM Platform is gradually being offline. It is recommended not to continue using this ID type.<br>- job_family_id：The Job Family ID applicable to "Feishu Management Backend" can be obtained through the [Query the list of job family](https://open.feishu.cn/document/server-docs/contact-v3/job_family/list) interface.<br>**Default value**: `people_admin_job_category_id`

### Request body

Parameter | Type | Required | Description
---|---|---|---
id | string | No | Job ID , which can be queried through the [Get job list](https://open.feishu.cn/document/ukTMukTMukTM/uMzM1YjLzMTN24yMzUjN/hire-v1/job/list)<br>interface.<br>**Example value**: "6960663240925956576"
experience | int | No | Working years<br>**Example value**: 1<br>**Optional values are**:<br>- 1：No Limit<br>- 2：Graduate<br>- 3：Under One Year<br>- 4：One To Three Year<br>- 5：Three To Five Year<br>- 6：Five To Seven Year<br>- 7：Seven To Ten Year<br>- 8：Over Ten year
expiry_time | int | No | Maturity date (deprecated). Please use expiry_timestamp field instead<br>**Example value**: 1622484739955
customized_data_list | combined_job_object_value_map\[\] | No | custom data list
object_id | string | No | Structure ID, which can be queried through the [Get job info](https://open.feishu.cn/document/ukTMukTMukTM/uMzM1YjLzMTN24yMzUjN/hire-v1/job/get)<br>interface.<br>**Example value**: "6960663240925956549"
value | string | No | Structure value<br>**Example value**: "Test"
min_level_id | string | No | Minimum rank<br>**Example value**: "6960663240925956547"
min_salary | int | No | Minimum wage<br>**Example value**: 1000
title | string | No | Job title<br>**Example value**: "Back-end R & D"
job_managers | job.manager | Yes | Position-related person in charge
id | string | No | Job ID, which can be queried through the [Get job list](https://open.feishu.cn/document/ukTMukTMukTM/uMzM1YjLzMTN24yMzUjN/hire-v1/job/list)<br>interface.<br>**Example value**: "1618209327096"
recruiter_id | string | Yes | Recruitment Manager ID, which can be queried through the [Search users](https://open.feishu.cn/document/ukTMukTMukTM/uMTM4UjLzEDO14yMxgTN)<br>interface.<br>**Example value**: "1612209227096"
hiring_manager_id_list | string\[\] | Yes | List of Employer Manager IDs, which can be queried through the [Search users](https://open.feishu.cn/document/ukTMukTMukTM/uMTM4UjLzEDO14yMxgTN)<br>interface.<br>**Example value**: ["on_94a1ee5551019f18cd73d9f111898cf2"]
assistant_id_list | string\[\] | No | Assistant ID List, which can be queried through the [Search users](https://open.feishu.cn/document/ukTMukTMukTM/uMTM4UjLzEDO14yMxgTN)<br>interface.<br>**Example value**: ["on_94a1ee5551019f18cd73d9f111898cf2"]
job_process_id | string | No | Recruitment Process, which can be queried through the [Get recruitment process information](https://open.feishu.cn/document/ukTMukTMukTM/uMzM1YjLzMTN24yMzUjN/hire-v1/job_process/list)<br>interface.<br>**Example value**: "6960663240925956554"
subject_id | string | No | Project<br>**Example value**: "6960663240925956555"
job_function_id | string | No | Function classification, obtained through "Acquisition Function Classification"<br>**Example value**: "6960663240925956555"
department_id | string | No | Department ID, must be passed in open_department_id in the format "od-xxxx". Available through the "Get Department Information List"<br>**Example value**: "Od-b2fafdce6fc5800b574ba5b0e2798b36"
head_count | int | No | Number of recruits<br>**Example value**: 100
is_never_expired | boolean | Yes | Is it effective for a long time<br>**Example value**: false
max_salary | int | No | Highest salary<br>**Example value**: 2000
requirement | string | No | Job Requirements<br>**Example value**: "Familiar with back-end R & D"
description | string | No | Description<br>**Example value**: "Backend R & D Job Description"
highlight_list | string\[\] | No | Job Highlights<br>**Example value**: ["免费三餐"]
job_type_id | string | Yes | Job category.<br>The enumeration is available form [「List job type」](https://open.feishu.cn/document/ukTMukTMukTM/uMzM1YjLzMTN24yMzUjN/hire-v1/job_type/list?lang=en-US)<br>**Example value**: "6960663240925956551"
max_level_id | string | No | Highest rank<br>**Example value**: "6960663240925956548"
required_degree | int | No | Academic requirements<br>**Example value**: 20<br>**Optional values are**:<br>- 1：Primary Education<br>- 2：Junior MiddleSchool Education<br>- 3：Secondary<br>- 4：Senior School Graduates<br>- 5：Associate<br>- 6：Bachelor<br>- 7：Master<br>- 8：Phd<br>- 20：No Limit
job_category_id | string | No | Sequence<br>**Example value**: "6960663240925956550"
address_id_list | string\[\] | No | Workplace, the enumeration is obtained through the interface "Get Address List", and the location is selected as "Job Address"<br>**Example value**: ["6960663240925956553"]
job_attribute | int | No | job attribute<br>**Example value**: 1<br>**Optional values are**:<br>- 1：Concrete<br>- 2：Virtual
expiry_timestamp | string | No | Expiry Timestamp<br>**Example value**: "1622484739955"
target_major_id_list | string\[\] | No | Target major ID. The enumeration value is obtained via the ["get major by page"](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/mdm-v3/major/list?lang=en-US) API and matches the "mdm_code" in the returned value. "0" indicates unlimited major.<br>**Example value**: ["6784008015948283905"]

### Request body example
```json
{
    "id": "6960663240925956576",
    "experience": 1,
    "expiry_time": 1622484739955,
    "customized_data_list": [
        {
            "object_id": "6960663240925956549",
            "value": "Test"
        }
    ],
    "min_level_id": "6960663240925956547",
    "min_salary": 1000,
    "title": "Back-end R & D",
    "job_managers": {
        "id": "1618209327096",
        "recruiter_id": "1612209227096",
        "hiring_manager_id_list": [
            "on_94a1ee5551019f18cd73d9f111898cf2"
        ],
        "assistant_id_list": [
            "on_94a1ee5551019f18cd73d9f111898cf2"
        ]
    },
    "job_process_id": "6960663240925956554",
    "subject_id": "6960663240925956555",
    "job_function_id": "6960663240925956555",
    "department_id": "Od-b2fafdce6fc5800b574ba5b0e2798b36",
    "head_count": 100,
    "is_never_expired": false,
    "max_salary": 2000,
    "requirement": "Familiar with back-end R & D",
    "description": "Backend R & D Job Description",
    "highlight_list": [
        "免费三餐"
    ],
    "job_type_id": "6960663240925956551",
    "max_level_id": "6960663240925956548",
    "required_degree": 20,
    "job_category_id": "6960663240925956550",
    "address_id_list": [
        "6960663240925956553"
    ],
    "job_attribute": 1,
    "expiry_timestamp": "1622484739955",
    "target_major_id_list": [
        "6784008015948283905"
    ]
}
```

## Response

### Response body

Parameter | Type | Description
---|---|---
code | int | Error codes, fail if not zero
msg | string | Error descriptions
data | combined_job_result | \-
default_job_post | combined_job_result_default_job_post | Job advertisement
id | string | ID
job | job | Position
id | string | Job ID
title | string | Job title
description | string | Job Description
code | string | Job No
requirement | string | Job Requirements
recruitment_type | job_recruitment_type | Type of employment
id | string | Employment Type ID
zh_name | string | Employment Type Chinese Name
en_name | string | Type of employment
active_status | int | Employment type enabled status<br>**Optional values are**:<br>- 1：Active<br>- 2：Inactive
department | job_department | Department
id | string | Department ID
zh_name | string | Department Chinese name
en_name | string | English name of department
city | job_city | Work location
city_code | string | Work location city code
zh_name | string | Workplace Chinese name
en_name | string | English name of work place
min_job_level | job_level | Minimum rank
id | string | Rank ID
zh_name | string | Rank Chinese Name
en_name | string | English name of rank
active_status | int | Rank enabled status<br>**Optional values are**:<br>- 1：Active<br>- 2：Inactive
max_job_level | job_level | Top rank
id | string | Rank ID
zh_name | string | Rank Chinese Name
en_name | string | English name of rank
active_status | int | Rank enabled status<br>**Optional values are**:<br>- 1：Active<br>- 2：Inactive
highlight_list | job_highlight\[\] | Job Highlights
id | string | Job Highlights ID
zh_name | string | Job Highlights Chinese Name
en_name | string | Job Highlights English Title
job_category | job_category | Job sequence
id | string | Job Serial ID
zh_name | string | Job Sequence Chinese Name
en_name | string | Job Series English Title
active_status | int | Job sequence enabled status<br>**Optional values are**:<br>- 1：Active<br>- 2：InActive
job_type | job_type | Job category
id | string | Job category ID
zh_name | string | Job category Chinese name
en_name | string | Job category English title
active_status | int | Enabled status<br>**Optional values are**:<br>- 1：Active<br>- 2：Inactive
create_user_id | string | Creator ID
create_time | int | Create time Please Use create_timestamp
update_time | int | Update time
process_type | int | Job Process Type<br>**Optional values are**:<br>- 1：Social Process<br>- 2：Campus Process
process_id | string | Job Process ID
process_name | string | Job Process Chinese Name
process_en_name | string | Job Process English Name
customized_data_list | job_customized_data\[\] | Custom field list
object_id | string | Custom field ID
name | i18n | Field name
zh_cn | string | Chinese
en_us | string | English
object_type | int | Field Type<br>**Optional values are**:<br>- 1：Single-line text<br>- 2：Multiline text<br>- 3：Radio<br>- 4：Multiple choice<br>- 5：Date<br>- 6：Month selection<br>- 7：Year selection<br>- 8：Time period<br>- 9：Numbers<br>- 10：Default field<br>- 11：Module
value | job_customized_value | Custom field values
content | string | When the field type is single-line text, multi-line text, module, default field, take the value from this field
option | job_customized_option | When the field type is radio, take the value from this field
key | string | Option ID
name | i18n | Option name
zh_cn | string | Chinese
en_us | string | English
option_list | job_customized_option\[\] | When the field type is multi-select, take the value from this field
key | string | Option ID
name | i18n | Option name
zh_cn | string | Chinese
en_us | string | English
time_range | job_customized_time_range | When the field type is time period, take the value from this field
start_time | string | Start time
end_time | string | End time
time | string | When the field type is date selection, month selection, and year selection, take the value from this field, which is a millisecond timestamp
number | string | When the field type is a number, take the value from this field
job_function | id_name_object | Functional classification
id | string | ID
name | i18n | Name
zh_cn | string | Chinese
en_us | string | English
subject | id_name_object | Job subject
id | string | ID
name | i18n | Name
zh_cn | string | Chinese
en_us | string | English
head_count | int | Number of recruits
experience | int | Working years<br>**Optional values are**:<br>- 1：No Limit<br>- 2：Graduate<br>- 3：Under One Year<br>- 4：One To Three Year<br>- 5：Three To Five Year<br>- 6：Five To Seven Year<br>- 7：Seven To Ten Year<br>- 8：Over Ten Year
expiry_time | int | Maturity date
min_salary | int | Minimum salary, unit: k
max_salary | int | Highest Salary in K
required_degree | int | Academic requirements<br>**Optional values are**:<br>- 1：Primary Education<br>- 2：Junior Middle School Education<br>- 3：Secondary<br>- 4：Senior School Graduates<br>- 5：Associate<br>- 6：Bachelor<br>- 7：Master<br>- 8：Phd<br>- 20：No Limit
city_list | code_name_object\[\] | List of duty stations
code | string | Coding
name | i18n | Name
zh_cn | string | Chinese
en_us | string | English
job_attribute | int | job attribute 1-concrete 2-virtual<br>**Optional values are**:<br>- 1：Concrete<br>- 2：Virtual
create_timestamp | string | Create Timestamp
update_timestamp | string | Update Timestamp
expiry_timestamp | string | Expiry Timestamp
target_major_list | target_major_info\[\] | Target major
id | string | Target major ID. "0" indicates unlimited major. For more information, use  ["batch get major by id"](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/mdm-v3/batch_major/get) to obtain the major details.
zh_name | string | Target major name (Chinese)
en_name | string | Target major name (English)
job_manager | job.manager | Position manager
id | string | Job ID
recruiter_id | string | Recruitment Manager ID
hiring_manager_id_list | string\[\] | List of Employer Manager IDs
assistant_id_list | string\[\] | Assistant ID List

### Response body example
```json
{
    "code": 0,
    "msg": "success",
    "data": {
        "default_job_post": {
            "id": "6960663240925956568"
        },
        "job": {
            "id": "6001",
            "title": "Test jobs",
            "description": "Job description text",
            "code": "R18",
            "requirement": "Job Requirements Text",
            "recruitment_type": {
                "id": "6001",
                "zh_name": "全职",
                "en_name": "FullTime",
                "active_status": 1
            },
            "department": {
                "id": "od-xxxx",
                "zh_name": "字节跳动",
                "en_name": "Bytedance"
            },
            "city": {
                "city_code": "C20",
                "zh_name": "成都",
                "en_name": "Chengdu"
            },
            "min_job_level": {
                "id": "6301",
                "zh_name": "级别-2",
                "en_name": "level-2",
                "active_status": 1
            },
            "max_job_level": {
                "id": "6301",
                "zh_name": "级别-2",
                "en_name": "level-2",
                "active_status": 1
            },
            "highlight_list": [
                {
                    "id": "6301",
                    "zh_name": "团队氛围好",
                    "en_name": "Positive team atmosphere"
                }
            ],
            "job_category": {
                "id": "6301",
                "zh_name": "序列-A",
                "en_name": "category-A",
                "active_status": 1
            },
            "job_type": {
                "id": "6890840777044265230",
                "zh_name": "金融",
                "en_name": "Finance"
            },
            "active_status": 1,
            "create_user_id": "6001",
            "create_time": 1617170925462,
            "update_time": 1617170925462,
            "process_type": 1,
            "process_id": "1",
            "process_name": "Process Chinese name",
            "process_en_name": "Process English name",
            "customized_data_list": [
                {
                    "object_id": "xxxx",
                    "name": {
                        "zh_cn": "测试",
                        "en_us": "test"
                    },
                    "object_type": 1,
                    "value": {
                        "content": "text",
                        "option": {
                            "key": "AA",
                            "name": {
                                "zh_cn": "测试",
                                "en_us": "test"
                            }
                        },
                        "option_list": [
                            {
                                "key": "AA",
                                "name": {
                                    "zh_cn": "测试",
                                    "en_us": "test"
                                }
                            }
                        ],
                        "time_range": {
                            "start_time": "AA",
                            "end_time": "AA"
                        },
                        "time": "1625456721000",
                        "number": "111"
                    }
                }
            ],
            "job_function": {
                "id": "1213213123123",
                "name": {
                    "zh_cn": "测试",
                    "en_us": "test"
                }
            },
            "subject": {
                "id": "1213213123123",
                "name": {
                    "zh_cn": "测试",
                    "en_us": "test"
                }
            },
            "head_count": 100,
            "experience": 1,
            "expiry_time": 1622484739955,
            "min_salary": 10,
            "max_salary": 20,
            "required_degree": 1,
            "city_list": [
                {
                    "code": "1111",
                    "name": {
                        "zh_cn": "测试",
                        "en_us": "test"
                    }
                }
            ],
            "job_attribute": 1,
            "create_timestamp": "1617170925462",
            "update_timestamp": "1617170925462",
            "expiry_timestamp": "1622484739955",
            "target_major_list": [
                {
                    "id": "6930815272790114324",
                    "zh_name": "考古",
                    "en_name": "archeology"
                }
            ]
        },
        "job_manager": {
            "id": "1618209327096",
            "recruiter_id": "1612209227096",
            "hiring_manager_id_list": [
                "on_94a1ee5551019f18cd73d9f111898cf2"
            ],
            "assistant_id_list": [
                "on_94a1ee5551019f18cd73d9f111898cf2"
            ]
        }
    }
}
```

### Error code

HTTP status code | Error code | Description | Troubleshooting suggestions
---|---|---|---
500 | 1002001 | System error | Check if the imported parameters are valid
400 | 1002002 | Parameter illegal | Check that the imported parameter format is correct
400 | 1002613 | The synchronization switch has not been turned on. You can only create, edit or close jobs in the recruitment system | Please confirm whether the position synchronization switch is turned on
400 | 1002615 | The job has been posted by a candidate. The job process cannot be changed | Please confirm if the position is correct
400 | 1002603 | Position type does not exist | Please check if the job type is correct
400 | 1002604 | Recruitment type does not exist | Please confirm whether the recruitment type is correct
400 | 1002605 | sequence does not exist | Please make sure the sequence is correct
400 | 1002606 | Level does not exist | Please make sure the level is correct
400 | 1002607 | Position highlight does not exist | Please confirm whether the job highlights are correct
400 | 1002608 | Subject does not exist | Please check if the item is correct
400 | 1002609 | Job Closed | Check if the position is closed
400 | 1002622 | Target major doesn't exist. Please confirm whether the major ID is correct. | \ -
400 | 1002623 | Unable to set other target majors if "Major unlimited" is selected | \ -
400 | 1002630 | Job Level is disable | \ -
400 | 1002631 | Unable to modify the data as the application lock on the job is being processed<br>Please wait for the previous update task to complete before retrying | \-

