---
title: "Update Employee Dependent"
method: PUT
path: "/api/v1/employeedependents/{id}"
tags: ["Benefits", "Public API"]
---

# Update Employee Dependent

`PUT /api/v1/employeedependents/{id}`

Replaces all fields on an existing employee dependent record. The request body must contain the full desired state of the dependent — omitted fields are written as empty or null, not preserved. `employeeId` is required and must reference a valid employee. `relationship` must be a valid relationship type and `gender` must be a valid gender value. `isUsCitizen` and `isStudent` accept "yes" or "no". `state` accepts a state code (e.g. "UT") and `country` accepts an ISO 3166-1 alpha-2 country code (e.g. "US"). `dateOfBirth` must be in YYYY-MM-DD format. SSN and SIN are accepted as plain text and stored encrypted. Accepts both `application/json` and `application/xml` request bodies. The response format mirrors the request `Content-Type` (not the `Accept` header): JSON request bodies receive a JSON response; XML request bodies receive an XML response. A successful update fires an internal dependent-updated event that may trigger downstream benefit enrollment processing.

OAuth Scopes: employee:dependent.write, employee:dependent:ssn.write

## Path parameters

- `id` integer, required

## Request body

- EmployeeDependent
  - `employeeId` string, required — The internal employee ID of the employee this dependent belongs to. Required.
  - `firstName` string — The dependent's first name.
  - `middleName` string — The dependent's middle name.
  - `lastName` string — The dependent's last name.
  - `relationship` string — The dependent's relationship to the employee (e.g. "spouse", "child", "domestic_partner").
  - `gender` string — The dependent's gender.
  - `ssn` string — The dependent's Social Security Number, provided as plain text. Stored encrypted. Returned as a masked value (e.g. "xxx-xx-1234") on read.
  - `sin` string — The dependent's Social Insurance Number (Canadian equivalent of SSN), provided as plain text. Stored encrypted. Returned as a masked value on read.
  - `dateOfBirth` string, date — The dependent's date of birth in YYYY-MM-DD format.
  - `addressLine1` string — The first line of the dependent's address.
  - `addressLine2` string — The second line of the dependent's address.
  - `city` string — The dependent's city.
  - `state` string — The dependent's state, provided as a state code (e.g. "UT"). Returned as a full state name on read.
  - `zipCode` string — The dependent's ZIP or postal code.
  - `homePhone` string — The dependent's home phone number.
  - `country` string — The dependent's country, provided as an ISO 3166-1 alpha-2 country code (e.g. "US"). Returned as a full country name on read.
  - `isUsCitizen` 'yes' | 'no' — Whether the dependent is a US citizen. Accepted values: "yes" or "no".
  - `isStudent` 'yes' | 'no' — Whether the dependent is currently a student. Accepted values: "yes" or "no".

## Response `200`

The updated dependent record. Format matches the request Content-Type (JSON or XML).

- EmployeeDependentsResponse
  - `Employee Dependents` object[] — Array of employee dependent objects.
    - `id` string — The unique ID of the dependent record.
    - `employeeId` string — The internal employee ID of the employee this dependent belongs to.
    - `firstName` string — The dependent's first name.
    - `middleName` string, nullable — The dependent's middle name. Null if not set.
    - `lastName` string — The dependent's last name.
    - `relationship` string — The dependent's relationship to the employee.
    - `gender` string — The dependent's gender.
    - `maskedSSN` string, nullable — The dependent's masked SSN (e.g. "xxx-xx-1234"). Null if no SSN on file.
    - `maskedSIN` string, nullable — The dependent's masked SIN. Null if no SIN on file.
    - `dateOfBirth` string, date — The dependent's date of birth in YYYY-MM-DD format.
    - `addressLine1` string, nullable — The first line of the dependent's address. Null if not set.
    - `addressLine2` string, nullable — The second line of the dependent's address. Null if not set.
    - `city` string, nullable — The dependent's city. Null if not set.
    - `state` string, nullable — The dependent's state as a full name (e.g. "Utah"). Null if not set.
    - `zipCode` string, nullable — The dependent's ZIP or postal code. Null if not set.
    - `homePhone` string, nullable — The dependent's home phone number. Null if not set.
    - `country` string, nullable — The dependent's country as a full name (e.g. "United States"). Null if not set.
    - `isUsCitizen` 'yes' | 'no', nullable — Whether the dependent is a US citizen. "yes" or "no". Null if not set.
    - `isStudent` 'yes' | 'no', nullable — Whether the dependent is currently a student. "yes" or "no". Null if not set.

## Other responses

- `400` — The request body is invalid or contains a validation error (e.g. invalid relationship, gender, state code, country code, or date format).
- `403` — The authenticated user does not have permission to update this dependent.
- `409` — A duplicate record conflict was detected.
- `500` — An unexpected server error occurred.

---

[API](https://skmtc.net/bamboohr/apis/bamboohr-api.md) · [All operations](https://skmtc.net/bamboohr/apis/bamboohr-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bamboohr/bamboohr-api/versions/19ebf391a399/schema)
