API Controllers Summary - Endurancezone-com/API-docs GitHub Wiki
This document provides a summary of all API controllers available in the Points.Api system. Each controller is responsible for a specific area of functionality within the rewards platform.
The Authentication controller handles user authentication and token generation.
-
Key Endpoints:
-
GET /api/Authentication/getauthtoken- Generates a JWT token for authenticated API clients
-
The Branding Controller manages partner branding information, including logos, colors, and sidebar branding.
-
Key Endpoints:
-
GET /api/Branding/{partnerId}- Get branding information for a partner -
GET /api/Branding/{partnerId}/sidebar- Get sidebar branding for a partner -
GET /api/Branding/{partnerId}/partner- Get partner branding information
-
The Competitions Controller handles competition-related operations, including entering competitions and managing prize codes.
-
Key Endpoints:
-
GET /api/Competitions/{partnerId}- Get competitions for a partner -
POST /api/Competitions/{partnerId}/enter/{competitionId}/user/{userId}- Enter a user into a competition -
GET /api/Competitions/{partnerId}/prizecodes/{userId}- Get prize codes for a user
-
The Country Controller provides access to country information.
-
Key Endpoints:
-
GET /api/Country- Get a list of all available countries
-
The LeaderBoards Controller manages leaderboards, including creation, user management, and history tracking.
-
Key Endpoints:
-
GET /api/LeaderBoards/{partnerId}- Get all leaderboards for a partner -
POST /api/LeaderBoards/{partnerId}- Create or update a leaderboard -
GET /api/LeaderBoards/{partnerId}/current/{leaderboardId}- Get current leaderboard data
-
The Machine Learning Controller provides access to machine learning predictions.
-
Key Endpoints:
-
GET /api/ML/{partnerId}/board/{boardId}- Get machine learning prediction results
-
The Partner Activities Controller manages activities that partners offer to users.
-
Key Endpoints:
-
GET /api/PartnerActivities/{partnerId}- Get all activities for a partner -
GET /api/PartnerActivities/{partnerId}/activity/{activityId}- Get details of a specific activity -
POST /api/PartnerActivities/{partnerId}/activity/- Create a new activity for a partner -
PATCH /api/PartnerActivities/{partnerId}/activity/{activityId}- Update an existing activity for a partner
-
The Partner Controller handles partner-related operations, including notifications and flags.
-
Key Endpoints:
-
GET /api/Partner/{partnerId}/notifications/user/{userId}- Get active notifications for a user -
GET /api/Partner/{slug}/slug- Get partner information by slug -
GET /api/Partner/{partnerId}/flags- Get configuration flags for a partner
-
The Partner FAQs Controller manages frequently asked questions for partners.
-
Key Endpoints:
-
GET /api/PartnerFaqs/Partner/{partnerId}- Get FAQ sections for a partner
-
The Partner Level Points Controller manages point levels for partner rewards.
-
Key Endpoints:
-
GET /api/PartnerLevelPoints/{partnerId}- Get all level points for a partner -
POST /api/PartnerLevelPoints/{partnerId}- Create or update a partner level point -
GET /api/PartnerLevelPoints/{partnerId}/level/{levelId}- Get level points for a specific level
-
The Reward Points Controller manages rewards that users can unlock with points.
-
Key Endpoints:
-
GET /api/RewardPoints/{partnerId}- Get all rewards for a partner -
GET /api/RewardPoints/{partnerId}/{id}- Get a specific reward by ID -
PUT /api/RewardPoints/{partnerId}/user/{userId}/reward/{rewardId}/points/{points}- Spend points on a reward
-
The Subscriptions Controller manages partner subscriptions.
-
Key Endpoints:
-
GET /api/Subscriptions- Get all subscriptions for the authenticated partner -
POST /api/Subscriptions- Create a new subscription -
DELETE /api/Subscriptions/{subscriptionId}- Delete a subscription
-
The User Audit Controller handles user activity auditing.
-
Key Endpoints:
-
POST /api/UserAudit- Create a user audit record
-
The Users Controller manages user information and authentication.
-
Key Endpoints:
-
GET /api/Users/{userId}- Get user information -
PUT /api/Users/{userId}- Update user information -
GET /api/Users/apikey/{apiKey}- Get user by API key
-
The Users Points Controller manages user points, including earning, spending, and tracking.
-
Key Endpoints:
-
GET /api/UsersPoints/{partnerId}/user/{userId}- Get points for a user -
POST /api/UsersPoints/{partnerId}/user/{userId}/activity/{activityId}- Add points for an activity -
GET /api/UsersPoints/{partnerId}/user/{userId}/history- Get points history for a user
-
All endpoints (except where noted) require JWT Bearer authentication. Include the JWT token in the Authorization header of your requests:
Authorization: Bearer {your_jwt_token}
To obtain a JWT token, use the Authentication controller's getauthtoken endpoint with a valid API key.
Most API endpoints return responses in the following format:
{
"success": true,
"data": { ... },
"message": "Operation completed successfully"
}Error responses typically include:
{
"success": false,
"message": "Error message describing what went wrong"
}API requests are subject to rate limiting. If you exceed the rate limit, you will receive a 429 Too Many Requests response.
For detailed information about each controller and its endpoints, click on the controller links above to view the full documentation.