---
title: "Update a work entry in the employee's work history table."
method: PUT
path: "/people/{id}/work/{entry_id}"
tags: ["Employee Tables"]
---

# Update a work entry in the employee's work history table.

`PUT /people/{id}/work/{entry_id}`

This endpoint updates an entry in the employee’s work history table.<br> The unique identifier for the work entry is the site and effective date.<br> <p>Note that the entire work entry will be overwritten with the data provided in your payload. Any columns not included in the payload will be cleared (set to empty values).</p> <b>Patch Update Flag</b>:<br> As a best practice, we recommend reading the entire work entry data, updating the necessary fields, and then writing back the entire entry.  However, for legacy purposes, we provide the flag: patchUpdate=true, which functions similarly to a PATCH request. <br> When using this flag, please note:<br> 1. Only the fields included in the payload will be updated; all others will remain unchanged.<br> 2. The identifier for the work entry should be entry_id, not the site/effective date.<br> 3. Note that using the patchUpdate approach is not recommended and should be reserved for legacy implementations only.

## Path parameters

- `id` string, required
- `entry_id` integer, required

## Request body

- WorkEntry
  - `id` integer — The ID of the work entry.
  - `reason` string — The reason for this change.
  - `effectiveDate` string, date, required — The date this entry becomes effective. This is a mandatory field for a work entry.
  - `title` string — The job title of the employee for this work entry. This field should contain the ID of the job title entry from the job title list.
  - `department` string — The department the employee belonged to for this work entry. This field should contain the ID of the department entry in department list.
  - `site` string — The site of the employee. This is a mandatory field for a work entry (you must pass either the site or the siteId).
  - `siteId` integer — The id of the site of the employee. This is a mandatory field for a work entry (you must pass either the site or the siteId).
  - `reportsTo` object — The manager's details.
    - `id` string, required — The manager's employee ID (the email of the manager or a custom field containing the ID).
    - `firstName` string — The manager's first name.
    - `surname` string — The manager's surname.
    - `email` string — The manager's email address.
    - `displayName` string — The manager's display name.
  - `customColumns` object

## Response `200`

Entry updated successfully.

## Other responses

- `404` — Requested entry not found. Nothing was changed

---

[API](https://skmtc.net/hibob/apis/employee-data-api.md) · [All operations](https://skmtc.net/hibob/apis/employee-data-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hibob/employee-data-api/versions/0781ebbdda91/schema)
