Skip to main content

Permissions

Pali supports EIP-2255-style permissions for EVM dapps.

Request permissions

const permissions = await window.ethereum.request({
method: 'wallet_requestPermissions',
params: [{ eth_accounts: {} }],
});

Most dapps can use eth_requestAccounts instead. Use wallet_requestPermissions when you want explicit permission objects and permitted-chain metadata.

Get permissions

const permissions = await window.ethereum.request({
method: 'wallet_getPermissions',
});

Revoke permissions

await window.ethereum.request({
method: 'wallet_revokePermissions',
params: [{ eth_accounts: {} }],
});

In Pali, revocation disconnects the dapp from the wallet. Treat this as a full site disconnect rather than granular partial permission editing.

Account switching

For blocking methods such as transaction sending and signing, Pali checks that the connected dapp account matches the account requested by the dapp. If the dapp sends a from address that is not the active connected account, Pali may prompt the user to switch the dapp connection.