---
title: "create one or multiple jobs"
method: POST
path: "/api/serviceworkforce/jobs"
tags: ["jobs"]
---

# create one or multiple jobs

`POST /api/serviceworkforce/jobs`

Create one or multiple jobs

## Request body

- union
  - Job
    - `uuid` string, uuid
    - `createdAt` string, date-time — Creation timestamp
    - `createdBy` string, uuid — Creator UUID
    - `lastUpdatedAt` string, date-time — Last update timestamp
    - `lastUpdatedBy` string, uuid — Last updater UUID
    - `lastUpdatedByAudience` string — Audience of last updater
    - `lastUpdatedByAudienceUuid` string, uuid — Audience UUID of last updater
    - `lastUpdatedByImpersonatedBy` string, uuid — Impersonator UUID
    - `lastUpdatedByCompanyUuid` string, uuid — Company UUID of last updater
    - `lastUpdatedByEnterpriseUuid` string, uuid — Enterprise UUID of last updater
    - `name` string, required — Job name
    - `description` string
    - `externalDescription` string — Applicant-facing job description; supports HTML.
    - `companyUuid` string, uuid — Company UUID
    - `allowUnscheduledShift` boolean
    - `externalPosition` object
      - `source` 'hire' | 'hire-go' | 'workday', required — External source system
      - `externalIdentifier` string
      - `externalCreatedAt` string, date-time
  - Job[]
    - `uuid` string, uuid
    - `createdAt` string, date-time — Creation timestamp
    - `createdBy` string, uuid — Creator UUID
    - `lastUpdatedAt` string, date-time — Last update timestamp
    - `lastUpdatedBy` string, uuid — Last updater UUID
    - `lastUpdatedByAudience` string — Audience of last updater
    - `lastUpdatedByAudienceUuid` string, uuid — Audience UUID of last updater
    - `lastUpdatedByImpersonatedBy` string, uuid — Impersonator UUID
    - `lastUpdatedByCompanyUuid` string, uuid — Company UUID of last updater
    - `lastUpdatedByEnterpriseUuid` string, uuid — Enterprise UUID of last updater
    - `name` string, required — Job name
    - `description` string
    - `externalDescription` string — Applicant-facing job description; supports HTML.
    - `companyUuid` string, uuid — Company UUID
    - `allowUnscheduledShift` boolean
    - `externalPosition` object
      - `source` 'hire' | 'hire-go' | 'workday', required — External source system
      - `externalIdentifier` string
      - `externalCreatedAt` string, date-time

## Response `201`

One or many job documents created. Wrapped in a JsonAPI root response.

- object
  - `data` union
    - Job
      - `uuid` string, uuid
      - `createdAt` string, date-time — Creation timestamp
      - `createdBy` string, uuid — Creator UUID
      - `lastUpdatedAt` string, date-time — Last update timestamp
      - `lastUpdatedBy` string, uuid — Last updater UUID
      - `lastUpdatedByAudience` string — Audience of last updater
      - `lastUpdatedByAudienceUuid` string, uuid — Audience UUID of last updater
      - `lastUpdatedByImpersonatedBy` string, uuid — Impersonator UUID
      - `lastUpdatedByCompanyUuid` string, uuid — Company UUID of last updater
      - `lastUpdatedByEnterpriseUuid` string, uuid — Enterprise UUID of last updater
      - `name` string, required — Job name
      - `description` string
      - `externalDescription` string — Applicant-facing job description; supports HTML.
      - `companyUuid` string, uuid — Company UUID
      - `allowUnscheduledShift` boolean
      - `externalPosition` object
        - `source` 'hire' | 'hire-go' | 'workday', required — External source system
        - `externalIdentifier` string
        - `externalCreatedAt` string, date-time
    - Job[]
      - `uuid` string, uuid
      - `createdAt` string, date-time — Creation timestamp
      - `createdBy` string, uuid — Creator UUID
      - `lastUpdatedAt` string, date-time — Last update timestamp
      - `lastUpdatedBy` string, uuid — Last updater UUID
      - `lastUpdatedByAudience` string — Audience of last updater
      - `lastUpdatedByAudienceUuid` string, uuid — Audience UUID of last updater
      - `lastUpdatedByImpersonatedBy` string, uuid — Impersonator UUID
      - `lastUpdatedByCompanyUuid` string, uuid — Company UUID of last updater
      - `lastUpdatedByEnterpriseUuid` string, uuid — Enterprise UUID of last updater
      - `name` string, required — Job name
      - `description` string
      - `externalDescription` string — Applicant-facing job description; supports HTML.
      - `companyUuid` string, uuid — Company UUID
      - `allowUnscheduledShift` boolean
      - `externalPosition` object
        - `source` 'hire' | 'hire-go' | 'workday', required — External source system
        - `externalIdentifier` string
        - `externalCreatedAt` string, date-time
  - `meta` ResponsesPartMeta
    - `timestamp` string, date-time, required
    - `verb` 'OPTION' | 'GET' | 'PUT' | 'POST' | 'PATCH' | 'DELETE'
    - `path` string
    - `jti` string
    - `rid` string
    - `count` number
    - `status` string
    - `duration` number
    - `size` number

## Other responses

- `409` — default error response
- `500` — default error response

---

[API](https://skmtc.net/fountain/apis/hire-public-api.md) · [All operations](https://skmtc.net/fountain/apis/hire-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fountain/hire-public-api/revisions/5f406c0e9462/schema)
