← Back to Rankings Discord Discord

EaglerTiers REST API Overview

Welcome to the official EaglerTiers REST API documentation. The API allows developers to programmatically access public player rankings, profile details, gamemode tier lists, and search functionality.

Production Base URL: https://api.eaglertiers.com

All responses are formatted in JSON with standard HTTP status codes.

Authentication

All read operations (GET requests) are publicly accessible and do not require an API key.

Write operations (POST, PUT, DELETE) are protected and require an authorized API key. You can pass your key using either an HTTP header or directly in the URL query string:

Method 1: HTTP Header (Recommended for Web Apps)
X-API-Key: your_api_key_here
Method 2: URL Query Parameter (Ideal for cURL & Quick Tests)
curl -X POST "https://api.eaglertiers.com/api/player?key=your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{"username":"NewPlayer","region":"NA"}'

Rate Limits

To ensure fair usage and service reliability for all users, requests are rate-limited per client IP:

  • Public Requests: 120 requests per minute
  • Response on Exceeded Limit: 429 Too Many Requests

Tiers, Retired Tiers & Peak Tiers

The EaglerTiers ranking system tracks three tier categories for each gamemode:

  • Active Tiers (tiers): Currently active gamemode ranks. Awards 100% of the tier's point value.
  • Retired Tiers (retiredTiers): Inactive or retired ranks. Awards 50% of the active tier's point value.
  • Peak Tiers (peakTiers): All-time highest rank achieved by the player in that gamemode. Displays historical achievement on profiles (0 points added to active standings).
HT160 Points
LT145 Points
HT230 Points
LT220 Points
HT310 Points
LT36 Points
HT44 Points
LT43 Points
HT52 Points
LT51 Point

* Note: Overall points = Sum of Active Points + (0.5 × Sum of Retired Points). Peak tiers record historical bests.

GET /api/players

Fetch Paginated Rankings

Returns a paginated list of ranked players sorted by total points in descending order.

Parameter Type In Description
page integer query Page number (default: 1, 20 players per page)
key string query API Key (optional for public read requests, e.g., &key=YOUR_API_KEY)
Example Request (cURL with API Key & Pagination)
curl -s "https://api.eaglertiers.com/api/players?page=1&key=YOUR_API_KEY"
Example Response (200 OK)
{
  "data": [
    {
      "id": 1,
      "username": "EaglerGod",
      "region": "NA",
      "avatarUrl": "https://render.crafty.gg/3d/bust/EaglerGod",
      "createdAt": "2026-04-20T12:00:00.000Z",
      "tiers": {
        "vanilla": "HT1",
        "sword": "LT1",
        "mace": null
      },
      "retiredTiers": {
        "axe": "HT2"
      },
      "peakTiers": {
        "vanilla": "HT1",
        "sword": "LT1",
        "axe": "HT2",
        "mace": "LT3"
      },
      "totalPoints": 120,
      "position": 1
    }
  ],
  "pagination": {
    "page": 1,
    "perPage": 20,
    "total": 142,
    "totalPages": 8
  }
}
GET /api/players/all

Fetch All Players

Returns an unpaginated array of all ranked players in the system.

Example Request (JavaScript)
const response = await fetch('https://api.eaglertiers.com/api/players/all');
const { data } = await response.json();
console.log(`Total players: ${data.length}`);
GET /api/players/:username

Get Player Profile

Returns full details, rank tiers, position, and total points for a specific player by username.

Parameter Type In Description
username string path Player's Minecraft username (case-insensitive)
Example Request (Python)
import requests

res = requests.get('https://api.eaglertiers.com/api/players/EaglerGod')
player = res.json()
print(f"Rank: #{player['position']} | Points: {player['totalPoints']}")
GET /api/rankings/:gamemode

Get Gamemode Tier List

Returns players ranked within a specific gamemode tier list.

Supported Gamemodes:

overall, vanilla, mace, axe, sword, smp, diamondsmp, uhc, pot, nethop, cart

Example Request (cURL with API Key & Pagination)
curl -s "https://api.eaglertiers.com/api/rankings/sword?page=1&key=YOUR_API_KEY"
GET /api/search?q=:query

Search Players

Search for players by partial or full username match (up to 10 results returned).

Example Request (cURL)
curl -s https://api.eaglertiers.com/api/search?q=eagler