BYTETOOLS

Minecraft ServerHub API

Free Minecraft server ping API with no key: online state, player counts, version, MOTD and the server icon as a data URI, plus SVG and PNG status badges. Live example.

No API key requiredHTTPSFree tier

Endpoint tested and returned HTTP 200 on 21 Aug 2026

What is the Minecraft ServerHub API?

Minecraft ServerHub is a free API that pings any Java or Bedrock Minecraft server and returns whether it is online, its current and maximum player counts, its version string, its MOTD and its icon as a base64 data URI. It also renders live status badges as SVG or PNG.

What ServerHub adds beyond a plain ping is presentation. The same host that answers `/api/ping` with JSON also answers `/api/badges/{slug}/svg` with a rendered status badge and `/api/widgets/{slug}` with an embeddable panel, so a README, a forum signature and a website can all show live player counts without any of them running code. The badge endpoints get their own, higher rate allowance for exactly that reason.

Two fields in the JSON repay a closer look. `favicon` is a complete `data:image/png;base64,...` URI, so it drops straight into an image tag with no extra request and no cross-origin concern. `motd`, by contrast, arrives as the raw server string, newlines and Minecraft section-sign colour codes intact, so it needs stripping or translating before display. Note too that the allow-origin header names ServerHub's own domain rather than a wildcard, which means browser code on your site cannot call it directly.

Quick facts

Base URL
https://minecraft-serverhub.com/api
Authentication
No key or account for the public endpoints; the documentation states they are free for personal and commercial use.
Rate limit
60 requests per minute per address for most endpoints, and 120 per minute for the badge endpoints, per the developer documentation.
Pricing
Free.
CORS
Not enabled — call it from your server
Official docs
Read the docs

How to use the Minecraft ServerHub API

Every request below was executed against the live API on 21 Aug 2026, and the response shown is the real body it returned — not an illustration.

1. Ping a Minecraft server for its live player count

GET https://minecraft-serverhub.com/api/ping?host=mc.hypixel.net&port=25565&platform=java

curl
curl 'https://minecraft-serverhub.com/api/ping?host=mc.hypixel.net&port=25565&platform=java'
JavaScript (fetch)
const res = await fetch("https://minecraft-serverhub.com/api/ping?host=mc.hypixel.net&port=25565&platform=java");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://minecraft-serverhub.com/api/ping?host=mc.hypixel.net&port=25565&platform=java", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200 (truncated)
{
  "online": true,
  "players": {
    "online": 18501,
    "max": 200000,
    "sample": []
  },
  "version": "Requires MC 1.8 / 1.21",
  "motd": "                 Hypixel Network [1.8/26.2]\n   SB 0.27 TORRHUS & SAFARI | SUMMER EVENT",
  "favicon": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAt0UlEQVR4XnV7B3hc1bX12Oq9Te+9d400TV2yLFndkiXZlm1Z7r3gChibEhwgiQ1JSELCgzyaqYFQQggvCQ/SXx6QkBgMJCZAIGBiMMbdWv86d2Qbkvf7+/Z3PTOambvXWXvttc+9IzObAr/oGh47Om/VCrSNLMD6q67Dpj3XY8boIqT6hpHuH0GaR/H/i9E7B7G2bun4hef/j2icPYLGwamQ/j+KrrExjKxYgokNK7D8stVYtW0N1l6+FusuxjqsZ2wQccV6bLzy/x+X7dqALbs2Yuvujdi+ZwO2X73xYmzjc3tu3IW9+7+EG75+A3bfuBvX778BE5vWomds8VmHM/pbWcfA8Hs/fPrRczd8fR9PbAL1fTzJvjn8o61o6BtCbXsPoi2dCDe2I9QwA8H6NgTrWhFINSOQbpHCz/9LkWy6GL5k479EQyYSDfzbRgTTTQjViWhEuP7z0YBwHSNdj0i6ARG+ngnx/4bMc6kGRNONqOb7o4wwPz+czPy/ur6ZIY58zIg1tKC2qRW1LTMQSrWgiTntvvF6/PDpByf7Fiz8TNY9tnDyznv2o2fOMGy+JMz+JIy+BDw1TbAE0zAHUtJzpqkQr4mQHovjv4R56jN0DL34e3+Kf5sJC8Mq/Z/v9fJz3LUoUxqRlVWEabJ8Rh6m81iYVwWNwQWbtRpWYxgWYwgqlQ1ypRXllWYo1XYUlNggk8mmogQyhQN6fp7BHoPelYDOw+/3iGMCWreIuPR/JV9r75+Nfd/cjdXb1kLWPm8hKbcV/lg9KlROKNQWVKnMKC7XorzKgAq5ERUKIyoZVQyFwiRFuYKvXQy+prJArnWgVO9CudEDtyMCl7NaAtUokvUKgARoSWjsYRQVVSCXCWczgfIqJTRGG9QGK/RmF8JN7ZixZDlmTCxHPUumfnAuWhYsxsylK9G7Zh06lq/C4NqNWLRxC8Y3b8PImo0YXLYG3kQLqtRmflccRk8tAamGwVMDk7sGRld1ZpG4AIFkC/rHRjGxfjlkrcNj2Lz7SgRq61FUpoeqygJVhRmqSguUPKqlyDxnr7QhoPCgRuWHvtwAeakWhbnFKMovg7LSCk2VA3a5AzGlC8uNEYwZwqhT2VFUWIb84nLIcyuQN72Qq65FVlEZk7bD4g2jfs48tDO59mUrMZPJ9Wy8DF1rNqB53gRaFy1D26IVGNlzNVbt24e999yDZTfdhAPPPou3PvgAh9//B37y69/g0Sd/jNGlq+BlKeq5CMoSFUoK+J0lSihKVSgvVnIBTdC5YrC

Parameters

ParameterTypeRequiredDescription
hostqueryRequiredServer hostname or IP address to ping. mc.hypixel.net
portqueryOptionalServer port. Defaults to the standard port for the platform. 25565
platformqueryOptional`java` or `bedrock`. Bedrock servers use a different ping protocol, so this matters. java
stylequeryOptionalBadge style on the `/badges/{slug}/svg` and `/png` endpoints. flat
theme / sizequeryOptionalAppearance controls for the embeddable widget endpoint. dark

Response fields

onlineboolean
Whether the ping succeeded. Check this first — an offline server still returns HTTP 200.
players.online / players.maxinteger
Current and maximum player counts as the server reports them. Large networks report figures in the tens of thousands.
players.samplearray
The sample player list, which most public servers disable. Expect an empty array rather than names.
versionstring
Free-text version string exactly as the server advertises it, for example `Requires MC 1.8 / 1.21` — not a parseable version number.
motdstring
Raw message of the day, containing literal newlines and Minecraft colour codes. Strip or translate before rendering.
faviconstring
The server icon as a complete `data:image/png;base64` URI, usable directly as an image source with no second request.

What you can build with the Minecraft ServerHub API

  • Show a live player count on a server's website or landing page
  • Embed a status badge in a GitHub README or forum signature
  • Alert a Discord channel when a server goes offline
  • Build a server list that pings dozens of hosts on a schedule
  • Display a server's icon and MOTD without connecting to it yourself

Common errors and how to fix them

online: false with HTTP 200

The server did not answer the ping — offline, firewalled, or a wrong port.

Fix: Branch on the `online` field, not the status code, and confirm the port matches the platform before reporting an outage.

Garbled MOTD text

The MOTD carries section-sign colour codes and newlines verbatim.

Fix: Strip the colour codes with a regular expression, or translate them into spans if you want the colours.

A CORS error in the browser

The allow-origin header names ServerHub's own domain, not a wildcard.

Fix: Call it from your backend and cache the result; pinging on every page load would exhaust the rate limit anyway.

429

Above 60 requests a minute.

Fix: Ping on a schedule and serve the cached result. Player counts change slowly enough that a minute of staleness is invisible.

Minecraft ServerHub API — frequently asked questions

Does the Minecraft ServerHub API need an API key?

No. The ping, badge and widget endpoints are all key-free, documented as free for personal and commercial use, and limited to 60 requests a minute — 120 for badges — per address.

Does it work with Bedrock servers?

Yes. Pass `platform=bedrock` and it uses the Bedrock ping protocol instead of the Java one. Getting this wrong is the usual reason a server that is clearly up comes back as offline.

How do I display the server icon?

The `favicon` field is already a full base64 data URI, so assign it straight to an image source. There is no second request to make and no cross-origin image to worry about.

Why is players.sample always empty?

Most public servers disable the sample player list in their configuration, so there is nothing for the ping to return. Treat a populated sample as a bonus rather than something to build a feature on.

Tools that pair with this API

Alternatives to Minecraft ServerHub API

If Minecraft ServerHub does not fit, these game & anime apis cover similar ground. Every one was called before publishing, and each links to its own reference page with a working curl command and the response it returned.

APIWhat it doesAuthCORSLast verified
PokéAPIFree Pokémon API with no key: stats, types, abilities, moves, evolutions and sprites for 1,000+ species. The most popular API for learning REST. Tested example.No keyYes19 Aug 2026
Rick and Morty APIFree Rick and Morty API with no key: 800+ characters, episodes and locations with images, filtering and pagination. REST and GraphQL. Tested example.No keyYes19 Aug 2026
Jikan (MyAnimeList)Free unofficial MyAnimeList API with no key: anime and manga data, scores, characters, staff and seasonal listings. Tested curl example and live JSON.No keyYes19 Aug 2026
Deck of CardsFree playing card API with no key: shuffle decks, draw cards, manage piles and get card images. Stateful deck ids. Tested curl example and live JSON.No keyYes19 Aug 2026
MMOBombFree MMO games API with no key: free-to-play MMOs and online games with genres, platforms, screenshots, release dates and giveaway data. Tested example.No keyYes20 Aug 2026
Mojang (Minecraft)Free official Mojang API with no key: convert Minecraft usernames to UUIDs and back, fetch profiles and skin data. The canonical player identity API. Tested.No keyNo20 Aug 2026
All Game & Anime APIs

Minecraft ServerHub is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 21 Aug 2026; always check the official documentation before relying on this API in production, as terms and limits can change.