Get supported permissions
ERC-7715 defines an RPC method that returns the execution permissions a wallet supports. Use the method to verify the available permission types and rules before sending requests.
Prerequisites
Request supported permissions
Request the supported execution permission types for a wallet with the
Wallet Client's getSupportedExecutionPermissions action.
- example.ts
- config.ts
import { walletClient } from "./config.ts";
const supportedPermissions = await walletClient.getSupportedExecutionPermissions();
// Example response:
// {
// "native-token-stream": {
// "chainIds": [
// "0x1",
// "0xa",
// ],
// "ruleTypes": [
// "expiry"
// ]
// },
// // ...
// }
import { createWalletClient, custom } from "viem";;
import { erc7715ProviderActions } from "@metamask/smart-accounts-kit/actions";
export const walletClient = createWalletClient({
transport: custom(window.ethereum),
}).extend(erc7715ProviderActions());