CactusTiers API

Official API for retrieving CactusTiers player profiles and rankings. This is a public, read-only REST API that returns JSON.

Base URL

All endpoints are served from:

https://tiers.cactusmc.xyz

Authentication

No authentication is required. Endpoints are publicly accessible.

Get a player profile

GET/api/profile/{username}

Returns a player's profile and per-mode rankings.

Path parameters

NameTypeRequiredDescription
usernamestringrequiredMinecraft username (case-insensitive).

Example request

curl https://tiers.cactusmc.xyz/api/profile/CuteeCactus

200 — Player found

{
  "uuid": null,
  "premium": null,
  "name": "CuteeCactus",
  "region": "NA",
  "points": 500,
  "overall": 1,
  "badges": [],
  "rankings": {
    "sword": {
      "display": "HT1",
      "tier": 1,
      "pos": 1,
      "peak_tier": 1,
      "peak_pos": 1,
      "attained": 0,
      "retired": false
    }
  }
}

404 — Player not found

{
  "error": "Player not found"
}

Try it

Enter a Minecraft username to call the endpoint live.

/api/profile/

Profile

FieldTypeDescription
uuidstring | nullMinecraft UUID without dashes.
premiumboolean | nullWhether the account is premium.
namestringMinecraft username.
regionAS | PK | NA | EU | MEPlayer region.
pointsintegerTotal ranking points.
overallintegerGlobal leaderboard position.
badgesstring[]List of badge IDs.
rankingsmap<string, Ranking>Per-mode rankings keyed by mode ID.

Ranking

FieldTypeDescription
displaystringOriginal tier string (e.g. HT1, LT3, RHT2).
tierinteger (1–5)Tier number.
pos0 | 10 = Low Tier, 1 = High Tier.
peak_tierinteger | nullBest tier achieved.
peak_pos0 | 1 | nullBest position achieved.
attainedinteger (unix)Timestamp when tier was earned.
retiredbooleanWhether the ranking is retired.

Error

FieldTypeDescription
errorstringHuman-readable error message.