---
title: "Add a job"
method: POST
path: "/jobs"
tags: ["Job API:Jobs"]
---

# Add a job

`POST /jobs`

## Request body

- AddJobOrderCommand
  - `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 `201`

Created

- JobOrderRepresentation
  - `jobId` integer, required
  - `jobTitle` string, nullable
  - `location` JobOrderLocationModel
    - `locationId` integer, required
    - `name` string, required
    - `area` JobOrderLocationAreaModel
      - `areaId` integer, required
      - `name` string, required
  - `company` CompanyNameModel
    - `companyId` integer, required — Unique identifier for the company
    - `name` string, nullable — Company name
    - `status` StatusModel
      - `statusId` integer, required
      - `name` string, required
      - `active` boolean
      - `default` boolean
    - `owner` UserNameModel
      - `userId` integer, required
      - `firstName` string, nullable
      - `lastName` string, nullable
      - `position` string, nullable
      - `email` string, nullable
      - `phone` string, nullable
      - `mobile` string, nullable
      - `inactive` boolean
      - `deleted` boolean
  - `contact` ContactNameModel
    - `contactId` integer, required — Unique identifier for the contact
    - `firstName` string, nullable — First name
    - `lastName` string, nullable — Last name
    - `position` string, nullable — Position or job title
    - `salutation` string, nullable — Salutation/honorific/title
    - `unsubscribed` boolean
    - `email` string, nullable — Primary email address
    - `phone` string, nullable — Phone number
    - `mobile` string, nullable — Mobile/cell number
    - `mobileNormalized` string, nullable — Mobile/cell normalized number
    - `inactive` boolean — Contact is no longer with the company
    - `status` StatusModel
      - `statusId` integer, required
      - `name` string, required
      - `active` boolean
      - `default` boolean
    - `owner` UserNameModel
      - `userId` integer, required
      - `firstName` string, nullable
      - `lastName` string, nullable
      - `position` string, nullable
      - `email` string, nullable
      - `phone` string, nullable
      - `mobile` string, nullable
      - `inactive` boolean
      - `deleted` boolean
  - `status` StatusModel
    - `statusId` integer, required
    - `name` string, required
    - `active` boolean
    - `default` boolean
  - `source` string, nullable
  - `userFavourite` boolean, nullable
  - `jobDescription` string, nullable
  - `numberOfJobs` integer
  - `workplaceAddress` CompanyAddressModel
    - `addressId` string, uuid, required
    - `name` string, nullable
    - `street` string[], nullable
    - `city` string, nullable
    - `state` string, nullable
    - `postalCode` string, nullable
    - `country` string, nullable
    - `countryCode` string, nullable
    - `phone` string, nullable
    - `fax` string, nullable
    - `url` string, uri, nullable
  - `category` JobOrderCategoryModel
    - `categoryId` integer, required
    - `name` string, required
    - `subCategory` JobOrderSubCategoryModel
      - `subCategoryId` integer, required
      - `name` string, required
  - `start` JobOrderStartModel
    - `immediate` boolean
    - `relative` RelativeStartModel
      - `period` integer
      - `unit` 'Week' | 'Month', string
    - `date` string, date, nullable — The specific date that a job starts or a candidate is available
  - `endDate` string, date, nullable
  - `workShift` JobOrderWorkShiftModel
    - `startTime` string, nullable
    - `endTime` string, nullable
    - `workDays` string[], nullable
  - `duration` DurationModel
    - `period` integer
    - `unit` 'Hour' | 'Day' | 'Week' | 'Month', string
  - `workType` WorkTypeModel
    - `workTypeId` integer, required
    - `name` string, required
    - `ratePer` 'Hour' | 'Day' | 'Week' | 'Month' | 'Year', string
  - `jobType` string, nullable
  - `salary` JobOrderSalaryRangeModel
    - `ratePer` 'Hour' | 'Day' | 'Week' | 'Month' | 'Year', string
    - `rateLow` number, double, nullable
    - `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 or hours per week for an hourly rate.
  - `fee` JobOrderFeeModel
    - `rateType` 'Percent' | 'Fixed' | 'Margin', string
    - `rate` number, double, nullable
    - `estimatedTotal` number, double, nullable
    - `currency` string, nullable
  - `otherContacts` ContactNameModel[], nullable
    - `contactId` integer, required — Unique identifier for the contact
    - `firstName` string, nullable — First name
    - `lastName` string, nullable — Last name
    - `position` string, nullable — Position or job title
    - `salutation` string, nullable — Salutation/honorific/title
    - `unsubscribed` boolean
    - `email` string, nullable — Primary email address
    - `phone` string, nullable — Phone number
    - `mobile` string, nullable — Mobile/cell number
    - `mobileNormalized` string, nullable — Mobile/cell normalized number
    - `inactive` boolean — Contact is no longer with the company
    - `status` StatusModel
      - `statusId` integer, required
      - `name` string, required
      - `active` boolean
      - `default` boolean
    - `owner` UserNameModel
      - `userId` integer, required
      - `firstName` string, nullable
      - `lastName` string, nullable
      - `position` string, nullable
      - `email` string, nullable
      - `phone` string, nullable
      - `mobile` string, nullable
      - `inactive` boolean
      - `deleted` boolean
  - `skillTags` JobOrderSkillTags
    - `matchAll` boolean
    - `tags` string[], nullable
  - `workflow` JobApplicationWorkflowSummaryModel
    - `workflowId` integer — Unique identifier for the workflow
    - `workflowName` string, nullable — Name of the workflow
  - `custom` CustomFieldValueModel[], nullable
    - `fieldId` integer, required
    - `name` string, required
    - `type` 'Text' | 'List' | 'Date' | 'Lookup' | 'Url', string, required — The type of value a custom field expects
    - `value` unknown
  - `owner` UserNameModel
    - `userId` integer, required
    - `firstName` string, nullable
    - `lastName` string, nullable
    - `position` string, nullable
    - `email` string, nullable
    - `phone` string, nullable
    - `mobile` string, nullable
    - `inactive` boolean
    - `deleted` boolean
  - `recruiters` UserNameModel[], nullable
    - `userId` integer, required
    - `firstName` string, nullable
    - `lastName` string, nullable
    - `position` string, nullable
    - `email` string, nullable
    - `phone` string, nullable
    - `mobile` string, nullable
    - `inactive` boolean
    - `deleted` boolean
  - `partnerActions` PartnerActionStageModel[], nullable
    - `actionId` string, uuid
    - `actionName` string, nullable
    - `reference` string, nullable — Unique partner defined reference/identifier for the action
    - `stage` 'Submitted' | 'InProgress' | 'Completed' | 'Rejected' | 'Cancelled', string
    - `status` string, nullable — Partner defined progress status message for the action
    - `result` PartnerActionResultModel
      - `score` integer, nullable — Optional partner score for the action result
      - `url` string, uri, nullable — Optional partner defined URL for the action result
      - `urlType` 'Popup' | 'Page', string
    - `submittedAt` string, date-time
    - `submittedBy` UserNameModel
      - `userId` integer, required
      - `firstName` string, nullable
      - `lastName` string, nullable
      - `position` string, nullable
      - `email` string, nullable
      - `phone` string, nullable
      - `mobile` string, nullable
      - `inactive` boolean
      - `deleted` boolean
    - `updatedAt` string, date-time
    - `updatedBy` UserNameModel
      - `userId` integer, required
      - `firstName` string, nullable
      - `lastName` string, nullable
      - `position` string, nullable
      - `email` string, nullable
      - `phone` string, nullable
      - `mobile` string, nullable
      - `inactive` boolean
      - `deleted` boolean
  - `createdBy` UserNameModel
    - `userId` integer, required
    - `firstName` string, nullable
    - `lastName` string, nullable
    - `position` string, nullable
    - `email` string, nullable
    - `phone` string, nullable
    - `mobile` string, nullable
    - `inactive` boolean
    - `deleted` boolean
  - `createdAt` string, date-time, nullable
  - `updatedBy` UserNameModel
    - `userId` integer, required
    - `firstName` string, nullable
    - `lastName` string, nullable
    - `position` string, nullable
    - `email` string, nullable
    - `phone` string, nullable
    - `mobile` string, nullable
    - `inactive` boolean
    - `deleted` boolean
  - `updatedAt` string, date-time, nullable
  - `closedBy` UserNameModel
    - `userId` integer, required
    - `firstName` string, nullable
    - `lastName` string, nullable
    - `position` string, nullable
    - `email` string, nullable
    - `phone` string, nullable
    - `mobile` string, nullable
    - `inactive` boolean
    - `deleted` boolean
  - `closedAt` string, date-time, nullable
  - `requisitionId` integer, nullable
  - `statistics` JobOrderStatisticsSummaryModel
    - `applications` JobOrderJobApplicationStatisticsSummaryModel
      - `new` integer
      - `active` integer
      - `total` integer
  - `links` JobOrderLinks
    - `self` string, uri, nullable
    - `attachments` string, uri, nullable — Attachments
    - `applications` string, uri, nullable — Job applications
    - `notes` string, uri, nullable — Notes

---

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