Checking Allowable Actions

CMIS 1.0 CMIS 1.1

Allowable Actions let clients check if the current user is allowed to perform an action. Clients can and should use this, for example, to disable or remove buttons, menu items, or links that wouldn’t work for the current user.


Calculating the Allowable Actions can be an expensive operation for some CMIS repositories. The performance can suffer noticeably if many objects have to be returned, for example by getChildren(). Only request the Allowable Actions if you really need them. Use an Operation Context to turn Allowable Actions on or off.

OpenCMIS (Java)

CmisObject cmisObject = ...

if (cmisObject.hasAllowableAction(Action.CAN_DELETE_OBJECT)) {
    // do it

PortCMIS (C#)

ICmisObject cmisObject = ...

if (cmisObject.HasAllowableAction(PortCMIS.Enums.Action.CanDeleteObject)) {
    // do it