Skip to main content

createSessionKey

Create a session key with limited permissions for delegated transactions. Automatically fetches configuration from Zyfai API and checks for existing active sessions.

Signature

createSessionKey(userAddress: string, chainId: SupportedChainId): Promise<SessionKeyResponse>

Parameters

ParameterTypeRequiredDescription
userAddressstringUser's EOA address
chainIdSupportedChainIdTarget chain ID

Returns

Session key response with signature and nonces

Return Type

interface SessionKeyResponse {
success: boolean;
signature?: Hex;
sessionNonces?: bigint[];
userId?: string;
message?: string;
alreadyActive?: boolean;
sessionActivation?: AddSessionKeyResponse;
}

Example

const result = await sdk.createSessionKey("0xUser...", 42161);
if (result.alreadyActive) {
console.log("Session key already exists");
} else {
console.log("Session key created:", result.signature);
}