> ## Documentation Index
> Fetch the complete documentation index at: https://base-a060aa97-docs-add-b20-spec.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# IPolicyRegistry.updateBlocklist

> Generated B20 reference for updateBlocklist(uint64,bool,address[]).

[Related concept](/base-chain/specs/upgrades/beryl/b20/specification/concepts/policies-and-scopes)

## Signature

```solidity theme={null}
function updateBlocklist(uint64 policyId, bool blocked, address[] calldata accounts) external;
```

| Field               | Value                                    |
| ------------------- | ---------------------------------------- |
| Selector            | `0x5c4e51b8`                             |
| Canonical signature | `updateBlocklist(uint64,bool,address[])` |

## Description

Sets `accounts` membership in a BLOCKLIST policy to `blocked` in one batch.
Dev: Reverts with `PolicyNotFound` when `policyId` does not exist.
Dev: Reverts with `IncompatiblePolicyType` when the policy is not BLOCKLIST.
Dev: Reverts with `Unauthorized` when the caller is not the current admin.
Dev: Reverts with `BatchSizeTooLarge` when `accounts.length` exceeds the registry limit.
Param: policyId Policy to update.
Param: blocked  Membership state to apply to every account in the batch.
Param: accounts Accounts to update.

## Access control

Callable by the policy admin for the target policy.

## Policy interaction

This is part of the singleton PolicyRegistry surface used by B20 policy scopes.

## Example

```solidity theme={null}
IPolicyRegistry(target).updateBlocklist(arg0, arg1, arg2);
```

## Related

* [IPolicyRegistry reference](/base-chain/specs/upgrades/beryl/b20/specification/reference/interfaces/IPolicyRegistry)
* [Constants & addresses](/base-chain/specs/upgrades/beryl/b20/specification/reference/constants-and-addresses)
