---
title: "Replace jobs skills"
method: PUT
path: "/api/v2/bulk/skills/jobs-skills"
tags: ["Skills"]
---

# Replace jobs skills

`PUT /api/v2/bulk/skills/jobs-skills`

> 🔑
>
> Required OAuth scope: `skillsJobSkills:bulk`.

> 🚜
>
> This endpoint processes up to 10,000 objects asynchronously. For more information, see the [Bulk operations guide](https://360learning.readme.io/docs/bulk-operations-1).

Replaces jobs skills based on the given `jobId`.
- All skills of each job will be replaced by the provided ones. For each job, a maximum of 100 skills is allowed.

Upon submission, the request is queued. Use the provided URL in the response header to check the status of the bulk operation.

## Headers

- `360-api-version` 'v2.0', required

## Request body

- ReplaceJobsSkillsBody
  - `input` JobSkillInputDTO[], required — An array of job skill objects.
    - `jobId` string, required — The unique ID of the job.
    - `skillId` string, required — The unique ID of the skill.
    - `qualifiers` ValueByIdQualifierDTO[] — The qualifier values related to the job skill.
      - `_id` string, required — The unique ID of the qualifier.
      - `valueId` string, required — The unique ID of the qualifier value.

## Response `202`

The operation is successfully created.

## Other responses

- `400` — The server cannot or will not process the request due to something that is perceived to be a client error.
- `401` — The given access token is either missing, invalid, has expired, or has been revoked.
- `403` — The given access token does not have the required OAuth scope to execute the request.
- `429` — The maximum number of concurrent operations has been reached.
- `503` — The bulk API is temporarily disabled.

---

[API](https://skmtc.dev/360learning/apis/core-api.md) · [All operations](https://skmtc.dev/360learning/apis/core-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/360learning/core-api/revisions/94b691b0b72c/schema)
