---
title: "Read the ranks of visible participants."
method: GET
path: "/leaderboard"
---

# Read the ranks of visible participants.

`GET /leaderboard`

## Request

- Base URL: `https://animalchecklist.com/api/v1`
- URL: `https://animalchecklist.com/api/v1/leaderboard`
- Auth: API key in cookie `ac_session`

The viewer must sign in and enable leaderboard visibility. Score equals speciesCount plus quizPoints. Emails remain private. Species lists retain their existing visibility rules.

## Query parameters

- `page` integer
- `per` integer
- `limit` integer

## Response `200`

Ranked participants. No-store.

- object
  - `data` object, required
    - `items` LeaderboardEntry[], required
      - `rank` integer, required
      - `accountId` string, uuid, required
      - `username` string, required
      - `speciesCount` integer, required
      - `quizPoints` integer, required
      - `score` integer, required
    - `total` integer, required
    - `page` integer, required
    - `per` integer, required

## Other responses

- `400`: Invalid input.
- `401`: Sign-in required.
- `403`: A same-origin request is required.
- `404`: Not found.
- `409`: Account changed in another tab.
- `429`: Rate limited.
- `500`: Unexpected error.

---

[API](https://skmtc.dev/animalchecklist/apis/animal-checklist-api.md) · [All operations](https://skmtc.dev/animalchecklist/apis/animal-checklist-api/llms.txt) · [OpenAPI document](https://skmtc.dev/animalchecklist/apis/animal-checklist-api/revisions/0910760ad25b?raw)
