---
title: "Update instructor IAM permissions"
method: POST
path: "/public/update-instructor-iam-permissions"
tags: ["User"]
---

# Update instructor IAM permissions

`POST /public/update-instructor-iam-permissions`

Update an instructor IAM permissions using presets

Authentication with the "FERMION-API-KEY" header is required to use this endpoint.

Rate limit: Maximum 30 requests in a window of 1m.

## Request body

- object
  - `data` object[], required
    - `data` object, required
      - `instructorId` string, required — The instructor ID whose permissions to update
      - `presets` object[], required
        - `id` 'single-course-access' | 'all-courses-admin-no-delete' | 'all-courses-admin' | 'single-contest-access' | 'single-contest-readonly' | 'manage-all-contests' | 'all-live-events-admin' | 'video-library-access' | 'coding-labs-access' | 'billing-access' | 'object-storage-access' | 'developer-access' | 'read-only-admin' | 'community-access' | 'super-admin', required — The preset ID to update
        - `resourceIds` string[], nullable — The resource IDs to update

## Response `200`

API Response Body

- object[]
  - `output` union, required
    - object
      - `status` 'ok', required
      - `data` object, required
    - object
      - `status` 'error', required
      - `errorMessage` string, required

---

[API](https://skmtc.net/fermion/apis/fermion-backend-api.md) · [All operations](https://skmtc.net/fermion/apis/fermion-backend-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fermion/fermion-backend-api/revisions/7ce364c8820b/schema)
