> ## Documentation Index
> Fetch the complete documentation index at: https://developers.avacloud.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Changelog

### Jan 08th, 2025

**Signature Aggregator Endpoint Update**

<img src="https://mintcdn.com/avalabs-47ea3976/0zR1yC86HIu3y3oi/images/signature-aggregator.png?fit=max&auto=format&n=0zR1yC86HIu3y3oi&q=85&s=ed164fd07e521746c6042cb76d2fa81d" alt="Aggregated Transactions & Blocks" width="1200" height="625" data-path="images/signature-aggregator.png" />

📌  The `network` parameter has been added, allowing you to select between the following networks:

* `mainnet`
* `testnet` (Fuji)

This update allows you to aggregate signatures on either the `mainnet` or `Fuji testnet`, providing flexibility in signature aggregation depending on your environment.

Try it out [here](/data-api/signature-aggregator/aggregate-signatures)!

***

### Jan 08th, 2025

**🚀 New API Endpoints: Aggregated Transactions & Blocks Across L1 Chains & Avalanche C-Chain**

<img src="https://mintcdn.com/avalabs-47ea3976/0zR1yC86HIu3y3oi/images/aggregated-blocks-transactions.png?fit=max&auto=format&n=0zR1yC86HIu3y3oi&q=85&s=cbf1477eae81f39bfba5992de63a76e1" alt="Aggregated Transactions & Blocks" width="1984" height="1126" data-path="images/aggregated-blocks-transactions.png" />

We're excited to introduce **two new API endpoints** that provide **aggregated transaction and block data** across **all supported L1 chains and the Avalanche C-Chain**! These endpoints allow developers to **query, filter, and sort** blockchain data efficiently, unlocking powerful insights across multiple chains.

**📌 Get Started**

* [List Latest Blocks for All Supported EVM Chains](https://developers.avacloud.io/data-api/evm-chains/list-latest-blocks-for-all-supported-evm-chains)
* [List Latest Transactions for All Supported EVM Chains](https://developers.avacloud.io/data-api/evm-chains/list-latest-transactions-for-all-supported-evm-chains)

These enhancements **simplify multi-chain data retrieval**, making it easier for developers to **build cross-chain analytics, wallets, and monitoring tools**. Try them out today and streamline your blockchain data integration! 🚀

***

### Dec 20th, 2024

**Token Reputation Analysis 🛡️🔍**

<img src="https://mintcdn.com/avalabs-47ea3976/0zR1yC86HIu3y3oi/images/token-reputation.png?fit=max&auto=format&n=0zR1yC86HIu3y3oi&q=85&s=903f14e40002dccabe9690228797c83b" alt="Token Reputation Analysis" width="4461" height="1467" data-path="images/token-reputation.png" />

We’re thrilled to introduce Token Reputation Analysis, a new feature for identifying potential security risks with ERC20 tokens on the Avalanche C-Chain!

This update adds a new field, `tokenReputation`, to the [List ERC-20 balances](/data-api/evm-balances/list-erc-20-balances) response. The field categorizes tokens into the following reputations:

* `Benign`: Tokens considered safe based on security analysis.
* `Malicious`: Tokens flagged for suspicious activity, spam, or phishing.
* `null`: Reputation unknown.

**Example Usage**

Here’s an example API call:

```bash theme={null}
curl -X 'GET' \
  'https://glacier-api.avax.network/v1/chains/43114/addresses/0x51a679853D9582d29FF9e23ae336a0947BD0f337/balances:listErc20?pageSize=10&filterSpamTokens=true&currency=usd' \
  -H 'accept: application/json' | jq
```

As you can see in the response, the `$AVA` token is flagged as `Malicious`:

```json theme={null}
{
  "erc20TokenBalances": [
    {
      "ercType": "ERC-20",
      "chainId": "43114",
      "address": "0x397e48aF37b7d7660D0Aee74c35b2218D7EFca12",
      "name": "$AVA (https://avalaunch.farm)",
      "symbol": "$AVA",
      "decimals": 2,
      "balance": "8200000",
      "tokenReputation": "Malicious"
    },
    {
      "ercType": "ERC-20",
      "chainId": "43114",
      "address": "0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E",
      "name": "USD Coin",
      "symbol": "USDC",
      "decimals": 6,
      "balance": "1515448052896",
      "tokenReputation": "Benign"
    }
  ]
}
```

Try it out [here](/data-api/evm-balances/list-erc-20-balances)!

***

### Nov 25th, 2024

**Avalanche9000 (Etna Upgrade 🌋)**

<img src="https://mintcdn.com/avalabs-47ea3976/0zR1yC86HIu3y3oi/images/avalanche9000.jpeg?fit=max&auto=format&n=0zR1yC86HIu3y3oi&q=85&s=1e2171cd556025a03c52d6c585a51c64" alt="Avalanche9000" width="1500" height="500" data-path="images/avalanche9000.jpeg" />

**New endpoint to list L1 validators:**

* Added new endpoint to [list all or specific L1 validators](/data-api/primary-network/list-l1-validators)
* Filters include `L1ValidationID`, `SubnetID`, `NodeID`, and `IncludeInactiveL1Validators`.

**Updated transactions endpoint:**

* [List latest transactions on the primary network](/data-api/primary-network-transactions/list-latest-transactions) now supports `l1ValidationID` to fetch transactions linked to specific L1 validators (e.g., `ConvertSubnetToL1Tx`).
* L1 transactions are sorted in descending order with additional filters like `timestamp` and `txTypes`.

**Enhanced transaction properties:**

* P-Chain Transaction responses now include:
  * L1 validator details (`validationID`, `nodeID`, `weight`, `balances`, etc.).
  * Burned AVAX details for increasing L1 validator balance.
  * Validator manager details (`BlockchainID` and `ContractAddress`).

**New block properties:**

* P-Chain blocks now include:
  * `ActiveL1Validators` (total active L1 validators).
  * `L1ValidatorsAccruedFees` (fees from active L1 validators).

**New subnet properties:**

* Subnet details now have:
  * `IsL1` to indicate if a subnet has been converted to an L1.
  * Validator manager details for L1 subnets.

These changes support seamless management and visibility of L1 validators introduced in the Etna upgrade. For more details, see [here](/data-api/etna)

***

### Oct 25th, 2024

**Data API new endpoint - Listing networks an address has interacted with**

Returns a list of all networks on which an EVM address has had activity, filtering out networks with no activity for the provided address.

Endpoint: `GET https://glacier-api.avax.network/v1/chains/address/{address}`

[Gets the list of chains an address has interacted with](/data-api/evm-chains/get-chains-for-address).

Example response:

```json theme={null}
{
  "indexedChains": [
    {
      "chainId": "43114",
      "status": "OK",
      "chainName": "Avalanche (C-Chain)",
      "description": "The Contract Chain (C-Chain) runs on an Ethereum Virtual Machine and is used to deploy smart contracts and connect to dApps.",
      "platformChainId": "2q9e4r6Mu3U68nU1fYjgbR6JvwrRx36CohpAX5UQxse55x1Q5",
      "subnetId": "11111111111111111111111111111111LpoYY",
      "vmId": "mgj786NP7uDwBCcq6YwThhaN8FLyybkCa4zBWTQbNgmK6k9A6",
      "vmName": "EVM",
      "explorerUrl": "https://subnets.avax.network/c-chain",
      "rpcUrl": "https://api.avax.network/ext/bc/C/rpc",
      "wsUrl": "wss://api.avax.network/ext/bc/C/ws",
      "isTestnet": false,
      "utilityAddresses": {
        "multicall": "0xed386Fe855C1EFf2f843B910923Dd8846E45C5A4"
      },
      "networkToken": {
        "name": "Avalanche",
        "symbol": "AVAX",
        "decimals": 18,
        "logoUri": "https://images.ctfassets.net/gcj8jwzm6086/5VHupNKwnDYJvqMENeV7iJ/3e4b8ff10b69bfa31e70080a4b142cd0/avalanche-avax-logo.svg",
        "description": "AVAX is the native utility token of Avalanche. It’s a hard-capped, scarce asset that is used to pay for fees, secure the platform through staking, and provide a basic unit of account between the multiple Subnets created on Avalanche."
      },
      "chainLogoUri": "https://images.ctfassets.net/gcj8jwzm6086/5VHupNKwnDYJvqMENeV7iJ/3e4b8ff10b69bfa31e70080a4b142cd0/avalanche-avax-logo.svg",
      "private": false,
      "enabledFeatures": [
        "nftIndexing",
        "webhooks",
        "teleporter"
      ]
    },
    {
      "chainId": "43113",
      "status": "OK",
      "chainName": "Avalanche (C-Chain)",
      "description": "The Contract Chain on Avalanche's test subnet.",
      "platformChainId": "yH8D7ThNJkxmtkuv2jgBa4P1Rn3Qpr4pPr7QYNfcdoS6k6HWp",
      "subnetId": "11111111111111111111111111111111LpoYY",
      "vmId": "mgj786NP7uDwBCcq6YwThhaN8FLyybkCa4zBWTQbNgmK6k9A6",
      "vmName": "EVM",
      "explorerUrl": "https://subnets-test.avax.network/c-chain",
      "rpcUrl": "https://api.avax-test.network/ext/bc/C/rpc",
      "wsUrl": "wss://api.avax-test.network/ext/bc/C/ws",
      "isTestnet": true,
      "utilityAddresses": {
        "multicall": "0xE898101ffEF388A8DA16205249a7E4977d4F034c"
      },
      "networkToken": {
        "name": "Avalanche",
        "symbol": "AVAX",
        "decimals": 18,
        "logoUri": "https://images.ctfassets.net/gcj8jwzm6086/5VHupNKwnDYJvqMENeV7iJ/3e4b8ff10b69bfa31e70080a4b142cd0/avalanche-avax-logo.svg",
        "description": "AVAX is the native utility token of Avalanche. It’s a hard-capped, scarce asset that is used to pay for fees, secure the platform through staking, and provide a basic unit of account between the multiple Subnets created on Avalanche."
      },
      "chainLogoUri": "https://images.ctfassets.net/gcj8jwzm6086/5VHupNKwnDYJvqMENeV7iJ/3e4b8ff10b69bfa31e70080a4b142cd0/avalanche-avax-logo.svg",
      "private": false,
      "enabledFeatures": [
        "nftIndexing",
        "webhooks",
        "teleporter"
      ]
    },
    {
      "chainId": "779672",
      "status": "OK",
      "chainName": "Dispatch L1",
      "description": "Environment for testing Avalanche Warp Messaging and Teleporter.",
      "platformChainId": "2D8RG4UpSXbPbvPCAWppNJyqTG2i2CAXSkTgmTBBvs7GKNZjsY",
      "subnetId": "7WtoAMPhrmh5KosDUsFL9yTcvw7YSxiKHPpdfs4JsgW47oZT5",
      "vmId": "mDtV8ES8wRL1j2m6Kvc1qRFAvnpq4kufhueAY1bwbzVhk336o",
      "vmName": "EVM",
      "explorerUrl": "https://subnets-test.avax.network/dispatch",
      "rpcUrl": "https://subnets.avax.network/dispatch/testnet/rpc",
      "isTestnet": true,
      "utilityAddresses": {
        "multicall": "0xb35f163b70AbABeE69cDF40bCDA94df2c37d9df8"
      },
      "networkToken": {
        "name": "DIS",
        "symbol": "DIS",
        "decimals": 18,
        "logoUri": "https://images.ctfassets.net/gcj8jwzm6086/60XrKdf99PqQKrHiuYdwTE/908622f5204311dbb11be9c6008ead44/Dispatch_Subnet_Logo.png",
        "description": ""
      },
      "chainLogoUri": "https://images.ctfassets.net/gcj8jwzm6086/60XrKdf99PqQKrHiuYdwTE/908622f5204311dbb11be9c6008ead44/Dispatch_Subnet_Logo.png",
      "private": false,
      "enabledFeatures": [
        "teleporter"
      ]
    },
    {
      "chainId": "173750",
      "status": "OK",
      "chainName": "Echo L1",
      "description": "Environment for testing Avalanche Warp Messaging and Teleporter.",
      "platformChainId": "98qnjenm7MBd8G2cPZoRvZrgJC33JGSAAKghsQ6eojbLCeRNp",
      "subnetId": "i9gFpZQHPLcGfZaQLiwFAStddQD7iTKBpFfurPFJsXm1CkTZK",
      "vmId": "meq3bv7qCMZZ69L8xZRLwyKnWp6chRwyscq8VPtHWignRQVVF",
      "vmName": "EVM",
      "explorerUrl": "https://subnets-test.avax.network/echo",
      "rpcUrl": "https://subnets.avax.network/echo/testnet/rpc",
      "isTestnet": true,
      "utilityAddresses": {
        "multicall": "0x0E3a5F409eF471809cc67311674DDF7572415682"
      },
      "networkToken": {
        "name": "ECH",
        "symbol": "ECH",
        "decimals": 18,
        "logoUri": "https://images.ctfassets.net/gcj8jwzm6086/7kyTY75fdtnO6mh7f0osix/4c92c93dd688082bfbb43d5d910cbfeb/Echo_Subnet_Logo.png",
        "description": ""
      },
      "chainLogoUri": "https://images.ctfassets.net/gcj8jwzm6086/7kyTY75fdtnO6mh7f0osix/4c92c93dd688082bfbb43d5d910cbfeb/Echo_Subnet_Logo.png",
      "private": false,
      "enabledFeatures": [
        "teleporter"
      ]
    }
  ],
  "unindexedChains": []
}
```

***

### Sep 12th, 2024

**Data API new endpoint - List teleporter messages by address**

Endpoint: `GET https://glacier-api.avax.network/v1/teleporter/addresses/{address}/messages`

[Lists teleporter messages by address](/data-api/teleporter/list-teleporter-messages-address). Ordered by timestamp in descending order.

Example response:

```json theme={null}
{
    "messages": [{
        "messageId": "25e7bcf7304516a24f5ee597048ada3680dfa3264b27722b46b399da2180dea6",
        "teleporterContractAddress": "0x253b2784c75e510dD0fF1da844684a1aC0aa5fcf",
        "sourceBlockchainId": "2q9e4r6Mu3U68nU1fYjgbR6JvwrRx36CohpAX5UQxse55x1Q5",
        "destinationBlockchainId": "75babf9b4db10c46cd1c4cc28e199cc4acf4c64f78327ff6cda26b8785a7bb5d",
        "sourceEvmChainId": "43114",
        "destinationEvmChainId": "",
        "messageNonce": "29",
        "from": "0x573e623caCfDe4427C460Fc408aDD5AB21220FD7",
        "to": "0xB324bf38e6aFf06670EF649077062A7563b87fC5",
        "data": "00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000006626f6272696b0000000000000000000000000000000000000000000000000000",
        "messageExecuted": false,
        "receipts": [],
        "receiptDelivered": false,
        "rewardDetails": {
            "value": "0",
            "address": "0x0000000000000000000000000000000000000000",
            "ercType": "ERC-20",
            "name": "",
            "symbol": "",
            "decimals": 0
        },
        "status": "pending",
        "sourceTransaction": {
            "txHash": "0x7f5258b78964bc0f7b7abd1b3b99fb8665acb3d67e5ebe8fdf1b9e6ae6402b2a",
            "timestamp": 1722571442,
            "gasSpent": "3338675000000000"
        }
    }, {
        "messageId": "2c56bfe4c816ca2d8241bf7a76ade09cb1cc9ab52dbc7b774184ad7cc9fba2a8",
        "teleporterContractAddress": "0x253b2784c75e510dD0fF1da844684a1aC0aa5fcf",
        "sourceBlockchainId": "2q9e4r6Mu3U68nU1fYjgbR6JvwrRx36CohpAX5UQxse55x1Q5",
        "destinationBlockchainId": "2q9e4r6Mu3U68nU1fYjgbR6JvwrRx36CohpAX5UQxse55x1Q5",
        "sourceEvmChainId": "43114",
        "destinationEvmChainId": "43114",
        "messageNonce": "28",
        "from": "0x573e623caCfDe4427C460Fc408aDD5AB21220FD7",
        "to": "0xB324bf38e6aFf06670EF649077062A7563b87fC5",
        "data": "00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000006626f6272696b0000000000000000000000000000000000000000000000000000",
        "messageExecuted": false,
        "receipts": [],
        "receiptDelivered": false,
        "rewardDetails": {
            "value": "0",
            "address": "0x0000000000000000000000000000000000000000",
            "ercType": "ERC-20",
            "name": "",
            "symbol": "",
            "decimals": 0
        },
        "status": "pending",
        "sourceTransaction": {
            "txHash": "0xee1b6a56dca07cc35d01a912d0e80b1124f8986b1d375534ef651a822798e509",
            "timestamp": 1722570309,
            "gasSpent": "3338675000000000"
        }
    }]
}
```

***

### August 6th, 2024

**Data API new endpoint- Get L1 details by `subnetID`**

Endpoint: `GET https://glacier-api.avax.network/v1/networks/{network}/subnets/{subnetId}`

This endpoint retrieves detailed information about a specific L1/subnet registered on the network. By providing the network type (mainnet or a testnet) and the L1 ID, you can fetch various details including the subnet’s creation timestamp, ownership information, and associated blockchains.

Example response:

```JSON theme={null}
{
  "createBlockTimestamp": 1599696000,
  "createBlockIndex": "-1",
  "subnetId": "11111111111111111111111111111111LpoYY",
  "ownerAddresses": [
    ""
  ],
  "threshold": 0,
  "locktime": 0,
  "subnetOwnershipInfo": {
    "addresses": [
      "0"
    ],
    "locktime": 0,
    "threshold": null
  },
  "blockchains": [
    {
      "blockchainId": "11111111111111111111111111111111LpoYY"
    },
    {
      "blockchainId": "2oYMBNV4eNHyqk2fjjV5nVQLDbtmNJzq5s3qs3Lo6ftnC6FByM"
    },
    {
      "blockchainId": "2q9e4r6Mu3U68nU1fYjgbR6JvwrRx36CohpAX5UQxse55x1Q5"
    }
  ]
}
```

***

### May 21st, 2024

**Filter spam tokens and new endpoints for the primary network**

The following improvements have been made to the Glacier API:

* **EVM** <br />
  Remove Spam Tokens from Balances Endpoint

  Users can now pass in an optional query parameter `filterSpamTokens` when getting balances for a particular address to filter out balances of tokens that we've determined to be spam. By default, the route will now filter spam tokens unless `filterSpamTokens=false`.
  Try it out [here](/data-api/evm-balances/list-erc-20-balances)!

* **Primary Network** <br />
  In the [List Validators](/data-api/primary-network/list-validators) endpoint, users can now sort validators by Block Index, Delegation Capacity, Time Remaining, Delegation Fee, or Uptime Performance.

  Users can also filter by validator uptime performance using `minUptimePerformance` and `maxUptimePerformance` and by fee percentage using `minFeePercentage` and \`maxFeePercentage.

* **Webhooks** <br />
  A new [API endpoint](/webhooks-api/webhooks/list-adresses-by-webhook) has been added to enable users to list all addresses associated with a webhook.

***

### Aug  20th, 2024

**Webhook service launched**

With Glacier Webhooks, you can monitor real-time events on the Avalanche C-chain and L1s. For example, you can monitor smart contract events, track NFT transfers, and observe wallet-to-wallet transactions.

<img src="https://mintcdn.com/avalabs-47ea3976/0zR1yC86HIu3y3oi/images/webhooks.png?fit=max&auto=format&n=0zR1yC86HIu3y3oi&q=85&s=ee45e3165b9c7c74f85bf87bc248702e" alt="webhooks" width="3450" height="2234" data-path="images/webhooks.png" />

**Key Features:** <br />

* **Real-time notifications**: Receive immediate updates on specified on-chain activities without polling.
* **Customizable**: Specify the desired event type to listen for, customizing notifications according to individual requirements.
* **Secure**: Employ shared secrets and signature-based verification to guarantee that notifications originate from a trusted source.
* **Broad Coverage**: Support for C-chain mainnet, testnet, and L1s within the Avalanche ecosystem, ensuring wide-ranging monitoring capabilities.

**Use cases** <br />

* **NFT Marketplace Transactions**: Get alerts for NFT minting, transfers, auctions, bids, sales, and other interactions within NFT marketplaces.
* **Wallet Notifications**: Receive alerts when an address performs actions such as sending, receiving, swapping, or burning assets.
* **DeFi Activities**: Receive notifications for various DeFi activities such as liquidity provisioning, yield farming, borrowing, lending, and liquidations.

For further details, visit our:

* [Overview](/webhooks-api/overview)
* [Getting Started](/webhooks-api/getting-started)
