Skip to content

buildRevokeSessionKeyCall

buildRevokeSessionKeyCall(params): Promise<`0x${string}`>

Defined in: src/session/revoke.ts:261

Build the uninstallValidation(vId, deinitData, hookDeinitData) call that removes a session-key permission validator — a byte-exact reproduction of @zerodev/sdk’s uninstallPlugin inner call, which the SDK cannot call directly because it hardcodes the single-signer sendUserOperation path a weighted/passkey/MPC owner rejects.

Submit it yourself: single-signer owners via revokeSessionKey; weighted/passkey/MPC owners via their aggregate flow — account.encodeCalls([{ to: smartAccountAddress, value: 0n, data }])sendUserOperationWithSignatures.

Parameters

params

BuildRevokeSessionKeyCallParams

Returns

Promise<`0x${string}`>

Example

const data = await buildRevokeSessionKeyCall({
publicClient, sessionKeySigner, policies, smartAccountAddress,
});
const callData = await weightedAccount.encodeCalls([{ to: smartAccountAddress, value: 0n, data }]);
// …approveUserOperation per signer → sendUserOperationWithSignatures(callData, signatures)