Menu

RustStats API Documentation

Authentication

All API endpoints require authentication using an API key. The API key must be included in the request header:

Authorization: ApiKey <your-api-key>

NOTE: API key can also be included as a query parameter.


Private API key is generated and issued manually by an admin. To apply for one, you must be a member of the official Discord server and message any user with the "RS - SysOp" role. Approval or denial of the request is determined on a case-by-case basis.

Endpoints

Get User Statistics

Retrieves detailed statistics for a specific Steam user.

Endpoint:

GET /public-api/user/statistics?steam_id=steam_id&api_key=<your-api-key>

Parameters:

  • steam_id (str): The Steam ID of the user
  • api_key (str): Your private API key, required for authorizing requests

Response:

{
  "is_private": false
}

OR

{
  "is_private": true,
  "personaname": "string",
  "minutes_played": "number",
  "achievement_count": "number",
  "kdr": "number",
  "bullets": {
    "fired": "number",
    "hits": {
      "players": "number",
      "buildings": "number",
      "signs": "number",
      "wolves": "number",
      "bears": "number",
      "boars": "number",
      "deer": "number",
      "horses": "number",
      "dead_players": "number",
      "other": "number"
    }
  },
  // ... other fields
}

Notes:

  • If the user's profile is public, only is_private: false will be returned
  • Some fields may be nulled if the data is not available

Check User Ban Status

Checks if a specific Steam user is banned on RustStats.io platform.

Endpoint:

GET /public-api/user/banned?steam_id=<steam_id>&api_key=<your-api-key>

Parameters:

  • steam_id (str): The Steam ID of the user
  • api_key (str): Your private API key, required for authorizing requests

Response:

{
  "is_banned": true|false
}

Error Responses

All endpoints may return the following error responses:

401 Unauthorized

{
  "code": "PT401",
  "message": "Unauthorized",
  "detail": "wrong api key"
}

404 Not Found

{
  "code": "PT404",
  "message": "Not found"
}

500 Internal Server Error

{
  "error": "Internal server error"
}

Example Usage

Get user statistics:

curl -X GET \
     -H "Authorization: ApiKey <your-api-key>" \
     -H 'Content-Type: application/json' \
     https://ruststats.com/public-api/user/statistics?steam_id=<steam_id>

OR

 https://ruststats.io/public-api/user/statistics?steam_id=<steamid64>&api_key=<YOUR_APIKEY> 

Check ban status:

curl -X GET \
     -H "Authorization: ApiKey <your-api-key>" \
     -H 'Content-Type: application/json' \
     https://ruststats.com/public-api/user/banned?steam_id=<steam_id>

OR

 https://ruststats.io/public-api/user/statistics?steam_id=<steamid64>&api_key=<YOUR_APIKEY>