Skip to main content
Collection Access Control is Access Control used to restrict access to Documents within a Collection, as well as what users can see in the Admin Panel for that Collection. To add Access Control to a Collection, use the access property in your Collection Config:

Config Options

Access Control is specific to the operation of the request. To add Access Control to a Collection, use the access property in your Collection Config:
The following options are available: Every function except admin returns true, false, or a query that limits which documents the operation applies to.

Create

Returns a boolean which allows/denies access to the create request. To add create Access Control to a Collection, use the create property in the Collection Config:
The following arguments are provided to the create function:

Read

Returns a boolean which allows/denies access to the read request. To add read Access Control to a Collection, use the read property in the Collection Config:
Return a Query to limit the Documents to only those that match the constraint. This can be helpful to restrict users’ access to specific Documents. More details.
As your application becomes more complex, you may want to define your function in a separate file and import them into your Collection Config:
The following arguments are provided to the read function:

Update

Returns a boolean which allows/denies access to the update request. To add update Access Control to a Collection, use the update property in the Collection Config:
Return a Query to limit the Documents to only those that match the constraint. This can be helpful to restrict users’ access to specific Documents. More details.
As your application becomes more complex, you may want to define your function in a separate file and import them into your Collection Config:
The following arguments are provided to the update function:
For Collections with Drafts enabled, you can use update access to control who can publish by returning a query constraint on the _status field.

Delete

Similarly to the Update function, returns a boolean or a query constraint to limit which documents can be deleted by which users. To add delete Access Control to a Collection, use the delete property in the Collection Config:
As your application becomes more complex, you may want to define your function in a separate file and import them into your Collection Config:
The following arguments are provided to the delete function:
For Collections with Trash enabled, you can use the data argument to allow users to soft delete (trash) documents while restricting permanent deletion. See Trash Access Control for examples.

Admin

If the Collection is used to access the Admin Panel, the Admin Access Control function determines whether the currently logged-in user can access the admin UI. To add Admin Access Control to a Collection, use the admin property in the Collection Config:
The following arguments are provided to the admin function:

Unlock

Determines which users can unlock other users who may be blocked from authenticating successfully due to failing too many login attempts. To add Unlock Access Control to a Collection, use the unlock property in the Collection Config:
The following arguments are provided to the unlock function:

Read Versions

If the Collection has Versions enabled, the readVersions Access Control function determines whether or not the currently logged in user can access the version history of a Document. To add Read Versions Access Control to a Collection, use the readVersions property in the Collection Config:
Returning a Query will apply the constraint to the versions collection, not the original Collection.
The following arguments are provided to the readVersions function: