---
title: "Replaces a contract job's approvers (BF-7516)."
method: PUT
path: "/v{version}/ContractJobs/{jobId}/approvers"
tags: ["ContractJobs"]
---

# Replaces a contract job's approvers (BF-7516).

`PUT /v{version}/ContractJobs/{jobId}/approvers`

Body: the full list, in approval order. Each entry names the person by userId, contactId or both (the
other is looked up) and sets canApproveTime, canApprovePerDiem, canApproveExpenses and viewInvoices
(omitted = false). Approvers not in the list are removed; order is the position in the list. A person must
be a contact of the job's client or a team member of your company; system users, and inactive users being
added, are refused. A job whose timecards need approval (timecard methods 1, 2, 5, 6, 7, 9, 11) must keep at
least one approver with canApproveTime unless it is a Draft. Sending the stored list changes nothing.

## Path parameters

- `jobId` integer, required
- `version` string, required

## Headers

- `company-id` string, required

## Request body

- ContractsContractsApproversContractJobApproverEntry[]
  - `userId` integer, nullable
  - `contactId` integer, nullable
  - `canApproveTime` boolean, nullable
  - `canApprovePerDiem` boolean, nullable
  - `canApproveExpenses` boolean, nullable
  - `viewInvoices` boolean, nullable

## Response `200`

Success

- ContractsContractsApproversContractJobApproversResponse
  - `isValid` boolean
  - `errors` string[], nullable
  - `warnings` string[], nullable
  - `info` string[], nullable
  - `message` string, nullable
  - `data` ContractsContractsApproversContractJobApproverView[], nullable
    - `userId` integer
    - `contactId` integer, nullable
    - `firstName` string, nullable
    - `lastName` string, nullable
    - `canApproveTime` boolean
    - `canApprovePerDiem` boolean
    - `canApproveExpenses` boolean
    - `viewInvoices` boolean
    - `order` integer

## Changes

- **2026-09-24** `b6c431404f24` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/bilflo/apis/bilflo-api/changes/v:version/ContractJobs/:jobId/approvers/put.md)

---

[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)
