# Asset Changes - Explained

> Dive into the Asset Changes API with this detailed example of simulating a transaction to swap 1 USDC for UNI using Uniswap V2.

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

<Info>
  The beauty of simulation is that we can use any `from` address!
</Info>

Let's simulate a transaction using the Asset Changes API and explain the results.

We will swap 1 USDC for UNI using Uniswap V2 as our example.

<CodeGroup>
  ```curl curl
  curl --location --request POST 'https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY' \
  --header 'Content-Type: application/json' \
  --data-raw '{
     "jsonrpc": "2.0",
     "method": "alchemy_simulateAssetChanges",
     "id": 1,
     "params": [
        {
            "from": "0x07Eee3bfdfA311f6f06D419C8cCcA08a6EfDD162",
            "to": "0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D",
            "value": "0x0",
            "data": "0x38ed173900000000000000000000000000000000000000000000000000000000000f4240000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000007eee3bfdfa311f6f06d419c8ccca08a6efdd162000000000000000000000000000000000000000000000000000000006b49d2000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb480000000000000000000000001f9840a85d5af5bf1d1762f925bdaddc4201f984"
        }
     ]
  }'
  ```
</CodeGroup>

<CodeGroup>
  ```json Response
  {
    "jsonrpc": "2.0",
    "id": 1,
    "result": {
      "changes": [
        {
          "assetType": "ERC20",
          "changeType": "TRANSFER",
          "from": "0x07eee3bfdfa311f6f06d419c8ccca08a6efdd162",
          "to": "0xebfb684dd2b01e698ca6c14f10e4f289934a54d6",
          "rawAmount": "1000000",
          "contractAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
          "tokenId": null,
          "decimals": 6,
          "symbol": "USDC",
          "name": "USD Coin",
          "logo": "https://alchemyapi-res.cloudinary.com/image/upload/v1764179958/docs/api-reference/alchemy-transact/transaction-simulation/3408.png",
          "amount": "1"
        },
        {
          "assetType": "ERC20",
          "changeType": "TRANSFER",
          "from": "0xebfb684dd2b01e698ca6c14f10e4f289934a54d6",
          "to": "0x07eee3bfdfa311f6f06d419c8ccca08a6efdd162",
          "rawAmount": "186275962091465171",
          "contractAddress": "0x1f9840a85d5af5bf1d1762f925bdaddc4201f984",
          "tokenId": null,
          "decimals": 18,
          "symbol": "UNI",
          "name": "Uniswap",
          "logo": "https://alchemyapi-res.cloudinary.com/image/upload/v1764180255/docs/tutorials/transactions/transaction-simulation/7083.png",
          "amount": "0.186275962091465171"
        }
      ],
      "error": null
    }
  }
  ```
</CodeGroup>

<Info>
  User address - `0x07eee3bfdfa311f6f06d419c8ccca08a6efdd162` USDC contract - `0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48` USDC / UNI pool - `0xEBFb684dD2b01E698ca6c14F10e4f289934a54D6` Uniswap RouterV2 - `0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D` UNI contract - `0x1f9840a85d5af5bf1d1762f925bdaddc4201f984`
</Info>

1. User (`from`) sends 1 USDC (`contractAddress`) to the Uniswap USDC / UNI pool (`to`).

   <CodeGroup>
     ```json json
     {
       "assetType": "ERC20",
       "changeType": "TRANSFER",
       "from": "0x07eee3bfdfa311f6f06d419c8ccca08a6efdd162",
       "to": "0xebfb684dd2b01e698ca6c14f10e4f289934a54d6",
       "contractAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
       "symbol": "USDC",
       "amount": "1"
     	...
     },
     ```
   </CodeGroup>

2. The USDC / UNI pool (`from`) sends 0.186 UNI (`contractAddress`) to the user (`to`).

   <CodeGroup>
     ```json json
     {
       "assetType": "ERC20",
       "changeType": "TRANSFER",
       "from": "0xebfb684dd2b01e698ca6c14f10e4f289934a54d6",
       "to": "0x07eee3bfdfa311f6f06d419c8ccca08a6efdd162",
       "contractAddress": "0x1f9840a85d5af5bf1d1762f925bdaddc4201f984",
       "symbol": "UNI",
       "amount": "0.186275962091465171"
     	...
     }
     ```
   </CodeGroup>

3. 1 USDC was swapped for 0.186 UNI 🎉