Skip to main content
PUT
/
work_assignments
/
{work_assignment}
Update a work assignment
curl --request PUT \
  --url https://sandbox.nmbr.co/services/payroll/work_assignments/{work_assignment} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "title": "New title"
}
'
{
  "id": "<id>",
  "object": "work_assignment",
  "data": {
    "title": "New title",
    "employee": {
      "id": "<id>",
      "object": "employee",
      "links": {
        "self": "/employees/<id>"
      }
    },
    "pay_schedule": {
      "id": "<id>",
      "object": "pay_schedule",
      "links": {
        "self": "/pay_schedules/<id>"
      }
    },
    "business_entity": {
      "id": "<id>",
      "object": "business_entity",
      "links": {
        "self": "/business_entities/<id>"
      }
    },
    "current_tax_jurisdiction": "ca_on",
    "is_primary": true,
    "accrued_vacation_pay": 0,
    "paid_vacation_pay": 0,
    "first_non_draft_period_start": null,
    "last_non_draft_period_end": null,
    "available_tax_properties": [
      "ca::province_of_employment",
      "ca::province_of_work",
      "ca::federal_oc_surtax_exempt",
      "ca::cpp_exempt",
      "ca::ei_exempt",
      "ca::qc::qpp_exempt",
      "ca::qc::qpip_exempt",
      "ca::nt::territorial_payroll_tax",
      "ca::nu::territorial_payroll_tax",
      "ca::federal::additional_tax",
      "ca::federal::claim_amount",
      "ca::federal::total_income_less_than_total_claim_amount",
      "ca::federal::annual_deduction_at_source",
      "ca::statutory_holiday_pay",
      "ca::first_nation_exemptions",
      "ca::ab::workers_compensation_class",
      "ca::bc::workers_compensation_class",
      "ca::mb::workers_compensation_class",
      "ca::nb::workers_compensation_class",
      "ca::nl::workers_compensation_class",
      "ca::ns::workers_compensation_class",
      "ca::nt::workers_compensation_class",
      "ca::nu::workers_compensation_class",
      "ca::on::workers_compensation_class",
      "ca::pe::workers_compensation_class",
      "ca::qc::workers_compensation_class",
      "ca::sk::workers_compensation_class",
      "ca::yt::workers_compensation_class",
      "ca::on::claim_amount",
      "ca::on::dependent_children_credit",
      "ca::on::impaired_dependants_credit"
    ],
    "external_ref": null,
    "archived_at": null,
    "created_at": "2026-01-01T00:00:00.000000Z",
    "updated_at": "2026-01-01T00:00:00.000000Z"
  },
  "links": {
    "self": "/work_assignments/<id>"
  }
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

work_assignment
string
required

Body

application/json
pay_split_id
string
is_primary
boolean

When true, standard tax credits are applied to this work assignment's Pay Stubs. Only one work assignment per Employee per Business Entity may be primary. If none is explicitly set to primary, the earliest work assignment is treated as primary.

title
string | null

An optional label for this work assignment, used to distinguish between multiple work assignments for the same Employee or Contractor.

Maximum string length: 255
archived_at
string<date>

The date the work assignment was archived. Archiving ends the work assignment's participation in future Payrolls. The archive date must not fall before any active Pay Rate's effective period.

external_ref
string
Maximum string length: 255
tag_assignment
object
tag_assignment_patch
object

Additive changes to the existing tag assignment, as an alternative to replacing it with tag_assignment. The two keys are mutually exclusive.

tag_assignment_patch.add_tags — Tag IDs to add to every existing allocation. Adding a tag replaces any other tag from the same tag group on that allocation.

tag_assignment_patch.remove_tags — Tag IDs to remove from every existing allocation. An allocation left with no tags is deleted; the distribution strategy decides what happens to its value.

tag_assignment_patch.distribution_strategy (optional) — Governs the value of allocations deleted by remove_tags. Defaults to reallocate when omitted. Accepted values: reallocate (spread the deleted value proportionally across the remaining allocations), unallocated (drop the value; the assignment's allocations will sum to less than before), error (refuse the patch if any allocation would be deleted).

Response

200 - application/json

OK

id
string
read-only

The unique identifier of the object in Nmbr.

object
string
read-only

The type of the object in Nmbr ("work_assignment").

data
Work Assignment · object