---
title: "Add content to libraries"
method: POST
path: "/api/v2/bulk/groups/library"
tags: ["Groups"]
---

# Add content to libraries

`POST /api/v2/bulk/groups/library`

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

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

Adds multiple content IDs of a given type to groups libraries. 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

- AddContentsToGroupsLibraryBody
  - `input` LibraryDTO[], required — An array of objects, each specifying details for adding content to a group library.
    - `groupId` string, ObjectId, required — The unique ID of the group.
    - `contentType` 'path' | 'course', required — The type of the content.
    - `contentId` string, ObjectId, required — The unique ID of the content.

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