> For the complete documentation index, see [llms.txt](/llms.txt).

# switchChain

Function to switch blockchain networks with Web3Auth.

## Usage[​](#usage "Direct link to Usage")

```
await web3auth.switchChain({ chainId: '0xaa36a7' })

```

## Parameters[​](#parameters "Direct link to Parameters")

- Table
- Function Definition

| Parameter           | Description                                                              | Type   | Required |
| ------------------- | ------------------------------------------------------------------------ | ------ | -------- |
| { chainId: string } | Chain ID of the chain to switch to, for example, { chainId: "0xaa36a7" } | Object | Yes      |

```
async switchChain(params: { chainId: string }): Promise<void> {
    if (this.status !== ADAPTER_STATUS.CONNECTED || !this.connectedAdapterName) throw WalletLoginError.notConnectedError(`No wallet is connected`);
    return this.walletAdapters[this.connectedAdapterName].switchChain(params);
}

```

## Example[​](#example "Direct link to Example")

switchChain.js

```
async function onConnected() {
  const chains = web3auth.coreOptions.chains ?? []
  const chainId = web3auth.currentChainId
  // Update UI with chainId and available chains
}

// Initialize Web3Auth first
await web3auth.init()

// Switch to Sepolia Testnet
try {
  await web3auth.switchChain({ chainId: '0xaa36a7' })
  await onConnected()
  console.log('Successfully switched to Sepolia Testnet')
} catch (error) {
  console.error('Error switching chain:', error)
}

```
