Saltar al contenido principal
GET
/
leaderboards
/
{key}
import { TrophyApiClient } from '@trophyso/node';

const trophy = new TrophyApiClient({
  apiKey: 'YOUR_API_KEY'
});

const response = await trophy.leaderboards.get("weekly-words", {
  offset: 0,
  limit: 10,
  run: "2025-01-15"
});
{
  "id": "5100fe51-6bce-6j44-b0hs-bddc4e123682",
  "name": "Weekly Word Count Challenge",
  "key": "weekly-words",
  "rankBy": "metric",
  "metricKey": "words-written",
  "metricName": "Words Written",
  "pointsSystemKey": null,
  "pointsSystemName": null,
  "description": "Compete weekly to see who writes the most words",
  "status": "active",
  "start": "2025-01-01",
  "end": null,
  "maxParticipants": 100,
  "breakdownAttribute": null,
  "runUnit": "day",
  "runInterval": 7,
  "rankings": [
    {
      "userId": "user-123",
      "userName": "Alice Johnson",
      "rank": 1,
      "value": 5000
    },
    {
      "userId": "user-456",
      "userName": "Bob Smith",
      "rank": 2,
      "value": 4500
    },
    {
      "userId": "user-789",
      "userName": "Charlie Brown",
      "rank": 3,
      "value": 4200
    }
  ]
}
Límites de tasa

Autorizaciones

X-API-KEY
string
header
requerido

Parámetros de ruta

key
string
requerido

Unique key of the leaderboard as set when created.

Parámetros de consulta

offset
integer
predeterminado:0

Number of rankings to skip for pagination.

Rango requerido: x >= 0
limit
integer
predeterminado:10

Maximum number of rankings to return. Cannot be greater than the size of the leaderboard.

Rango requerido: x >= 0
run
string<date>

Specific run date in YYYY-MM-DD format. If not provided, returns the current run.

userId
string

When provided, offset is relative to this user's position on the leaderboard. If the user is not found in the leaderboard, returns empty rankings array.

userAttributes
string

Attribute key and value to filter the rankings by, separated by a colon. For example, city:London. This parameter is required, and only valid for leaderboards with a breakdown attribute.

Respuesta

Successful operation

A leaderboard with its configuration details.

id
string
requerido

The unique ID of the leaderboard.

Ejemplo:

"5100fe51-6bce-6j44-b0hs-bddc4e123682"

name
string
requerido

The user-facing name of the leaderboard.

Ejemplo:

"Weekly Word Count Challenge"

key
string
requerido

The unique key used to reference the leaderboard in APIs.

Ejemplo:

"weekly-words"

rankBy
enum<string>
requerido

What the leaderboard ranks by.

Opciones disponibles:
points,
streak,
metric
Ejemplo:

"metric"

breakdownAttribute
string | null
requerido

The key of the attribute to break down this leaderboard by.

Ejemplo:

"country"

description
string | null
requerido

The user-facing description of the leaderboard.

Ejemplo:

"Compete weekly to see who writes the most words"

start
string<date>
requerido

The start date of the leaderboard in YYYY-MM-DD format.

Ejemplo:

"2025-01-01"

end
string<date> | null
requerido

The end date of the leaderboard in YYYY-MM-DD format, or null if it runs forever.

Ejemplo:

"2025-12-31"

maxParticipants
integer
requerido

The maximum number of participants in the leaderboard.

Ejemplo:

100

runUnit
enum<string> | null
requerido

The repetition type for recurring leaderboards, or null for one-time leaderboards.

Opciones disponibles:
day,
month,
year,
null
Ejemplo:

"day"

runInterval
integer | null
requerido

The interval between repetitions, relative to the start date and repetition type. Null for one-time leaderboards.

Ejemplo:

7

status
enum<string>
requerido

The status of the leaderboard.

Opciones disponibles:
active,
scheduled,
finished
Ejemplo:

"active"

rankings
LeaderboardRanking · object[]
requerido

Array of user rankings for the leaderboard.

metricKey
string

The key of the metric to rank by, if rankBy is 'metric'.

Ejemplo:

"words-written"

metricName
string

The name of the metric to rank by, if rankBy is 'metric'.

Ejemplo:

"Words Written"

pointsSystemKey
string

The key of the points system to rank by, if rankBy is 'points'.

Ejemplo:

"xp-system"

pointsSystemName
string

The name of the points system to rank by, if rankBy is 'points'.

Ejemplo:

"Experience Points"