---
title: "Get vault history by slug"
method: GET
path: "/v1/vaults/slug/{slug}/timeseries"
tags: ["Vaults"]
---

# Get vault history by slug

`GET /v1/vaults/slug/{slug}/timeseries`

## Request

- Base URL: `https://api.gauntlet.xyz`
- URL: `https://api.gauntlet.xyz/v1/vaults/slug/{slug}/timeseries`
- Auth: none declared

Returns USD TVL and outstanding share supply summed across every currently linked deployment of an enabled logical vault, including hidden vaults. Uses UTC-aligned snapshots and timestamp pagination. A deployment contributes zero before its indexed creation time; after creation, missing snapshots or USD prices produce null TVL, never a partial sum. Does not carry values forward. Missing supply or a missing snapshot after deployment creation produces null total_supply, independent of USD price availability. APY and unit_price come from the Admin-selected primary deployment at the same timestamp, identified by meta.resolved_vault_id. Missing primary snapshots yield null primary metrics; APY respects Admin visibility. TVL is USD-only because deployment numeraires may differ; native TVL remains available on the primary/per-deployment endpoints. This is a sum of deployment TVLs, not the legacy asset-position valuation. Unknown or disabled slugs return 404; incomplete deployment metadata returns 503.

## Path parameters

- `slug` string, required

## Query parameters

- `start` string
- `end` string
- `next` string
- `limit` integer
- `order` string
- `granularity` string

## Response `200`

Aggregate USD TVL and share supply with primary deployment metrics

- VaultGroupTimeseriesResponse
  - `data` VaultGroupTimeseriesPoint[], required
    - `apy_30d` number, double, nullable
    - `apy_7d` number, double, nullable
    - `apy_90d` number, double, nullable
    - `unit_price` string, nullable: Numeraire-token units per share on the primary deployment.
    - `timestamp` string, date-time, required
    - `total_supply` string, nullable: Outstanding shares summed across linked deployments. Null if an existing deployment has a missing snapshot or supply; independent of USD pricing.
    - `tvl` CuratedTvl, required: USD amount on curated aggregates: decimal string, `null` when the pricing service is not configured.
      - `usd` string, nullable
  - `meta` TimeseriesMeta, required
    - `count` integer, required: Number of points in this response.
    - `end` string, date-time, nullable
    - `limit` integer, required: Page-size cap actually applied.
    - `next_cursor` string, nullable: Set when more pages exist; pass back as `?next=`.
    - `partial_errors` PartialResponseError[], nullable: Item-scoped failures isolated from an aggregate response.
      - `code` string, required: Machine-readable error code for the isolated item failure.
      - `message` string, required: Human-readable error message.
      - `resource_id` string, nullable: Resource that failed inside the aggregate response, when known.
    - `refreshed_at` string, date-time, required
    - `request_id` string, required
    - `resolved_vault_id` string, nullable: Primary deployment selected for deployment-local metrics by a slug route. The aggregate slug route still sums TVL and supply across deployments. Omitted when the deployment is already identified in the request path.
    - `start` string, date-time, nullable: Window bounds the response covers (echoes the request when set).

## Other responses

- `401`: Missing or invalid auth
- `404`: Vault slug not found
- `422`: Invalid parameters
- `503`: Data source or vault curation unavailable

## Changes

- **2026-09-30** `34bf11a7d24e`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/gauntlet/apis/gauntlet-api/changes/v1/vaults/slug/:slug/timeseries/get.md)

---

[API](https://skmtc.dev/gauntlet/apis/gauntlet-api.md) - [All operations](https://skmtc.dev/gauntlet/apis/gauntlet-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gauntlet/apis/gauntlet-api/revisions/34bf11a7d24e?raw)
