---
title: "Archive training content (bulk)"
method: PATCH
path: "/learning/lms-integrations/{provider-identifier}/training-content/archive"
tags: ["Provider integrations"]
---

# Archive training content (bulk)

`PATCH /learning/lms-integrations/{provider-identifier}/training-content/archive`

Marks one or more training content items as archived. Archived items are hidden from learners but the records are not permanently deleted.

Returns `200 OK` with a `success` array of archived identifiers and an `errors` array for any identifiers that could not be found.

**Before using this endpoint:**
<ul>
  <li>Training content items must already exist — use the `externalIdentifier` values from the create step.</li>
  <li>Archiving is non-destructive — archived content is hidden from learners but can be restored if needed.</li>
  <li>Unknown identifiers are not treated as a fatal error; they are reported in the `errors` array.</li>
</ul>

**Testing notes:** Open the **Examples** panel and select a **Request Example** to inspect the body parameters.

## Path parameters

- `provider-identifier` string, required

## Request body

- PartnerContentArchiveRequest — Request body for archiving training content by external identifier.
  - `items` string[], required — List of external identifiers to archive.

## Response `200`

Success — per-id outcomes

- PartnerContentBulkResponse — Bulk operation outcome from `PartnerContentBulkResponse`.
  - `success` string[] — External identifiers that were processed successfully.
  - `errors` PartnerContentErrorItem[] — Per-item failures with external id and message.
    - `externalIdentifier` string, required — External identifier of the failing item.
    - `message` string, required — Failure reason (for example validation or downstream error).

## Other responses

- `400` — Bad request
- `401` — Authentication failed
- `403` — Forbidden — feature disabled or missing permissions
- `404` — Not found — unknown integration
- `422` — Unprocessable entity — invalid item(s)
- `429` — Rate limit exceeded
- `500` — Internal server error

---

[API](https://skmtc.net/hibob/apis/employee-data-api.md) · [All operations](https://skmtc.net/hibob/apis/employee-data-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hibob/employee-data-api/revisions/0781ebbdda91/schema)
