{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "wallet_watchAsset",
  "params": {
    "type": "ERC20",
    "options": {
      "address": "0xA0b86a33E6776e1e627E5C82dF4C0cf77B8bb0c9",
      "symbol": "USDC",
      "decimals": 6,
      "image": "https://cryptologos.cc/logos/usd-coin-usdc-logo.png"
    }
  }
}
{
  "id": 1,
  "jsonrpc": "2.0",
  "result": true
}
Defined in EIP-747
Requests that the wallet tracks the given token in the user’s wallet. Once a token is added, it will be shown in the wallet’s token list.

Parameters

type
string
required
The asset type. Currently only “ERC20” is supported.
options
object
required
Token options object.

Returns

result
boolean
Returns true if the token was successfully added to the watch list.
{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "wallet_watchAsset",
  "params": {
    "type": "ERC20",
    "options": {
      "address": "0xA0b86a33E6776e1e627E5C82dF4C0cf77B8bb0c9",
      "symbol": "USDC",
      "decimals": 6,
      "image": "https://cryptologos.cc/logos/usd-coin-usdc-logo.png"
    }
  }
}
{
  "id": 1,
  "jsonrpc": "2.0",
  "result": true
}

Error Handling

CodeMessageDescription
4001User rejected the requestUser denied adding the token
4100Requested method not supportedThe method is not supported by the wallet
-32602Invalid paramsInvalid token parameters
Always verify the token contract address and ensure it’s a legitimate token to prevent users from adding malicious tokens.
The token will appear in the user’s wallet token list if successfully added.