Repository navigation
LeaderBoardsController API Documentation
This document provides documentation for the LeaderBoards API endpoints available in the Points.Api system.
- Authentication
- Model Definitions
-
Endpoints
- Add Emails to LeaderBoard
- Add or Edit LeaderBoards
- Add User to LeaderBoard
- Add Users to LeaderBoard
- Add User to Streak
- Check Email Address
- Create New User LeaderBoard
- Delete LeaderBoard
- Get Current LeaderBoard
- Get LeaderBoard Counts
- Get LeaderBoard History
- Get LeaderBoards
- Get LeaderBoards for User
- Get LeaderBoards Information
- Get Live LeaderBoards
- Get Partner Activity Streak
- Get Partner Activity Streaks
- Get User LeaderBoard Invites
- Get User LeaderBoards
- Remove User from LeaderBoard
- Remove User from Streak
- Resend Invite Email
All endpoints in the LeaderBoards API require JWT Bearer authentication. Include the JWT token in the Authorization header of your requests:
Authorization: Bearer {your_jwt_token}
The CreateUserLeaderboardRequest model represents a request to create a new user leaderboard with the following fields:
| Field | Type | Description |
|---|---|---|
| name | string | Name of the user leaderboard |
| activityIds | List | List of activity IDs associated with the leaderboard |
| daysToRun | long | Number of days the leaderboard will run (default: 0) |
| startTime | DateTime | Start time of the leaderboard (default: current UTC time) |
Adds a list of email addresses to a user's leaderboard.
URL: /api/LeaderBoards/partner/{partnerId}/user/{userId}/UserleaderBoard/{boardId}
Method: PUT
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
userId(long) - ID of the user -
boardId(long) - ID of the leaderboard
Request Body:
[
"email1@example.com",
"email2@example.com"
]Success Response:
- Code: 200 OK
- Content: Result of the operation
Creates a new leaderboard or updates an existing one.
URL: /api/LeaderBoards/{partnerId}
Method: POST
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner
Request Body:
{
"id": 0,
"name": "My Leaderboard",
"description": "Leaderboard description",
"startDate": "2025-03-21T00:00:00Z",
"endDate": "2025-04-21T00:00:00Z",
"isActive": true
}Success Response:
- Code: 200 OK
- Content: Created or updated leaderboard
Adds a user to an existing leaderboard.
URL: /api/LeaderBoards/{partnerId}/board/{boardId}/user/{userId}
Method: POST
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
boardId(long) - ID of the leaderboard -
userId(long) - ID of the user to add
Success Response:
- Code: 200 OK
- Content: Result of the operation
Adds multiple users to an existing leaderboard in a single request.
URL: /api/LeaderBoards/{partnerId}/board/{boardId}/users
Method: POST
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
boardId(long) - ID of the leaderboard
Request Body:
[
123,
456,
789
]Array of user IDs to add to the leaderboard.
Success Response:
- Code: 200 OK
- Content:
{
"usersAdded": 3,
"leaderBoardId": 456
}Adds a user to an activity streak.
URL: /api/LeaderBoards/{partnerId}/streak/{streakId}/user/{userId}
Method: POST
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
streakId(long) - ID of the streak -
userId(long) - ID of the user to add
Success Response:
- Code: 200 OK
- Content: Result of the operation
Checks if an email address is registered with a partner.
URL: /api/LeaderBoards/{partnerId}/email/{email}
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
email(string) - Email address to check
Success Response:
- Code: 200 OK
- Content: Boolean indicating if the email is registered
Creates a new user-specific leaderboard.
URL: /api/LeaderBoards/partner/{partnerId}/user/{userId}/UserleaderBoard
Method: POST
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
userId(long) - ID of the user
Request Body:
{
"name": "My User Leaderboard",
"activityIds": ["1", "2", "3"],
"daysToRun": 30,
"startTime": "2025-07-14T00:00:00Z"
}Success Response:
- Code: 200 OK
- Content: Created user leaderboard
Example Response:
{
"id": 123,
"name": "My User Leaderboard",
"activityIds": ["1", "2", "3"],
"daysToRun": 30,
"startTime": "2025-07-14T00:00:00Z",
"endTime": "2025-08-13T00:00:00Z"
}Success Response:
- Code: 200 OK
- Content: Created user leaderboard
Deletes a leaderboard.
URL: /api/LeaderBoards/{partnerId}/board/{boardId}
Method: DELETE
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
boardId(long) - ID of the leaderboard to delete
Success Response:
- Code: 200 OK
- Content: Result of the operation
Retrieves the current state of a leaderboard.
URL: /api/LeaderBoards/{partnerId}/current/{leaderboardId}
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
leaderboardId(long) - ID of the leaderboard
Success Response:
- Code: 200 OK
- Content: Current leaderboard data
Retrieves the count of users in a leaderboard.
URL: /api/LeaderBoards/{partnerId}/board/{boardId}/count
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
boardId(long) - ID of the leaderboard
Success Response:
- Code: 200 OK
- Content: Count of users in the leaderboard
Retrieves the history of a leaderboard.
URL: /api/LeaderBoards/{partnerId}/history/{leaderboardId}
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
leaderboardId(long) - ID of the leaderboard
Success Response:
- Code: 200 OK
- Content: Historical leaderboard data
Retrieves a specific run of a leaderboard's history.
URL: /api/LeaderBoards/{partnerId}/history/{leaderboardId}/run/{run}
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
leaderboardId(long) - ID of the leaderboard -
run(int) - Run number to retrieve
Success Response:
- Code: 200 OK
- Content: Historical leaderboard data for the specified run
Retrieves all leaderboards for a partner.
URL: /api/LeaderBoards/{partnerId}
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner
Success Response:
- Code: 200 OK
- Content: List of leaderboards
Retrieves leaderboards for a partner filtered by active status.
URL: /api/LeaderBoards/{partnerId}/active/{active}
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
active(boolean) - Active status filter
Success Response:
- Code: 200 OK
- Content: List of filtered leaderboards
Retrieves leaderboards for a specific user.
URL: /api/LeaderBoards/{partnerId}/users/{userId}
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
userId(long) - ID of the user
Query Parameters:
-
totalToShow(int) - Number of leaderboards to return
Success Response:
- Code: 200 OK
- Content: List of user's leaderboards
Retrieves active leaderboards for a specific user.
URL: /api/LeaderBoards/{partnerId}/users/{userId}/active
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
userId(long) - ID of the user
Query Parameters:
-
totalToShow(int) - Number of leaderboards to return
Success Response:
- Code: 200 OK
- Content: List of user's active leaderboards
Retrieves past leaderboards for a specific user.
URL: /api/LeaderBoards/{partnerId}/users/{userId}/past
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
userId(long) - ID of the user
Query Parameters:
-
totalToShow(int) - Number of leaderboards to return
Success Response:
- Code: 200 OK
- Content: List of user's past leaderboards
Retrieves detailed information about all leaderboards for a partner.
URL: /api/LeaderBoards/{partnerId}/UserleaderboardDetails
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner
Success Response:
- Code: 200 OK
- Content: Detailed leaderboard information
Retrieves live leaderboards for a user.
URL: /api/LeaderBoards/{partnerId}/live/user/{userId}
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
userId(long) - ID of the user
Success Response:
- Code: 200 OK
- Content: List of live leaderboards
Retrieves a specific activity streak for a partner.
URL: /api/LeaderBoards/{partnerId}/streak/{streakId}
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
streakId(long) - ID of the streak
Success Response:
- Code: 200 OK
- Content: Activity streak details
Retrieves all activity streaks for a partner.
URL: /api/LeaderBoards/{partnerId}/streak/
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner
Success Response:
- Code: 200 OK
- Content: List of activity streaks
Retrieves invites for a user's leaderboard.
URL: /api/LeaderBoards/{partnerId}/Userleaderboards/user/{userId}/board/{boardId}/Invites
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
userId(long) - ID of the user -
boardId(long) - ID of the leaderboard
Success Response:
- Code: 200 OK
- Content: List of leaderboard invites
Retrieves all leaderboards created by a user.
URL: /api/LeaderBoards/{partnerId}/Userleaderboards/user/{userId}
Method: GET
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
userId(long) - ID of the user
Success Response:
- Code: 200 OK
- Content: List of user-created leaderboards
Removes a user from a leaderboard.
URL: /api/LeaderBoards/{partnerId}/board/{boardId}/user/{userId}
Method: DELETE
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
boardId(long) - ID of the leaderboard -
userId(long) - ID of the user to remove
Success Response:
- Code: 200 OK
- Content: Result of the operation
Removes a user from an activity streak.
URL: /api/LeaderBoards/{partnerId}/streak/{streakId}/user/{userId}
Method: DELETE
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
partnerId(long) - ID of the partner -
streakId(long) - ID of the streak -
userId(long) - ID of the user to remove
Success Response:
- Code: 200 OK
- Content: Result of the operation
Resends an invitation email for a leaderboard.
URL: /api/LeaderBoards/Userleaderboards/Invite/{id}
Method: PUT
Auth required: Yes (JWT Bearer token)
URL Parameters:
-
id(long) - ID of the invitation
Success Response:
- Code: 200 OK
- Content: Result of the operation
- Frequently Asked Questions
-
EZ Loyalty Points Api
- Authorization
- Summary
- End Points
- Branding End Points
- Buckets End Points
- Competition End Points
- Country End Points
- Leader Boards End Points
- Machine Learning End Points
- Partner Activities End Points
- Partner End Points
- Partner FAQs End Points
- Partner Level Points End Points
- Reward Points End Points
- Subscriptions End Points
- Users End Points
- User Points End Points
- EZ Loyalty Admin Api