Skip to main content

Rewards Service

The Rewards Service is a publicly accessible service designed to deliver rewards to users and calculate leaderboards based on customizable event triggers defined by clients.

Operations

  • Rewards
    • Retrieve rewards obtained by a user.
    • Admin endpoints for creating, reading, updating, and deleting rewards such as badges and themes.
  • User Balances
    • Current Balances of the user. Balances could be :
      • Points
      • Experience
      • Scores (i.e. amount of correct answers)
      • Any other numeric value
  • Transactions
    • Get User Timeline endpoint (transaction history).
      • WebSocket is also supported for Get User Timeline.
    • Admin endpoint to manually create Transactions.
    • Admin endpoint to manually revert an already created Transactions.
  • Leaderboards
    • Get Leaderboards by a combination of:
      • clientID
      • leaderboard key (i.e. competition_id, season_id, round_id or question_id)
      • features (i.e. POINTS, EXPERIENCE or SCORES)
      • dimensions (i.e. GLOBAL, EUROPE, or AUTHENTICATED)
    • Get Leaderboard User Rank for a given leaderboard (all previous parameters can be provided)
    • Admin endpoint to manually Reset Leaderboards (useful to re-calculate after some weird issue).
    • Upsert/Get Leaderboards Metadata (i.e. useful to calculate the percentage of correct answers given the total amount of questions for some leaderboard)
  • Rewards Service Users (used by Leaderboards)
    • Admin endpoint to re-sync rewards service Users table. (This shouldn't be needed as we are consuming updates from fanscore-profile)
  • Flows
    • Parent flows for a user (retrieved from Rules Engine)
  • User Progress
    • Latest Progress in a flow for a user (retrieved from Rules Engine)
    • Current Progress in a flow for a user (retrieved from Rules Engine)

Permission Denied

This page is not available in public documentation, please refer to internal Confluence page under FanX product team.