---
title: "Live Leaderboard API"
method: GET
path: "/v2/tournaments/{tournament_id}/leaderboard"
---

# Live Leaderboard API

`GET /v2/tournaments/{tournament_id}/leaderboard`

Returns the live leaderboard for a tournament in the `live` state: the leaderboard details, the top entries, and optionally a specific player's rank with one entry above and one below. Rate limit: 1200 requests per minute, per tournament.

## Path parameters

- `tournament_id` string, required

## Query parameters

- `puid` string
- `limit` integer

## Response `200`

Live leaderboard for the tournament.

- object
  - `success` boolean
  - `data` object
    - `leaderboard` object
      - `leaderboard_id` string — Stable identifier for this leaderboard.
      - `name` string — Human-readable name (e.g. High Score).
      - `description` string — Short description of what the leaderboard tracks.
      - `total_players` integer — Number of players with at least one valid score in the tournament.
    - `top` TournamentLeaderboardEntry[] — Top entries of the leaderboard, up to `limit`.
      - `rank` integer — 1-indexed rank of the player.
      - `puid` string — The player's unique identifier — the same `puid` value appended to the game URL when sending that user to the tournament.
      - `score` integer — The player's best valid score in the tournament.
    - `player` object — Present only when `puid` is passed in the request. See the `player` object behaviour table above.
      - `entry` TournamentLeaderboardEntry
        - `rank` integer — 1-indexed rank of the player.
        - `puid` string — The player's unique identifier — the same `puid` value appended to the game URL when sending that user to the tournament.
        - `score` integer — The player's best valid score in the tournament.
      - `neighbours` object
        - `above` TournamentLeaderboardEntry
          - `rank` integer — 1-indexed rank of the player.
          - `puid` string — The player's unique identifier — the same `puid` value appended to the game URL when sending that user to the tournament.
          - `score` integer — The player's best valid score in the tournament.
        - `below` TournamentLeaderboardEntry
          - `rank` integer — 1-indexed rank of the player.
          - `puid` string — The player's unique identifier — the same `puid` value appended to the game URL when sending that user to the tournament.
          - `score` integer — The player's best valid score in the tournament.

## Other responses

- `401` — Unauthorized.
- `403` — Forbidden.
- `404` — Not Found.
- `409` — Conflict. The tournament is not in the `live` state.
- `429` — Too Many Requests. Rate limit: 1200 requests per minute, per tournament.

---

[API](https://skmtc.net/gamezop/apis/astrozop-apis.md) · [All operations](https://skmtc.net/gamezop/apis/astrozop-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/gamezop/astrozop-apis/revisions/485db86a5145/schema)
