> For the complete documentation index, see [llms.txt](https://docs.augustdigital.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augustdigital.io/developers/typescript-sdk/api/augustsdk.md).

# AugustSDK

[SDK Reference](/developers/typescript-sdk/api.md) / AugustSDK

## AugustSDK

The main August SDK class.

Main SDK class for interacting with August Digital vaults and services. Provides unified access to EVM, Solana, Sui, and Stellar blockchain adapters.

**Extends:** `AugustBase`

### Constructors

#### Constructor

> **new AugustSDK**(`baseConfig`): [`AugustSDK`](#augustsdk)

Initialize the August SDK with provider configuration. Automatically sets up EVM adapter and optionally initializes Solana if RPC URL is provided.

**Parameters**

| Parameter    | Type          |
| ------------ | ------------- |
| `baseConfig` | `IAugustBase` |

**Returns**

[`AugustSDK`](#augustsdk)

**Overrides**

`AugustBase.constructor`

### Properties

| Property         | Modifier | Type                                                                                | Description                                   | Inherited from             |
| ---------------- | -------- | ----------------------------------------------------------------------------------- | --------------------------------------------- | -------------------------- |
| `activeNetwork?` | `public` | `IActiveNetwork`                                                                    | -                                             | `AugustBase.activeNetwork` |
| `appName`        | `public` | `string`                                                                            | Validated app-name slug from the constructor. | `AugustBase.appName`       |
| `authorized`     | `public` | `boolean`                                                                           | -                                             | `AugustBase.authorized`    |
| `evm`            | `public` | [`default`](/developers/typescript-sdk/api/evmadapter.md#default)                   | -                                             | -                          |
| `keys`           | `public` | `IKeys`                                                                             | -                                             | `AugustBase.keys`          |
| `monitoring`     | `public` | `IMonitoring`                                                                       | -                                             | `AugustBase.monitoring`    |
| `providers`      | `public` | `IProvidersConfig`                                                                  | -                                             | `AugustBase.providers`     |
| `solana`         | `public` | [`default`](/developers/typescript-sdk/api/solanaadapter.md#default)                | -                                             | -                          |
| `stellar`        | `public` | [`StellarAdapter`](/developers/typescript-sdk/api/stellaradapter.md#stellaradapter) | -                                             | -                          |
| `sui`            | `public` | [`default`](/developers/typescript-sdk/api/suiadapter.md#default)                   | -                                             | -                          |

**Accessors**

#### apiModule

**Get Signature**

> **get** **apiModule**(): [`AugustApi`](https://github.com/fractal-protocol/js-sdk/tree/main/docs/developers/javascript-sdk/api/modules/api/main.md#augustapi)

Get the backend API module instance ([AugustApi](https://github.com/fractal-protocol/js-sdk/tree/main/docs/developers/javascript-sdk/api/modules/api/main.md#augustapi)) — read-only access to backend-computed data with no on-chain equivalent (unrealized-PnL series).

**Returns**

[`AugustApi`](https://github.com/fractal-protocol/js-sdk/tree/main/docs/developers/javascript-sdk/api/modules/api/main.md#augustapi)

#### subAccountsModule

**Get Signature**

> **get** **subAccountsModule**(): [`AugustSubAccounts`](/developers/typescript-sdk/api/augustsubaccounts.md#augustsubaccounts)

Get the Sub-Accounts module instance.

**Returns**

[`AugustSubAccounts`](/developers/typescript-sdk/api/augustsubaccounts.md#augustsubaccounts)

#### vaultsModule

**Get Signature**

> **get** **vaultsModule**(): [`AugustVaults`](/developers/typescript-sdk/api/augustvaults.md#augustvaults)

Get the Vaults module instance.

**Returns**

[`AugustVaults`](/developers/typescript-sdk/api/augustvaults.md#augustvaults)

### Methods

#### clearWallet()

> **clearWallet**(): `void`

Clear the active wallet address from the SDK state and monitoring headers.

**Returns**

`void`

**Overrides**

`AugustBase.clearWallet`

#### fetchPointsLeaderboard()

> **fetchPointsLeaderboard**(`params?`): `Promise`<`any`>

Fetch the points leaderboard data.

**Parameters**

| Parameter         | Type                                                                                       | Description                                    |
| ----------------- | ------------------------------------------------------------------------------------------ | ---------------------------------------------- |
| `params?`         | { `page?`: `number`; `perPage?`: `number`; `sortBy?`: `"streakDays"` \| `"totalPoints"`; } | Optional parameters for pagination and sorting |
| `params.page?`    | `number`                                                                                   | -                                              |
| `params.perPage?` | `number`                                                                                   | -                                              |
| `params.sortBy?`  | `"streakDays"` \| `"totalPoints"`                                                          | -                                              |

**Returns**

`Promise`<`any`>

Leaderboard response data

#### getLatestUnrealizedPnl()

> **getLatestUnrealizedPnl**(): `Promise`<`IUnrealizedPnlSnapshot`\[]>

Fetch the latest unrealized-PnL snapshot for every tracked vault. Delegates to [AugustApi.getLatestUnrealizedPnl](https://github.com/fractal-protocol/js-sdk/tree/main/docs/developers/javascript-sdk/api/modules/api/main.md#getlatestunrealizedpnl) — see it for return shape and thrown errors.

**Returns**

`Promise`<`IUnrealizedPnlSnapshot`\[]>

#### getLayerZeroDeposits()

> **getLayerZeroDeposits**(`props`): `Promise`<`ILayerZeroDeposit`\[]>

Query LayerZero USDC deposits from the august-layerzero subgraphs. Returns all deposits or filters by sender wallet address if provided.

**Important Notes:**

* Only deposit transactions are tracked (not withdrawals or other operations)
* Sender and recipient addresses are stored in bytes32 format in the subgraph
* Timestamps are available from the subgraph

**Supported Vaults:**

* `upusdc`: 0x80E1048eDE66ec4c364b4F22C8768fc657FF6A42
* `coreusdc`: 0xE9B725010A9E419412ed67d0fA5f3A5f40159D32
* `earnausd`: 0x36eDbF0C834591BFdfCaC0Ef9605528c75c406aA

**Parameters**

| Parameter            | Type                                                                                            | Description                                                                                              |
| -------------------- | ----------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
| `props`              | { `receiptToken`: `"upusdc"` \| `"coreusdc"` \| `"earnausd"`; `wallet?`: `` `0x${string}` ``; } | Receipt token type ('upusdc', 'coreusdc', or 'earnausd') and optional wallet address to filter by sender |
| `props.receiptToken` | `"upusdc"` \| `"coreusdc"` \| `"earnausd"`                                                      | -                                                                                                        |
| `props.wallet?`      | `` `0x${string}` ``                                                                             | -                                                                                                        |

**Returns**

`Promise`<`ILayerZeroDeposit`\[]>

Array of deposit events with the following structure:

* `assetAmt`: Amount of assets deposited (as string)
* `shareAmt`: Amount of shares received (as string)
* `sender`: Sender address in bytes32 format
* `recipient`: Recipient address in bytes32 format
* `dstEid`: Destination endpoint ID (LayerZero chain identifier)
* `transactionHash_`: Transaction hash

**Throws**

Error if receipt token is invalid or GraphQL request fails

**Example**

```typescript
// Get all coreUSDC deposits
const allDeposits = await sdk.getLayerZeroDeposits({
  receiptToken: 'coreusdc'
});

// Get deposits for a specific wallet
const userDeposits = await sdk.getLayerZeroDeposits({
  receiptToken: 'upusdc',
  wallet: '0xb0280B58F541131b29D1B33319CD440a99eA0305'
});
```

#### getLayerZeroRedeems()

> **getLayerZeroRedeems**(`props?`): `Promise`<`ILayerZeroRedeem`\[]>

Get LayerZero redeems for earnAUSD vault

**Parameters**

| Parameter       | Type                                |
| --------------- | ----------------------------------- |
| `props?`        | { `wallet?`: `` `0x${string}` ``; } |
| `props.wallet?` | `` `0x${string}` ``                 |

**Returns**

`Promise`<`ILayerZeroRedeem`\[]>

**Example**

```typescript
// Get all earnAUSD redeems
const allRedeems = await sdk.getLayerZeroRedeems();

// Get redeems for a specific wallet
const userRedeems = await sdk.getLayerZeroRedeems({
  wallet: '0x2de1DCB8EaAd40fAd327fa3eE3F48774b8e20649'
});
```

#### getPrice()

> **getPrice**(`symbol`): `Promise`<`number`>

Get the current USD price of a token by symbol or contract address. Falls back to CoinGecko if primary price source fails.

**Parameters**

| Parameter | Type     | Description                      |
| --------- | -------- | -------------------------------- |
| `symbol`  | `string` | Token symbol or contract address |

**Returns**

`Promise`<`number`>

Current price in USD

#### getSwapRouterEligibleVaults()

> **getSwapRouterEligibleVaults**(`chainId`, `options?`): `Promise`<`` `0x${string}` ``\[]>

Resolve the vaults currently eligible for the any-token `SwapRouter` deposit surface on a chain — every vault the router has `enableVault`-ed whose on-chain registration is still live.

Delegates to [AugustVaults.getSwapRouterEligibleVaults](/developers/typescript-sdk/api/augustvaults.md#getswaproutereligiblevaults), which reconstructs the set from the router's `VaultEnabled` events and verifies each vault's current `vaultInfo` registration (not enumerable). Returns `[]` when no router is deployed on `chainId` or no provider is configured for it. On-chain eligibility only — app-level policy (e.g. OVault exclusions) remains the caller's responsibility.

**Parameters**

| Parameter            | Type                        | Description                                                   |
| -------------------- | --------------------------- | ------------------------------------------------------------- |
| `chainId`            | `number`                    | EVM chain ID to resolve eligible vaults for.                  |
| `options?`           | { `fromBlock?`: `number`; } | Optional `fromBlock` to override the deploy-block scan floor. |
| `options.fromBlock?` | `number`                    | -                                                             |

**Returns**

`Promise`<`` `0x${string}` ``\[]>

Checksummed eligible vault addresses; `[]` when unavailable.

**Throws**

AugustSDKError when an `eth_getLogs` scan chunk fails.

**Example**

```ts
const vaults = await augustSdk.getSwapRouterEligibleVaults(1);
```

#### getSwapRouterWhitelistedTokens()

> **getSwapRouterWhitelistedTokens**(`chainId`, `options?`): `Promise`<`` `0x${string}` ``\[]>

Resolve the ERC-20 tokens currently whitelisted for the `SwapRouter` on a chain — the any-token set a deposit UI can offer as swap-and-deposit inputs.

Delegates to [AugustVaults.getSwapRouterWhitelistedTokens](/developers/typescript-sdk/api/augustvaults.md#getswaprouterwhitelistedtokens), which reconstructs the set from the router's `TokenEnabled` events and verifies each against the on-chain `whitelistedTokens` mapping (not enumerable). Returns `[]` when no router is deployed on `chainId` or no provider is configured for it.

**Parameters**

| Parameter            | Type                        | Description                                                   |
| -------------------- | --------------------------- | ------------------------------------------------------------- |
| `chainId`            | `number`                    | EVM chain ID to resolve the allowlist for.                    |
| `options?`           | { `fromBlock?`: `number`; } | Optional `fromBlock` to override the deploy-block scan floor. |
| `options.fromBlock?` | `number`                    | -                                                             |

**Returns**

`Promise`<`` `0x${string}` ``\[]>

Checksummed whitelisted token addresses; `[]` when unavailable.

**Throws**

AugustSDKError when an `eth_getLogs` scan chunk fails.

**Example**

```ts
const tokens = await augustSdk.getSwapRouterWhitelistedTokens(1);
```

#### getTotalDeposited()

> **getTotalDeposited**(`options?`): `Promise`<`number`>

**Parameters**

| Parameter                  | Type                                                            |
| -------------------------- | --------------------------------------------------------------- |
| `options?`                 | { `loadSnapshots?`: `boolean`; `loadSubaccounts?`: `boolean`; } |
| `options.loadSnapshots?`   | `boolean`                                                       |
| `options.loadSubaccounts?` | `boolean`                                                       |

**Returns**

`Promise`<`number`>

#### getUserPoints()

> **getUserPoints**(`userAddress`): `Promise`<`any`>

Get user points from the backend API. This fetches processed points data directly from the backend, removing the need for client-side points calculation.

**Parameters**

| Parameter     | Type                | Description         |
| ------------- | ------------------- | ------------------- |
| `userAddress` | `` `0x${string}` `` | User wallet address |

**Returns**

`Promise`<`any`>

Points data from the backend API

#### getVault()

> **getVault**(`props`): `Promise`<`IVault`>

Fetch detailed information for a specific vault.

**Parameters**

| Parameter                | Type                                                                                                                                                                                                                         | Description                                              |
| ------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| `props`                  | { `chainId?`: `number`; `loadSnapshots?`: `boolean`; `loadSubaccounts?`: `boolean`; `options?`: [`IVaultCustomOptions`](/developers/typescript-sdk/api/augustvaults.md#ivaultcustomoptions); `vault`: `` `0x${string}` ``; } | Vault address, chain ID, and optional enrichment options |
| `props.chainId?`         | `number`                                                                                                                                                                                                                     | -                                                        |
| `props.loadSnapshots?`   | `boolean`                                                                                                                                                                                                                    | -                                                        |
| `props.loadSubaccounts?` | `boolean`                                                                                                                                                                                                                    | -                                                        |
| `props.options?`         | [`IVaultCustomOptions`](/developers/typescript-sdk/api/augustvaults.md#ivaultcustomoptions)                                                                                                                                  | -                                                        |
| `props.vault`            | `` `0x${string}` ``                                                                                                                                                                                                          | -                                                        |

**Returns**

`Promise`<`IVault`>

Single vault object with full metadata

#### getVaultActivity()

> **getVaultActivity**(`props`): `Promise`<`IVaultUserHistoryItem`\[]>

Get a vault's deposit/withdrawal activity across every participant.

The vault-wide counterpart to [AugustSDK.getVaultUserHistory](#getvaultuserhistory) — use it to answer flow questions ("how many deposits in the last 7 days", "net flow this week") that point-in-time TVL cannot. Reads from the Goldsky subgraph, paginated so busy vaults are not truncated; a `sinceTs` window keeps short lookbacks cheap.

**Parameters**

| Parameter        | Type                                                                                                                                                                                            | Description                                                                                                        |
| ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| `props`          | { `chainId?`: `number`; `sinceTs?`: `number`; `types?`: (`"deposit"` \| `"withdraw-request"` \| `"withdraw-processed"` \| `"redeem"`)\[]; `untilTs?`: `number`; `vault`: `` `0x${string}` ``; } | Vault address, optional chain id, optional `sinceTs`/`untilTs` Unix-second bounds, and an optional `types` filter. |
| `props.chainId?` | `number`                                                                                                                                                                                        | -                                                                                                                  |
| `props.sinceTs?` | `number`                                                                                                                                                                                        | -                                                                                                                  |
| `props.types?`   | (`"deposit"` \| `"withdraw-request"` \| `"withdraw-processed"` \| `"redeem"`)\[]                                                                                                                | -                                                                                                                  |
| `props.untilTs?` | `number`                                                                                                                                                                                        | -                                                                                                                  |
| `props.vault`    | `` `0x${string}` ``                                                                                                                                                                             | -                                                                                                                  |

**Returns**

`Promise`<`IVaultUserHistoryItem`\[]>

Array of activity items (oldest-first) with normalized amounts, actor addresses, event type, and transaction hashes.

**Throws**

If `vault` is not a valid address or no chain id can be resolved.

**Example**

```ts
const weekAgo = Math.floor(Date.now() / 1000) - 7 * 86_400;
const items = await sdk.getVaultActivity({ vault, chainId: 143, sinceTs: weekAgo });
```

#### getVaultAllocations()

> **getVaultAllocations**(`props`): `Promise`<`IVaultAllocations` | { `message`: `string`; `status`: `number`; }>

Get vault asset allocations across DeFi protocols, CeFi, and OTC positions.

**Parameters**

| Parameter        | Type                                                    | Description                |
| ---------------- | ------------------------------------------------------- | -------------------------- |
| `props`          | { `chainId?`: `number`; `vault`: `` `0x${string}` ``; } | Vault address and chain ID |
| `props.chainId?` | `number`                                                | -                          |
| `props.vault`    | `` `0x${string}` ``                                     | -                          |

**Returns**

`Promise`<`IVaultAllocations` | { `message`: `string`; `status`: `number`; }>

Detailed breakdown of vault allocations by category

#### ~~getVaultAnnualizedApy()~~

> **getVaultAnnualizedApy**(`props`): `Promise`<`IVaultAnnualizedApy`>

Get annualized APY metrics for a vault.

Supported Vaults: cUSDO, tETH, wstETH, rsETH

**Parameters**

| Parameter     | Type                              | Description   |
| ------------- | --------------------------------- | ------------- |
| `props`       | { `vault`: `` `0x${string}` ``; } | Vault address |
| `props.vault` | `` `0x${string}` ``               | -             |

**Returns**

`Promise`<`IVaultAnnualizedApy`>

Annualized APY data including liquidity APY

**Deprecated**

The `hgETH30dLiquidAPY` and `hgETH7dLiquidAPY` response fields are deprecated. These fields will be removed on 2026-01-01. Use `liquidAPY30Day` and `liquidAPY7Day` fields instead.

#### ~~getVaultApy()~~

> **getVaultApy**(`props`): `Promise`<`object`\[]>

Get current or historical APY for a vault.

**Parameters**

| Parameter                   | Type                                                                        | Description                                           |
| --------------------------- | --------------------------------------------------------------------------- | ----------------------------------------------------- |
| `props`                     | { `historical?`: { `daysAgo?`: `number`; }; `vault`: `` `0x${string}` ``; } | Vault address and optional historical lookback period |
| `props.historical?`         | { `daysAgo?`: `number`; }                                                   | -                                                     |
| `props.historical.daysAgo?` | `number`                                                                    | -                                                     |
| `props.vault`               | `` `0x${string}` ``                                                         | -                                                     |

**Returns**

`Promise`<`object`\[]>

APY data including rewards breakdown

**Deprecated**

use getVaultHistoricalTimeseries instead

#### getVaultAvailableRedemptions()

> **getVaultAvailableRedemptions**(`props`): `Promise`<{ `availableRedemptions`: `IVaultAvailableRedemption`\[]; `pendingRedemptions`: `IVaultAvailableRedemption`\[]; `processedWithdrawals`: `ISubgraphWithdrawProccessed`\[]; `requestedWithdrawals`: `ISubgraphWithdrawRequest`\[]; }>

Get redemption requests that are ready to be claimed.

**Parameters**

| Parameter        | Type                                                                                                           | Description                                         |
| ---------------- | -------------------------------------------------------------------------------------------------------------- | --------------------------------------------------- |
| `props`          | { `chainId?`: `number`; `vault`: `` `0x${string}` ``; `verbose?`: `boolean`; `wallet?`: `` `0x${string}` ``; } | Vault address, chain ID, and optional wallet filter |
| `props.chainId?` | `number`                                                                                                       | -                                                   |
| `props.vault`    | `` `0x${string}` ``                                                                                            | -                                                   |
| `props.verbose?` | `boolean`                                                                                                      | -                                                   |
| `props.wallet?`  | `` `0x${string}` ``                                                                                            | -                                                   |

**Returns**

`Promise`<{ `availableRedemptions`: `IVaultAvailableRedemption`\[]; `pendingRedemptions`: `IVaultAvailableRedemption`\[]; `processedWithdrawals`: `ISubgraphWithdrawProccessed`\[]; `requestedWithdrawals`: `ISubgraphWithdrawRequest`\[]; }>

Array of available redemption requests with amounts and timestamps

#### getVaultBorrowerHealthFactor()

> **getVaultBorrowerHealthFactor**(`props?`): `Promise`<`Record`<`string`, `IVaultBorrowerHealthFactor`\[]> | `Record`<`string`, `IVaultBorrowerHealthFactor`\[]>\[]>

Get the borrower's health factor by vault.

Pass `vault` whenever the caller knows which pool it cares about — it skips the all-vaults cross-chain fanout and only reads the loans for that one pool. The response map is keyed by **lowercased** vault address; look entries up with `address.toLowerCase()`.

**Parameters**

| Parameter        | Type                                                     | Description                                                                                                          |
| ---------------- | -------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `props?`         | { `chainId?`: `number`; `vault?`: `` `0x${string}` ``; } | -                                                                                                                    |
| `props.chainId?` | `number`                                                 | Optional chain to scope the read to.                                                                                 |
| `props.vault?`   | `` `0x${string}` ``                                      | Optional vault address. When provided alongside `chainId`, only that vault's borrower-health-factor data is fetched. |

**Returns**

`Promise`<`Record`<`string`, `IVaultBorrowerHealthFactor`\[]> | `Record`<`string`, `IVaultBorrowerHealthFactor`\[]>\[]>

Object containing the borrower's health factor by vault.

#### getVaultHistoricalTimeseries()

> **getVaultHistoricalTimeseries**(`props`): `Promise`<`IHistoricalTimeseriesResponse`>

Get historical timeseries data for a vault.

**Parameters**

| Parameter      | Type                                                  | Description                               |
| -------------- | ----------------------------------------------------- | ----------------------------------------- |
| `props`        | { `nDays?`: `number`; `vault`: `` `0x${string}` ``; } | Vault address and optional number of days |
| `props.nDays?` | `number`                                              | -                                         |
| `props.vault`  | `` `0x${string}` ``                                   | -                                         |

**Returns**

`Promise`<`IHistoricalTimeseriesResponse`>

Historical timeseries data with TVL, APY, PnL, share price, and other metrics

#### getVaultLoans()

> **getVaultLoans**(`props`): `Promise`<`IVaultLoan`\[]>

Get active loans deployed from a vault.

**Parameters**

| Parameter        | Type                                                    | Description                |
| ---------------- | ------------------------------------------------------- | -------------------------- |
| `props`          | { `chainId?`: `number`; `vault`: `` `0x${string}` ``; } | Vault address and chain ID |
| `props.chainId?` | `number`                                                | -                          |
| `props.vault`    | `` `0x${string}` ``                                     | -                          |

**Returns**

`Promise`<`IVaultLoan`\[]>

Array of loan details including borrower, principal, APR

#### getVaultPnl()

> **getVaultPnl**(`props`): `Promise`<`IVaultPnl`>

Get PnL for a vault (vault-level, not user-specific). Returns the vault's overall profit and loss across all users.

**Parameters**

| Parameter        | Type                                                    | Description                         |
| ---------------- | ------------------------------------------------------- | ----------------------------------- |
| `props`          | { `chainId?`: `number`; `vault`: `` `0x${string}` ``; } | Vault address and optional chain ID |
| `props.chainId?` | `number`                                                | -                                   |
| `props.vault`    | `` `0x${string}` ``                                     | -                                   |

**Returns**

`Promise`<`IVaultPnl`>

Vault PnL in USD and notional value

#### getVaultPositions()

> **getVaultPositions**(`props`): `Promise`<`IVaultPosition`\[]>

Get user positions across vaults including shares and claimable redemptions. Supports both EVM and Solana vaults.

**Parameters**

| Parameter              | Type                                                                                                                                                                                                                                                                              | Description                                         |
| ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------- |
| `props`                | { `chainId?`: `number`; `options?`: [`IVaultBaseOptions`](/developers/typescript-sdk/api/augustvaults.md#ivaultbaseoptions); `showAllVaults?`: `boolean`; `solanaWallet?`: `string`; `stellarWallet?`: `string`; `vault?`: `` `0x${string}` ``; `wallet?`: `` `0x${string}` ``; } | Wallet address, chain ID, and optional vault filter |
| `props.chainId?`       | `number`                                                                                                                                                                                                                                                                          | -                                                   |
| `props.options?`       | [`IVaultBaseOptions`](/developers/typescript-sdk/api/augustvaults.md#ivaultbaseoptions)                                                                                                                                                                                           | -                                                   |
| `props.showAllVaults?` | `boolean`                                                                                                                                                                                                                                                                         | -                                                   |
| `props.solanaWallet?`  | `string`                                                                                                                                                                                                                                                                          | -                                                   |
| `props.stellarWallet?` | `string`                                                                                                                                                                                                                                                                          | -                                                   |
| `props.vault?`         | `` `0x${string}` ``                                                                                                                                                                                                                                                               | -                                                   |
| `props.wallet?`        | `` `0x${string}` ``                                                                                                                                                                                                                                                               | -                                                   |

**Returns**

`Promise`<`IVaultPosition`\[]>

Array of positions with balances and pending redemptions

#### getVaultRedemptionHistory()

> **getVaultRedemptionHistory**(`props`): `Promise`<`IVaultRedemptionHistoryItem`\[]>

Get historical redemption requests for a vault (settled, cancelled, pending-but-out-of-window), optionally filtered to one wallet.

**Parameters**

| Parameter               | Type                                                                                                                 | Description                                                                                          |
| ----------------------- | -------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| `props`                 | { `chainId?`: `number`; `lookbackBlocks?`: `number`; `vault`: `` `0x${string}` ``; `wallet?`: `` `0x${string}` ``; } | Vault address, chain ID, optional wallet, and an optional `lookbackBlocks` for how far back to scan. |
| `props.chainId?`        | `number`                                                                                                             | -                                                                                                    |
| `props.lookbackBlocks?` | `number`                                                                                                             | -                                                                                                    |
| `props.vault`           | `` `0x${string}` ``                                                                                                  | -                                                                                                    |
| `props.wallet?`         | `` `0x${string}` ``                                                                                                  | -                                                                                                    |

**Returns**

`Promise`<`IVaultRedemptionHistoryItem`\[]>

Historical redemption records, newest first.

#### getVaults()

> **getVaults**(`options?`): `Promise`<`IVault`\[]>

Fetch all available vaults across configured networks. Optionally filter by chain IDs and include loan/allocation data.

**Parameters**

| Parameter  | Type                                                                                                   | Description                                          |
| ---------- | ------------------------------------------------------------------------------------------------------ | ---------------------------------------------------- |
| `options?` | `object` & [`IVaultCustomOptions`](/developers/typescript-sdk/api/augustvaults.md#ivaultcustomoptions) | Configuration for filtering and enriching vault data |

**Returns**

`Promise`<`IVault`\[]>

Array of vault objects with metadata and optional position data

#### getVaultStakingPositions()

> **getVaultStakingPositions**(`props`): `Promise`<`IActiveStakingPosition`\[]>

Get user's staking positions for vault receipt tokens.

**Parameters**

| Parameter        | Type                                                      | Description                          |
| ---------------- | --------------------------------------------------------- | ------------------------------------ |
| `props`          | { `chainId?`: `number`; `wallet?`: `` `0x${string}` ``; } | Wallet address and optional chain ID |
| `props.chainId?` | `number`                                                  | -                                    |
| `props.wallet?`  | `` `0x${string}` ``                                       | -                                    |

**Returns**

`Promise`<`IActiveStakingPosition`\[]>

Array of staking positions with rewards

#### getVaultSummary()

> **getVaultSummary**(`props`): `Promise`<`IVaultSummary`>

Get summary data for a vault (name, type, chain, recent returns).

**Parameters**

| Parameter     | Type                              | Description   |
| ------------- | --------------------------------- | ------------- |
| `props`       | { `vault`: `` `0x${string}` ``; } | Vault address |
| `props.vault` | `` `0x${string}` ``               | -             |

**Returns**

`Promise`<`IVaultSummary`>

Vault summary data

#### getVaultTvl()

> **getVaultTvl**(`props`): `Promise`<`object`\[]>

Get current or historical TVL for a vault.

**Parameters**

| Parameter           | Type                                                                                             | Description                                      |
| ------------------- | ------------------------------------------------------------------------------------------------ | ------------------------------------------------ |
| `props`             | { `chainId?`: `number`; `historical?`: `IVaultHistoricalParams`; `vault`: `` `0x${string}` ``; } | Vault address and optional historical parameters |
| `props.chainId?`    | `number`                                                                                         | -                                                |
| `props.historical?` | `IVaultHistoricalParams`                                                                         | -                                                |
| `props.vault`       | `` `0x${string}` ``                                                                              | -                                                |

**Returns**

`Promise`<`object`\[]>

TVL in vault's base asset units

#### getVaultUnrealizedPnlHistory()

> **getVaultUnrealizedPnlHistory**(`params`): `Promise`<`IUnrealizedPnlSnapshot`\[]>

Fetch the historical unrealized-PnL series for a vault, newest first. Delegates to [AugustApi.getVaultUnrealizedPnlHistory](https://github.com/fractal-protocol/js-sdk/tree/main/docs/developers/javascript-sdk/api/modules/api/main.md#getvaultunrealizedpnlhistory) — see it for parameter semantics and thrown errors.

**Parameters**

| Parameter       | Type                                       |
| --------------- | ------------------------------------------ |
| `params`        | { `limit?`: `number`; `vault`: `string`; } |
| `params.limit?` | `number`                                   |
| `params.vault`  | `string`                                   |

**Returns**

`Promise`<`IUnrealizedPnlSnapshot`\[]>

#### getVaultUserHistory()

> **getVaultUserHistory**(`props`): `Promise`<`IVaultUserHistoryItem`\[]>

Get user's historical vault interactions including deposits and withdrawals.

**Parameters**

| Parameter        | Type                                                                                                                                                                                         | Description                                     |
| ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- |
| `props`          | { `chainId?`: `number`; `options?`: [`IVaultBaseOptions`](/developers/typescript-sdk/api/augustvaults.md#ivaultbaseoptions); `vault?`: `` `0x${string}` ``; `wallet`: `` `0x${string}` ``; } | Wallet address and optional vault/chain filters |
| `props.chainId?` | `number`                                                                                                                                                                                     | -                                               |
| `props.options?` | [`IVaultBaseOptions`](/developers/typescript-sdk/api/augustvaults.md#ivaultbaseoptions)                                                                                                      | -                                               |
| `props.vault?`   | `` `0x${string}` ``                                                                                                                                                                          | -                                               |
| `props.wallet`   | `` `0x${string}` ``                                                                                                                                                                          | -                                               |

**Returns**

`Promise`<`IVaultUserHistoryItem`\[]>

Array of historical transactions with amounts and timestamps

#### getVaultUserLifetimePnl()

> **getVaultUserLifetimePnl**(`props`): `Promise`<`IVaultUserLifetimePnl`>

Get lifetime PnL for a user in a specific vault. Calculates realized and unrealized PnL based on deposit/withdrawal history and current position.

**Parameters**

| Parameter        | Type                                                                                   | Description                                          |
| ---------------- | -------------------------------------------------------------------------------------- | ---------------------------------------------------- |
| `props`          | { `chainId?`: `number`; `vault`: `` `0x${string}` ``; `wallet`: `` `0x${string}` ``; } | Vault address, wallet address, and optional chain ID |
| `props.chainId?` | `number`                                                                               | -                                                    |
| `props.vault`    | `` `0x${string}` ``                                                                    | -                                                    |
| `props.wallet`   | `` `0x${string}` ``                                                                    | -                                                    |

**Returns**

`Promise`<`IVaultUserLifetimePnl`>

Lifetime PnL data including realized and unrealized PnL in both native token and USD

#### getVaultUserTransfers()

> **getVaultUserTransfers**(`props`): `Promise`<`object`\[]>

Get user's vault share transfer history from subgraph.

**Parameters**

| Parameter        | Type                                                                                                                                                                                         | Description                                     |
| ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- |
| `props`          | { `chainId?`: `number`; `options?`: [`IVaultBaseOptions`](/developers/typescript-sdk/api/augustvaults.md#ivaultbaseoptions); `vault?`: `` `0x${string}` ``; `wallet`: `` `0x${string}` ``; } | Wallet address and optional vault/chain filters |
| `props.chainId?` | `number`                                                                                                                                                                                     | -                                               |
| `props.options?` | [`IVaultBaseOptions`](/developers/typescript-sdk/api/augustvaults.md#ivaultbaseoptions)                                                                                                      | -                                               |
| `props.vault?`   | `` `0x${string}` ``                                                                                                                                                                          | -                                               |
| `props.wallet`   | `` `0x${string}` ``                                                                                                                                                                          | -                                               |

**Returns**

`Promise`<`object`\[]>

Array of transfer events

#### getVaultWithdrawals()

> **getVaultWithdrawals**(`props`): `Promise`<`IVaultWithdrawals`>

Get withdrawal summary and pending queue for a vault.

**Parameters**

| Parameter        | Type                                                    | Description                         |
| ---------------- | ------------------------------------------------------- | ----------------------------------- |
| `props`          | { `chainId?`: `number`; `vault`: `` `0x${string}` ``; } | Vault address and optional chain ID |
| `props.chainId?` | `number`                                                | -                                   |
| `props.vault`    | `` `0x${string}` ``                                     | -                                   |

**Returns**

`Promise`<`IVaultWithdrawals`>

Withdrawal summary and pending queue

#### getYieldLastRealizedOn()

> **getYieldLastRealizedOn**(`props`): `Promise`<`number`>

Get the timestamp when yield was last realized for a vault.

**Parameters**

| Parameter        | Type                                                    | Description                         |
| ---------------- | ------------------------------------------------------- | ----------------------------------- |
| `props`          | { `chainId?`: `number`; `vault`: `` `0x${string}` ``; } | Vault address and optional chain ID |
| `props.chainId?` | `number`                                                | -                                   |
| `props.vault`    | `` `0x${string}` ``                                     | -                                   |

**Returns**

`Promise`<`number`>

Timestamp (Unix timestamp in seconds) when yield was last realized

#### init()

> **init**(): `Promise`<`void`>

Verify API keys and authorize SDK usage. TODO: initialize class with appropriate keys and verify august key

**Returns**

`Promise`<`void`>

**Inherited from**

`AugustBase.init`

#### previewRedemption()

> **previewRedemption**(`props`): `Promise`<`INormalizedNumber`>

Preview the amount of assets that would be received for redeeming shares (queued redemption).

**Parameters**

| Parameter            | Type                                                                                                      | Description                                                  |
| -------------------- | --------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ |
| `props`              | { `chainId?`: `number`; `sharesAmount`: `string` \| `number` \| `bigint`; `vault`: `` `0x${string}` ``; } | Vault contract address, shares amount, and optional chain ID |
| `props.chainId?`     | `number`                                                                                                  | -                                                            |
| `props.sharesAmount` | `string` \| `number` \| `bigint`                                                                          | -                                                            |
| `props.vault`        | `` `0x${string}` ``                                                                                       | -                                                            |

**Returns**

`Promise`<`INormalizedNumber`>

The amount of assets as INormalizedNumber

#### registerUserForPoints()

> **registerUserForPoints**(`userAddress`, `referrerAddress`, `chainId`, `signature`, `nonce`, `expiry`): `Promise`<`Response`>

Register a user for the points program, authenticated by a wallet signature.

The caller produces a personal\_sign signature over a canonical message containing the user address, referrer (or `"none"`), chain, nonce, and expiry — see `AugustVaults.registerUserForPoints` for the exact template.

**Parameters**

| Parameter         | Type                | Description                                                                                                                   |
| ----------------- | ------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `userAddress`     | `` `0x${string}` `` | EVM wallet address being registered.                                                                                          |
| `referrerAddress` | `` `0x${string}` `` | Optional EVM referrer address.                                                                                                |
| `chainId`         | `number`            | Chain on which the wallet signed; powers the EIP-1271 fallback for smart-contract wallets and pins the signature cross-chain. |
| `signature`       | `string`            | 0x-prefixed personal\_sign signature over the canonical message.                                                              |
| `nonce`           | `string`            | Single-use random string (8–128 chars).                                                                                       |
| `expiry`          | `number`            | Unix seconds; must be in the future, within the backend's TTL.                                                                |

**Returns**

`Promise`<`Response`>

Raw `Response` from the backend.

#### switchNetwork()

> **switchNetwork**(`chainId`): `void`

Switch the active network for vault operations. Updates the SDK's active chain and RPC provider.

**Parameters**

| Parameter | Type     |
| --------- | -------- |
| `chainId` | `number` |

**Returns**

`void`

**Overrides**

`AugustBase.switchNetwork`

#### updateWallet()

> **updateWallet**(`address`): `void`

Set the active wallet address for tracking user-specific vault data. Updates monitoring headers with the wallet address.

**Parameters**

| Parameter | Type                |
| --------- | ------------------- |
| `address` | `` `0x${string}` `` |

**Returns**

`void`

**Overrides**

`AugustBase.updateWallet`

#### vaultDeposit()

> **vaultDeposit**(`signer`, `options`): `Promise`<`string`>

Fetch all available vaults across configured networks. Optionally filter by chain IDs and include loan/allocation data.

**Parameters**

| Parameter | Type                    | Description                                          |
| --------- | ----------------------- | ---------------------------------------------------- |
| `signer`  | `Signer` \| `Wallet`    | -                                                    |
| `options` | `IContractWriteOptions` | Configuration for filtering and enriching vault data |

**Returns**

`Promise`<`string`>

Array of vault objects with metadata and optional position data
