---
title: "List points epochs"
method: GET
path: "/admin/points/epochs"
tags: ["Admin"]
---

# List points epochs

`GET /admin/points/epochs`

## Request

- Base URL: `https://api.testnet.rise.trade`
- URL: `https://api.testnet.rise.trade/admin/points/epochs`
- Auth: none required
- TypeScript: <https://skmtc.dev/rise/apis/risex-rest-api/docs/admin/points/epochs/get.ts> (a function with typed inputs; its response is checked against the schema)

List all points epochs (internal).

## Response `200`

A successful response.

- ApiListPointsEpochsResponse
  - `epochs` ApiPointsEpochDto[]
    - `epoch_id` string
    - `starts_at` string, int64: 0 = unset. Deprioritized: distribution_at is what drives reveal/countdown, starts_at is purely descriptive (e.g. does not apply to a retroactive drop).
    - `ends_at` string, int64
    - `distribution_at` string, int64: 0 = unset. Points ingested for this epoch are invisible on every public read until now >= distribution_at.
    - `description` string
    - `is_adhoc` boolean: An ad-hoc (one-off/retroactive) drop still schedules and reveals normally, but is excluded from GetCurrentEpoch's "next upcoming drop" selection so it never overrides the frontend's weekly countdown.

## Other responses

- `default`: An unexpected error response.

## Changes

- **2026-11-03** `98eabcd6a6ad`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/rise/apis/risex-rest-api/changes/admin/points/epochs/get.md)

---

[API](https://skmtc.dev/rise/apis/risex-rest-api.md) - [All operations](https://skmtc.dev/rise/apis/risex-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/rise/apis/risex-rest-api/revisions/98eabcd6a6ad?raw)
