---
title: "Add permissions to the collection"
method: POST
path: "/collections/{collection_id}/permissions"
tags: ["Collection"]
---

# Add permissions to the collection

`POST /collections/{collection_id}/permissions`

## Path parameters

- `collection_id` integer, required

## Request body

- object
  - `permissions` object[], required — An array with objects describing the permissions to add or update or destroy.
    - `action` 'create' | 'update' | 'destroy', required — The action to perform.
    - `id` integer, required — The id of the user or group.
    - `share_type` 'user' | 'group', required — The share type.
    - `permission_type` 'view' | 'edit' — The permission type. The default is "view".

## Response `200`

Permissions were added, the updated list of permissions is returned.

- object
  - `users` UserWithPermission[]
    - `id` integer
    - `full_name` string
    - `display_name` string
    - `email` string
    - `permission` string
  - `groups` GroupWithPermission[]
    - `id` integer
    - `name` string
    - `permission` string

## Other responses

- `400` — One ore more permission was not found or can not be created, because already exists
- `401` — Authorization information is missing or invalid.
- `403` — If a user without proper permissions tries to call this endpoint, the call is rejected with 403 Forbidden.
- `404` — The collection was not found.
- `422` — Invalid collection_id is provided.

---

[API](https://skmtc.net/instructure/apis/studio-public-api.md) · [All operations](https://skmtc.net/instructure/apis/studio-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/instructure/studio-public-api/revisions/4838a5113869/schema)
