Newer Version Available
CustomPermission
Represents a permission created to control access to a custom process
or app, such as sending email. This object is available in API version 31.0 and
later.
Supported Calls
describeSObjects(), query(), retrieve()
Fields
| Field Name | Details |
|---|---|
| Description |
|
| DeveloperName |
|
| Language |
|
| MasterLabel |
|
| NamespacePrefix |
|
Usage
Use the CustomPermission object to determine users’ access to custom permissions.
For
example, to query all permission sets where the Button1 permission
is enabled:
1SELECT Id, DeveloperName,
2(select Id, Parent.Name, Parent.Profile.Name from SetupEntityAccessItems)
3FROM CustomPermission
4WHERE DeveloperName = 'Button1'To query all permission
sets and profiles with custom permissions:
1SELECT Assignee.Name, PermissionSet.Id,
2PermissionSet.Profile.Name,
3PermissionSet.isOwnedByProfile,
4PermissionSet.Label
5FROM PermissionSetAssignment
6WHERE PermissionSetId
7IN (SELECT ParentId
8 FROM SetupEntityAccess
9 WHERE SetupEntityType =
10'CustomPermission')To query for all SetupEntityAccess rows with custom permissions:
1SELECT Id,ParentId,Parent.Name, SetupEntityId
2FROM SetupEntityAccess
3WHERE SetupEntityType='CustomPermission'
4AND ParentId
5IN (SELECT Id
6 FROM PermissionSet
7 WHERE isOwnedByProfile = false)