---
title: "Demo Stats"
method: GET
path: "/api/v1/admin/demo-stats"
tags: ["admin"]
---

# Demo Stats

`GET /api/v1/admin/demo-stats`

## Request

- Base URL: `https://yondry.app` (the document declares no server; this is the origin it was published from)
- URL: `https://yondry.app/api/v1/admin/demo-stats`
- Auth: none declared

Per-partner opens and plans for the public demo page.

`unique_visitors` counts distinct session ids, so one person reloading the
page — or you running the pre-demo checklist — collapses to 1 rather than
inflating the open count. Partners are ordered by views, so the link that
actually got traction sorts to the top.

## Query parameters

- `days` integer: Window size in days

## Headers

- `X-Admin-Key` string, nullable

## Response `200`

Successful Response

- DemoStatsResponse
  - `window_days` integer, required
  - `since` string, required
  - `totals` object, required
  - `partners` DemoPartnerStats[], required
    - `partner` string, required
    - `views` integer, required
    - `unique_visitors` integer, required
    - `plans` integer, required
    - `first_seen` string, nullable, required
    - `last_seen` string, nullable, required

## Other responses

- `422`: Validation Error

---

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