watchAsset
Requests that the user tracks the token in their wallet. Returns a boolean indicating if the token was successfully added.
Usage
example.ts
import { walletClient } from './client'
const success = await walletClient.watchAsset({
type: 'ERC20',
options: {
address: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
decimals: 18,
symbol: 'WETH',
},
})
Returns
boolean
Boolean indicating if the token was successfully added.
Parameters
type
- Type:
string
Token type.
import { createWalletClient, custom } from 'viem'
import { mainnet } from 'viem/chains'
export const walletClient = createWalletClient({
chain: mainnet,
transport: custom(window.ethereum!),
})
// ---cut--
const success = await walletClient.watchAsset({
type: 'ERC20',
options: {
address: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
decimals: 18,
symbol: 'WETH',
},
});
options.address
- Type:
Address
The address of the token contract.
const success = await walletClient.watchAsset({
type: 'ERC20',
options: {
address: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
decimals: 18,
symbol: 'WETH',
},
});
options.decimals
- Type:
number
The number of token decimals.
const success = await walletClient.watchAsset({
type: 'ERC20',
options: {
address: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
decimals: 18,
symbol: 'WETH',
},
});
options.symbol
- Type:
string
A ticker symbol or shorthand, up to 11 characters.
const success = await walletClient.watchAsset({
type: 'ERC20',
options: {
address: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
decimals: 18,
symbol: 'WETH',
}
})
options.image
- Type:
string
A string url of the token logo.
const success = await walletClient.watchAsset({
type: 'ERC20',
options: {
address: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
decimals: 18,
symbol: 'WETH',
image: 'https://weth.com/icon.png',
}
})