---
title: "Changes only the fields sent (BF-7493): JSON Merge Patch."
method: PATCH
path: "/v{version}/Users/contractors/{contractorId}"
tags: ["Users"]
---

# Changes only the fields sent (BF-7493): JSON Merge Patch.

`PATCH /v{version}/Users/contractors/{contractorId}`

Send any updatable field, with the names PUT uses; fields not sent are left as they are. A key
with null clears that field, except the eight PUT requires, which cannot be null. Keys match
in any case. A key that is not an updatable field is a 400, and so is isActive: activate or
deactivate a contractor in Bilflo. A value of the wrong JSON type is a 400 naming the key
(numbers must be JSON numbers, dates yyyy-MM-dd). An empty body is a 400. A contractorId in
the body must equal the route. customFields changes only the fields listed; an empty
customFieldItemName clears one. Rules such as zip code, phone or SSN format apply only to
values that change. dateOfBirth must be a calendar date yyyy-MM-dd; a changed value with a
time zone (Z or an offset) is a 400. Error messages never repeat personal values, except
that custom-field errors name the custom field and list item.

## Path parameters

- `contractorId` integer, required
- `version` string, required

## Request body

- unknown

## Response `200`

Success

- UsersContractsCommandsUpdateContractorResponse
  - `isValid` boolean
  - `errors` string[], nullable
  - `warnings` string[], nullable
  - `info` string[], nullable
  - `message` string, nullable
  - `data` UsersContractsCommandsUpdatedContractorResponse
    - `contractorId` integer

---

[API](https://skmtc.dev/bilflo/apis/bilflo-api.md) · [All operations](https://skmtc.dev/bilflo/apis/bilflo-api/llms.txt) · [OpenAPI document](https://skmtc.dev/bilflo/apis/bilflo-api/revisions/5063eab95b17?raw)
