---
title: "Update a job"
method: PUT
path: "/jobs/{jobId}"
tags: ["Job API:Jobs"]
---

# Update a job

`PUT /jobs/{jobId}`

## Path parameters

- `jobId` integer, required

## Request body

- UpdateJobOrderCommand
  - `jobTitle` string, nullable, required
  - `companyId` integer, nullable
  - `contactId` integer, nullable
  - `jobDescription` string, nullable
  - `statusId` integer, nullable — Job status
  - `userFavourite` boolean, nullable — Job is a favourite for the current user
  - `category` SubmitCategoryModel
    - `categoryId` integer, required
    - `subCategoryId` integer, nullable
  - `location` SubmitLocationModel
    - `locationId` integer, required
    - `areaId` integer, nullable
  - `workplaceAddressId` string, uuid, nullable — Workplace Address Id
  - `start` SubmitJobOrderStartModel
    - `immediate` boolean
    - `relative` SubmitRelativeStartModel
      - `period` integer
      - `unit` 'Week' | 'Month', string
    - `date` string, date, nullable — The specific date that the job starts
  - `duration` SubmitDurationModel
    - `period` integer
    - `unit` 'Hour' | 'Day' | 'Week' | 'Month', string
  - `workTypeId` integer, nullable
  - `salary` SubmitJobOrderSalaryRangeModel
    - `ratePer` 'Hour' | 'Day' | 'Week' | 'Month' | 'Year', string
    - `rateLow` number, double
    - `rateHigh` number, double, nullable
    - `currency` string, nullable — Optional ISO 4217 3-letter alphabetic currency code
    - `timePerWeek` number, double, nullable — Number of days per week for a daily rate, hours per day for an hourly rate with a 'Day' duration unit or hours per day for an hourly rate with a 'Week' duration unit.
  - `fee` SubmitJobOrderFeeModel
    - `rateType` 'Percent' | 'Fixed' | 'Margin', string
    - `rate` number, double
    - `estimatedTotal` number, double — Optional estimated total fee. If not specified it will be calculated from the duration, salary and fee rate.
  - `numberOfJobs` integer
  - `source` string, nullable
  - `custom` SubmitCustomFieldValueModel[], nullable
    - `fieldId` integer, required
    - `value` unknown
  - `skillTags` SubmitJobOrderSkillTagsModel
    - `matchAll` boolean
    - `tags` string[], nullable
  - `ownerUserId` integer — User Id - Owner of this job
  - `recruiterUserId` integer[], nullable — User Id - Optional list of recruiters assigned to the job
  - `workflowId` integer, nullable
  - `workShift` SubmitJobOrderWorkShiftModel
    - `startTime` string, nullable — TimeSpan with format: HH:mm Example: 17:21
    - `endTime` string, nullable — TimeSpan with format: HH:mm Example: 14:21
    - `workDays` string[], nullable — Day of week: Sunday, Monday,Tuesday, Wednesday, Thursday, Friday, Saturday
  - `endDate` string, date, nullable — The specific date that the job end

## Response `200`

Job was successfully updated

## Other responses

- `404` — Job was not found
- `422` — Validation error

---

[API](https://skmtc.net/jobadder/apis/jobadder-api.md) · [All operations](https://skmtc.net/jobadder/apis/jobadder-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/jobadder/jobadder-api/revisions/9f43f6a6ee6e/schema)
