Documentation Index
Fetch the complete documentation index at: https://etherspot.fyi/llms.txt
Use this file to discover all available pages before exploring further.
Before doing anything with the SDK, we must instantiate it.
This will set the sessionKey, chainId and all properties needed to authenticate and authorise the remote-signing
Step 1. set .env variables via export or in your .env
If you chose to use them directly skip to Step-2
export WALLET_PRIVATE_KEY=''
export CHAIN_ID=
export API_KEY=''
Step 2. Import the Etherspot RemoteSigner SDK.
import { RemoteSignerSdk } from '@etherspot/remote-signer';
Step 2. Instantiate the SDK with below initialisation properties using this block of code.
- privateKey
- ChainID
- etherspotWalletAddress
- sessionKey
- bundlerApiKey
import { privateKeyToAccount } from 'viem/accounts';
import { Account, Hex } from "viem";
import * as dotenv from 'dotenv';
import { createLocalAccount, EtherspotBundler, ExtendedLocalAccount, getViemAccount, RemoteSignerSdk, toRemoteSigner } from '@etherspot/remote-signer';
const externalViemAccount = privateKeyToAccount(process.env.WALLET_PRIVATE_KEY as string as Hex);
const bundlerProvider = new EtherspotBundler(chainId, bundlerApiKey);
const bundlerApiKey = process.env.API_KEY as string;
const sessionKey = ''; // sessionKey generated by modularSDK
const apiKey = process.env.API_KEY as string;
const etherspotWalletAddress = ''; // your etherspotModularWallet address
const chainId = Number(process.env.CHAIN_ID);
const remoteSignerSdk = await RemoteSignerSdk.create(externalViemAccount, {
etherspotWalletAddress: etherspotWalletAddress,
chainId: chainId,
apiKey: apiKey,
sessionKey: sessionKey,
bundlerProvider: bundlerProvider
});
And that’s it! You’re now ready to call any of the RemoteSigner SDK functions.
In the next page we’ll take a look at the various functions the SDK offers.