Permissions

Update role permissions on asset

Changed on

Updates permissions for a specific role on a host or folder. Automatically breaks permission inheritance if the asset currently inherits. Only admin users can access this endpoint. Omitting a scope preserves existing permissions; empty array removes permissions.

put/api/v1/permissions/role/{roleId}/asset/{assetId}

Request

Path parameters

roleIdstring required

Role identifier

assetIdstring required

Asset identifier (Host ID, Host Name, or Folder ID)

Query parameters

cascadeboolean

If true, cascades permissions to all child assets

Request body

permissionsobject required

Permission assignments by scope (INDIVIDUAL, HOST, FOLDER, CONTENT, etc.) with permission levels (READ, WRITE, PUBLISH, EDIT_PERMISSIONS, CAN_ADD_CHILDREN). Omitting a scope preserves existing permissions. Empty array [] removes permissions for that scope.

Example request

{
  "permissions": {
    "INDIVIDUAL": [
      "READ",
      "WRITE"
    ],
    "CONTENT": [
      "READ",
      "PUBLISH"
    ]
  }
}

Response

Permissions updated successfully

i18nMessagesMapobject
permissionsstring[]

Example response

{
  "entity": {
    "roleId": "abc-123-def-456",
    "roleName": "Content Editor",
    "asset": {
      "id": "abc-123-def-456",
      "type": "HOST",
      "name": "demo.dotcms.com",
      "path": "/demo.dotcms.com/application",
      "hostId": "abc-123-def-456",
      "canEditPermissions": true,
      "permissions": {
        "INDIVIDUAL": [
          "READ",
          "WRITE",
          "PUBLISH"
        ],
        "CONTENT": [
          "READ"
        ]
      }
    }
  }
}

Changes