Skip to main content

Advanced Permissions rules reference

When executing on a MetaMask user's behalf, you can add the following rule types for the supported permission types.

Use getSupportedExecutionPermissions to check which rule types are available for each permission type on each chain.

Expiry

Sets an expiration timestamp for the permission.

Parameters

NameTypeRequiredDescription
timestampnumberYesExpiration timestamp in Unix seconds.

Example

const currentTime = Math.floor(Date.now() / 1000)

const rules = [
{
type: 'expiry',
data: {
timestamp: currentTime + 604800,
},
},
]

Redeemer

Restricts permission redemption to specific addresses.

Parameters

NameTypeRequiredDescription
addressesAddress[]YesAddresses that are allowed to redeem the permission.

Example

const rules = [
{
type: 'redeemer',
data: {
addresses: ['0x...', '0x...'],
},
},
]

Payee

Restricts payments to specific receiver addresses.

Parameters

NameTypeRequiredDescription
addressesAddress[]YesAddresses that are allowed as payment recipients.

Example

const rules = [
{
type: 'payee',
data: {
addresses: ['0x...'],
},
},
]