---
title: "Catalogue totals, per-chain and top-pair roll-ups"
method: GET
path: "/api/stats"
tags: ["catalogue"]
---

# Catalogue totals, per-chain and top-pair roll-ups

`GET /api/stats`

## Request

- Base URL: `https://yield.trdefi.com`
- URL: `https://yield.trdefi.com/api/stats`
- Auth: none required

Served from pre-aggregated views. The roll-up is refreshed on a schedule, so `meta.freshnessSeconds` tells you how old the underlying figure is. Individual responses are cached for 60 seconds (`meta.cached`) Values in this schema are placeholders - read the live numbers from the endpoint itself. Every figure here goes stale within hours.

## Response `200`

Roll-up

- StatsResponse
  - `data` object, required
    - `source` string
    - `totals` object
      - `strategies` integer
      - `makers` integer
      - `pairs` integer
      - `chains` integer
      - `volume_1d_usd` number
      - `volume_7d_usd` number
      - `volume_30d_usd` number
      - `last_activity` string, date-time, nullable
      - `rollup_updated_at` string, date-time, nullable
    - `chains` object[]
    - `top_pairs_by_volume` object[]
    - `top_pairs_by_positions` object[]
  - `meta` Meta, required
    - `requestId` string, required
    - `generatedAt` string, date-time, required
    - `apiVersion` string, required
    - `freshnessSeconds` integer, nullable: How old the underlying roll-up is, in seconds. Null when not derived.
    - `cached` boolean: True when this response was served from our short-lived cache.

## Other responses

- `429`: Rate limit exceeded. `Retry-After` is always present.
- `503`: Our data source is temporarily unavailable. Retry shortly.

---

[API](https://skmtc.dev/trdefi/apis/trdefi-liquidity-api.md) · [All operations](https://skmtc.dev/trdefi/apis/trdefi-liquidity-api/llms.txt) · [OpenAPI document](https://skmtc.dev/trdefi/apis/trdefi-liquidity-api/revisions/0175596aa1cb?raw)
