UserFieldAccess
Represents the field-level security (FLS) for a specific user on a specific field, such as whether the user can read, create, or update the field.
View-Specific Information
A DurableId value is required to retrieve data from this view. To obtain this value:- Query the FieldDefinition view with a filter by object name or field name to get the relevant DurableId keys. The example below lists all fields on Account:
SELECT DeveloperName, DurableId FROM FieldDefinition WHERE EntityDefinitionId = 'Account'
- Query the standard User object to get the Ids for the users you want to audit:
SELECT Id FROM User
- Query UserFieldAccess by combining the FieldDefinition DurableId and the User Id, separated by a period (for example, FieldDefinition.DurableId + . + User.Id).
For instance, if the FieldDefinition DurableId is 'MyAccount' and the User Id is '0055Y00000AbCdEFG', the query filter is:
SELECT * FROM UserFieldAccess WHERE DurableId = 'MyAccount.0055Y00000AbCdEFG'
Columns
| Name | Type | References | Description |
| Id | String | Unique identifier for the record. | |
| DurableId | String | A composite key combining the field's DurableId (from FieldDefinition) and the User Id (for example, MyAccount.0055Y00000AbCdEF). | |
| UserId | String |
User.Id | Id of the User associated with this record. |
| IsUpdatable | Bool | Indicates whether the record has the Updatable characteristic. | |
| IsCreatable | Bool | Indicates whether the record has the Creatable characteristic. | |
| IsAccessible | Bool | Indicates whether the record has the Accessible characteristic. | |
| EntityDefinitionId | String | Id of the EntityDefinition associated with this record. | |
| FieldDefinitionId | String | Id of the FieldDefinition associated with this record. | |
| SOQL | String | Specifies the (Salesforce Object Query Language) SOQL query to execute against the Salesforce servers. If this pseudo column is set from the WHERE clause it will take precedence over the original query. | |
| ExternalIdColumn | String | Specifies the external Id column to use if performing an insert. If this value is specified, upsert will be used when the INSERT command is called. | |
| FilterScope | String | Optional scope to limit the records returned from queries. This property can take one of these values: Delegated, Everything, Mine, MineAndMyGroups, My_Territory, My_Team_Territory, or Team. |