View as Markdown

Leaderboards

Read more about the Leaderboards system in Hiro here .

The methods below require Hiro 1.33 or later. If you are on an earlier version, see Hiro 1.32 and earlier .

Get all leaderboards #

List all available leaderboards.

1
2
3
4
const request = new LeaderboardListRequest();

const leaderboardList = await hiroClient.leaderboardList(session, request);
console.log(leaderboardList);

Filter by category:

1
2
3
4
5
const request = new LeaderboardListRequest();
request.categories = ["Tournament"];

const leaderboardList = await hiroClient.leaderboardList(session, request);
console.log(leaderboardList);

Get a leaderboard #

Get a specified leaderboard by ID.

1
2
3
4
5
const request = new LeaderboardGet();
request.id = "GalacticChampions";

const leaderboard = await hiroClient.leaderboardGet(session, request);
console.log(leaderboard);

Submit a score #

Submit a score to a leaderboard.

1
2
3
4
5
6
7
const request = new LeaderboardUpdate();
request.id = "GalacticChampions";
request.setScoreNumeric(1500);
request.setSubscoreNumeric(0);

const leaderboardScore = await hiroClient.leaderboardUpdate(session, request);
console.log(leaderboardScore);

List scores #

List scores on a leaderboard. Pass owner_ids to retrieve scores for specific owners.

1
2
3
4
5
6
7
const request = new LeaderboardScoresListRequest();
request.id = "GalacticChampions";
request.owner_ids = ["userId1", "userId2"];
request.limit = 100;

const scoreList = await hiroClient.leaderboardScoresList(session, request);
console.log(scoreList);

Filter by region:

1
2
3
4
5
6
7
const request = new LeaderboardScoresListRequest();
request.id = "GalacticChampions";
request.region = "EU";
request.limit = 100;

const scoreList = await hiroClient.leaderboardScoresList(session, request);
console.log(scoreList);

List scores around owner #

List scores centred around a specific owner.

1
2
3
4
5
6
7
const request = new LeaderboardScoresListAroundOwnerRequest();
request.id = "GalacticChampions";
request.owner_id = session.user_id;
request.limit = 10;

const scoreList = await hiroClient.leaderboardScoresListAroundOwner(session, request);
console.log(scoreList);

Hiro 1.32 and earlier #

Prior to Hiro 1.33, leaderboardsConfigGet was the only way to retrieve available leaderboards, returning a LeaderboardConfigList with basic configuration data. This method is deprecated in Hiro 1.33 and later. Use leaderboardList instead.

1
2
const leaderboardConfigList = await hiroClient.leaderboardsConfigGet(session);
console.log(leaderboardConfigList);