Represents a user’s access to a set of records. This object is read-only and is available in API version 24.0 and later.
| Field | Details |
|---|---|
| HasAllAccess | |
| HasDeleteAccess | |
| HasEditAccess | |
| HasTransferAccess | |
| HasReadAccess | |
| MaxAccessLevel | |
| RecordId | |
| UserId |
Use this object to query a user’s access to records. You cannot create, delete, or update any records using this object. Executing a SOQL SELECT query returns results for existing records to which the querying user has read access.
You can check access to records by querying on the access and the maximum access level.
The following sample query returns the records and whether the queried user has read and transfer access to each record, and the user’s maximum access level to each record.
SELECT RecordId, HasReadAccess, HasTransferAccess, MaxAccessLevel
FROM UserRecordAccess
WHERE UserId = [single ID]
AND RecordId = [single ID] //or Record IN [list of IDs]
The following query returns the records for which a queried user has read access to.
SELECT RecordId
FROM UserRecordAccess
WHERE UserId = [single ID]
AND RecordId = [single ID] //or Record IN [list of IDs]
AND HasReadAccess = true
When the running user is querying a user's access to a set of records, records that the running user does not have read access to are filtered out of the results.