CraftRank API
A free, read-only JSON API for server owners, plugin authors and website builders. Public data needs no key. Responses are cached for 30 seconds; please don't poll more than once a minute per server.
https://craftrank.org/api/v1/servers/{id}Everything we know about a server: live status, players, rank, votes, uptime, links and awards. The ID is in the server page address (/server/12-name) and in the owner panel.
https://craftrank.org/api/v1/servers/89Try it{
"id": 12,
"name": "Example SMP",
"address": "play.example.net",
"online": true,
"players": { "online": 214, "max": 500, "peak": 388 },
"version": "1.21",
"rank": 4,
"votes": { "month": 1203, "total": 18840 },
"uptime": 99.4,
"vote_url": "…/vote/12-example-smp",
"badge_url": "…/badge/12.svg",
"awards": [ { "period": "2026-09", "place": 2, "votes": 2210 } ]
} /servers/{id}/voted?username={name}Has this Minecraft username voted for the server in the last 24 hours? Use it to give vote rewards from a plugin or website without Votifier.
username | Minecraft username, 2–16 letters, numbers or _ |
https://craftrank.org/api/v1/servers/89/voted?username=SteveTry it{ "server_id": 12, "username": "Steve", "voted": true,
"last_vote": "2026-10-12T19:59:54+00:00", "next_vote": "2026-10-13T19:59:54+00:00" } /servers/{id}/votes?key={api_key}The latest votes for your server. Needs the server API key, which the owner creates on Panel → API & integrations. You can also send the key in an X-API-Key header.
key | Server API key (required) |
since | Unix timestamp, only votes after it (optional) |
limit | 1–500, default 100 |
https://craftrank.org/api/v1/servers/89/votes?key=YOUR_KEY&since=0&limit=50Try it/topThe current ranking, the same order as the home page.
limit | 1–50, default 10 |
tag | Game mode, e.g. survival, skyblock |
edition | java or bedrock |
https://craftrank.org/api/v1/top?limit=5Try it/awardsMonthly award winners (top three by votes). Without a period you get the latest month.
period | Month as YYYY-MM (optional) |
https://craftrank.org/api/v1/awardsTry itErrors use normal HTTP status codes with a JSON body: {"error": "not_found", "message": "…"}. 400 = bad parameter, 401 = missing or wrong API key, 404 = no such server or endpoint. Too many requests from one address are slowed down by RexOS Shield.
Website platforms such as RexOS can send owners to a pre-filled “Add server” form. The owner logs in or signs up, checks the details and submits; nothing is listed without them.
https://craftrank.org/panel/add?ref=rexos&name=Example%20SMP&host=play.example.net&port=25565&edition=java&website=https%3A%2F%2Fexample.rex-os.xyz&discord=https%3A%2F%2Fdiscord.gg%2Fexample&banner=https%3A%2F%2Fexample.com%2Fbanner.gif
ref | Your platform name (letters only), shown to the owner and kept with the listing |
name, host, port, edition | Server name, address, port and java or bedrock |
website, discord, description | Optional |
banner | Optional https link to a 468×60 GIF/PNG/JPG; we download and store a copy |