Integration with the Leaderboard service
The Leaderboard Service
is responsible for providing information about challenges, both active and past, as well as managing data related to user scores in these challenges.This service is designed to facilitate the retrieval of challenge-related data, including details about ongoing and historical challenges, and it also handles the transmission of user-specific scores within these challenges.
What Information Can We Display?
The most important data that we can display includes the user's Wallet Address, their Game Score, and their current position on the leaderboard. Additionally, we have created an endpoint /scores/personal/{userId}/{challengeId}
that is useful when a user logs in to display information about their position and the positions of users both ahead and behind them.
Integrate the leaderboard service into your app
To integrate the leaderboard service into your app, you can use our API.
default
GET /challenges
This endpoint allows you to retrieve information about currently active challenges. You can view challenges and filter them based on various parameters.
Authentication
Authentication is not required to access this endpoint.
Environments:
User Acceptance Testing (UAT) https://uat-api.metaproprotocol.com/ms/leaderboard/docs/#/default/findAll
Query parameters
Name
Description
skip
(number, optional): The number of records to skip in the response.
limit
(number, optional): The maximum number of records to return in the response.
challengeId
(string, optional): Filter challenges by challenge ID.
name
(string, optional): Filter challenges by name.
gameId
(string, optional): Filter challenges by game ID.
map
(string, optional): Filter challenges by the specific map or level.
elympicsGameIds
(array of strings, optional): Filter challenges by multiple Elympics game IDs.
gameIds
(array of strings, optional): Filter challenges by multiple game IDs.
maps
(array of strings, optional): Filter challenges by multiple map names.
elympicsGameIds
(array of strings, optional): Filter challenges by multiple Elympics game IDs.
GET /challenges/challenge/{challengeId}
This endpoint allows you to retrieve information about a specific challenge, including details such as its start time, associated game, map, and more. To access this information, you need to provide the challengeId
as a required parameter
Authentication
Authentication is not required to access this endpoint.
Environments:
User Acceptance Testing (UAT)
https://uat-api.metaproprotocol.com/ms/leaderboard/docs/#/default/getChallengeById
Query parameters
Name
Description
challengeId
(string, required): The unique identifier for the challenge you want to retrieve information about.
POST /scores/score
This endpoint allows you to send information about a user's current game score. To make a successful request, you need to provide the leaderboardAPIkey
, which is encrypted to prevent fraudulent submissions to our leaderboard.
Authentication
Authentication with API KEY is required to access this endpoint.
Environments:
User Acceptance Testing (UAT) https://uat-api.metaproprotocol.com/ms/leaderboard/docs/#/default/createScore
Query parameters
Name
Description
leaderboardAPIkey
(string, required): The encrypted API key for leaderboard access.
GET /scores
This endpoint allows you to retrieve information about the current scores of a player. Authentication is not required to access this API. You can view and filter the leaderboard of a specific challenge using various parameters.
Authentication
Authentication is not required to access this endpoint.
Environments:
User Acceptance Testing (UAT) https://uat-api.metaproprotocol.com/ms/leaderboard/docs/#/default/getScores
Query parameters
Name
Description
skip
(number, optional): The number of records to skip in the response.
limit
(number, optional): The maximum number of records to return in the response.
challengeId
(string, optional): Filter scores by challenge ID.
map
(string, optional): Filter scores by the specific map or level.
elympicsUserId
(string, optional): Filter scores by the player's user ID.
matchId
(string, optional): Filter scores by match ID.
position
(number, optional): Filter scores by player's position.
startedAt
(string, optional): Filter scores by the start date and time.
endedAt
(string, optional): Filter scores by the end date and time.
elypicsUserIds
(array of strings, optional): Filter scores by multiple player user IDs.
gameIds
(array of strings, optional): Filter scores by multiple game IDs.
GET /scores/personal/{userId}/{challengeId}
This endpoint allows you to retrieve information about a specific user's scores, including scores of users positioned ahead and behind them in the leaderboard. To access this information, you need to provide the userId
and challengeId
as required parameters, as well as optional parameters for the number of positions ahead and behind.
Authentication
Authentication is not required to access this endpoint.
Environments:
User Acceptance Testing (UAT) https://uat-api.metaproprotocol.com/ms/leaderboard/docs/#/default/getPersonalScoresByChallengeId
Query parameters
Name
Description
scoresBefore
(number, optional): The number of positions backward in the leaderboard to include in the response.
scoresAfter
(number, optional): The number of positions forward in the leaderboard to include in the response.
userId
(string, required): The user ID for which you want to retrieve personal scores.
challengeId
(string, required): The ID of the challenge associated with the scores.
Last updated