Session Key Management (Beta)
AIR Kit extends the standard EIP-1193 provider with custom RPC methods for advanced functionality.
air_listSessionKeyScopes
tsx
const scopes = await provider.request({
method: "air_listSessionKeyScopes",
params: [chainId] // optional chain ID
});
// Returns: ActionPolicyInfo[]
air_grantPermissions
tsx
const result = await provider.request({
method: "air_grantPermissions",
params: [policies] // ActionPolicyInfo[]
});
// Returns: { compressedSessionData: string, sessionOwnerPrivateKey: string, permissionIds: Hex[] }
air_revokePermission
tsx
const txHash = await provider.request({
method: "air_revokePermission",
params: [permissionId] // Hex
});
// Returns: string (transaction hash)
air_executeAction
tsx
const txHash = await provider.request({
method: 'air_executeAction',
params: [{
compressedSessionData: string,
sessionOwnerPrivateKey: string,
call: {
data?: Hex,
to: Address,
value?: bigint
}
}]
});
// Returns: string (transaction hash)