---
title: "PUT /v1/permission-profiles/{id}/rights"
method: PUT
path: "/v1/permission-profiles/{id}/rights"
tags: ["PermissionProfile"]
---

# PUT /v1/permission-profiles/{id}/rights

`PUT /v1/permission-profiles/{id}/rights`

## Request

- Base URL: `https://api.infoset.app` (the document declares no server; this is the origin it was published from)
- URL: `https://api.infoset.app/v1/permission-profiles/{id}/rights`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-Api-Key`
- TypeScript: <https://skmtc.dev/infoset/apis/infoset-rest-api/docs/v1/permission-profiles/:id/rights/put.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `id` integer, required

## Request body

- PermissionProfileRight[]
  - `id` integer
  - `profileId` integer
  - `rightModule` integer
  - `viewRecord` boolean
  - `editRecord` boolean
  - `deleteRecord` boolean
  - `newRecord` boolean
  - `exportRecord` boolean
  - `profile` PermissionProfile
    - `id` integer
    - `accountId` integer, nullable
    - `departmentId` integer, nullable
    - `name` string, nullable
    - `code` string, nullable
    - `isSystem` boolean
    - `isLicensed` boolean
    - `createdBy` integer, nullable
    - `createdAt` string, date-time
    - `updatedAt` string, date-time, nullable
    - `department` Department
      - `id` integer
      - `accountId` integer
      - `code` string, nullable
      - `name` string, nullable
      - `status` 1 | 2 | 3: <p>Enum values:</p><ul><li><i>1 = Active</i></li><li><i>2 = PendingDeletion</i></li><li><i>3 = Deleted</i></li></ul>
      - `isDefault` boolean
      - `timezoneId` integer, nullable
      - `createdAt` string, date-time
      - `updatedAt` string, date-time, nullable
      - `deletedAt` string, date-time, nullable
      - `deleteTargetDepartmentId` integer, nullable
      - `channelSnapshot` string, nullable
    - `rights` PermissionProfileRight[], nullable
    - `voipRights` PermissionProfileVoipRight[], nullable
      - `id` integer
      - `profileId` integer
      - `voipUserId` integer
      - `view` boolean
      - `listen` boolean
      - `delete` boolean
      - `saveAs` boolean
      - `profile` PermissionProfile (recursive)
    - `externalNumberRights` PermissionProfileExternalNumberRight[], nullable
      - `id` integer
      - `profileId` integer
      - `externalNumberId` integer
      - `view` boolean
      - `listen` boolean
      - `delete` boolean
      - `saveAs` boolean
      - `profile` PermissionProfile (recursive)

## Response `200`

OK

- PermissionProfile
  - `id` integer
  - `accountId` integer, nullable
  - `departmentId` integer, nullable
  - `name` string, nullable
  - `code` string, nullable
  - `isSystem` boolean
  - `isLicensed` boolean
  - `createdBy` integer, nullable
  - `createdAt` string, date-time
  - `updatedAt` string, date-time, nullable
  - `department` Department
    - `id` integer
    - `accountId` integer
    - `code` string, nullable
    - `name` string, nullable
    - `status` 1 | 2 | 3: <p>Enum values:</p><ul><li><i>1 = Active</i></li><li><i>2 = PendingDeletion</i></li><li><i>3 = Deleted</i></li></ul>
    - `isDefault` boolean
    - `timezoneId` integer, nullable
    - `createdAt` string, date-time
    - `updatedAt` string, date-time, nullable
    - `deletedAt` string, date-time, nullable
    - `deleteTargetDepartmentId` integer, nullable
    - `channelSnapshot` string, nullable
  - `rights` PermissionProfileRight[], nullable
    - `id` integer
    - `profileId` integer
    - `rightModule` integer
    - `viewRecord` boolean
    - `editRecord` boolean
    - `deleteRecord` boolean
    - `newRecord` boolean
    - `exportRecord` boolean
    - `profile` PermissionProfile (recursive)
  - `voipRights` PermissionProfileVoipRight[], nullable
    - `id` integer
    - `profileId` integer
    - `voipUserId` integer
    - `view` boolean
    - `listen` boolean
    - `delete` boolean
    - `saveAs` boolean
    - `profile` PermissionProfile (recursive)
  - `externalNumberRights` PermissionProfileExternalNumberRight[], nullable
    - `id` integer
    - `profileId` integer
    - `externalNumberId` integer
    - `view` boolean
    - `listen` boolean
    - `delete` boolean
    - `saveAs` boolean
    - `profile` PermissionProfile (recursive)

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `404`: Not Found

---

[API](https://skmtc.dev/infoset/apis/infoset-rest-api.md) - [All operations](https://skmtc.dev/infoset/apis/infoset-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/infoset/apis/infoset-rest-api/revisions/709c8123f593?raw)
