Atherum offers a full set of APIs to customize your experience with your very own scripts and logics. All you need to do is to require Atherum's API module and you're good to get started! Make sure that the Atherum main folder is placed in ServerScriptService.



Step 1: requiring the module


Requiring the API module is very easy! All you need to do is to know the path to it. If installed correct, it is situated in ServerScriptService > Atherum Anti-Alt > API. It is recommended to use :WaitForChild() as sometimes the scripts don't find the folder immediately.

local AtherumAPI = require(game:GetService('ServerScriptService'):WaitForChild('Atherum Anti-Alt'):WaitForChild('API'))


Step 2: using the API functions


Once you have the API module required and stored under a variable, you can use it with the following purposes:


  • get an event whenever someone gets detected as an alt
  • check if player was detected as an alt
  • get a player's fraud score
  • get the number of checks a player passed
  • get a list of the checks for a specific player
  • get a list of checks a player failed
  • get a list of checks a player passed
  • get the saved data for a specific server ID (if DataStore is enabled)

This is how to properly call the Atherum API functions:




Player detected event:

This is not part of the API module, but a BindableEvent that is placed under it.

Access it by going:

game:GetService("ServerScriptService"):WaitForChild("Atherum Anti-Alt"):WaitForChild("API"):WaitForChild("UserDetected").Event:Connect(function(player)
        -- your action here
end)



Check if a player was detected as an alt:

AtherumAPI:IsPlayerAlt(player)
  • player (mandatory) should be a player instance. It should contain the player itself, and not the player name.


        Response:

  • bool (true/false), true means the player was counted as an alternate account, false means the player was not counted as an alternate account.


The IsPlayerAlt determination is based on the "Min. detection score" that you can modify in the system Settings.



Get a player's fraud score:

AtherumAPI:GetPlayerScore(player)
  • player (mandatory) should be a player instance. It should contain the player itself, and not the player name.


        Response:

  • number (number), the higher it is, the more checks were failed.


The GetPlayerScore determination is based on the custom importance scores that you can modify in the system Settings.



Get the number of checks a player passed:

AtherumAPI:GetNumberOfPassedChecks(player)
  • player (mandatory) should be a player instance. It should contain the player itself, and not the player name.


        Response:

  • number (number), the total number of checks a player passed.


This will not return the list of the passed checks.




Get a list of the checks for a specific player:

AtherumAPI:GetPlayerCheckStatus(player)
  • player (mandatory) should be a player instance. It should contain the player itself, and not the player name.


        Response:

  • list (array), a list of all checks (names) and if they were passed/failed.



Get a list of a player's failed checks:

AtherumAPI:GetPlayerFailedChecks(player)
  • player (mandatory) should be a player instance. It should contain the player itself, and not the player name.


        Response:

  • list (array), a list of all checks (names) that the specified player failed.



Get a list of a player's passed checks:

AtherumAPI:GetPlayerPassedChecks(player)
  • player (mandatory) should be a player instance. It should contain the player itself, and not the player name.


        Response:

  • list (array), a list of all checks (names) that the specified player passed.




Get the saved data of a specific server:

AtherumAPI:GetServerSavedData(serverID)
  • serverID (mandatory) should be a string. It should contain the server ID (game.JobId) of the server you wish to find. Should NOT be a number.


        Response:

  • list (array), a list of all players who were checked in that server and their passed/failed checks, score, and more.


This will only work if DataStore is enabled in the system Settings.





You may use this in your own scripts to create your custom logic.


Note: the module can only be used in server-side scripts.