> ## Documentation Index
> Fetch the complete documentation index at: https://www.dynamic.xyz/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# listVaults

> Lists the Earn vaults enabled for your environment

## Function Signature

```typescript theme={"system"}
client.earn.listVaults(options?: {
  traceContext?: TraceContext;
}): Promise<EarnVaultSummary[]>
```

## Description

Returns every [Earn](https://www.dynamic.xyz/docs/earn/overview.md) vault enabled for your environment. Each summary carries the fields needed to browse vaults, including `vaultId`, `provider`, `chainId`, `chainName`, `assetSymbol`, `curator`, `netApy`, and `tvlUsd`. `netApy` and `tvlUsd` come from live market data on a best-effort basis, so both can be null when that data is unavailable.

Available as `client.earn` on `DynamicEvmWalletClient` and `DynamicSvmWalletClient`.

## Parameters

### Optional Parameters

* **`traceContext`** (`TraceContext`): Trace context forwarded to the Dynamic API.

## Returns

* **`Promise<EarnVaultSummary[]>`**: The vaults enabled for the environment. Empty when none are enabled.

## Example

```typescript theme={"system"}
import { authenticatedEvmClient } from './client';

const evmClient = await authenticatedEvmClient();
const vaults = await evmClient.earn.listVaults();

for (const vault of vaults) {
  console.log(`${vault.assetSymbol} by ${vault.curator} on chain ${vault.chainId}`);
}
```

## Error Handling

Fails with an HTTP 403 error when Earn is not enabled for your environment.

## See Also

* [Earn](https://www.dynamic.xyz/docs/node/earn.md)
* [getVaultDetails](https://www.dynamic.xyz/docs/node/reference/earn/get-vault-details.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.