APIContact
Visit MinecraftIndex.com - #1 Minecraft Server List
Sponsor

Minecraft Pinger

Server Status API

A free, keyless REST API for programmatically checking the status of a Minecraft server and getting information on any public minecraft server in real time. Responses are cached at the edge for 2 minutes. No authentication required.

How to Use

  1. 1Get your server address. This can be a domain name like hypixel.net or an IP with a port like 192.168.1.1:25565. Port is optional and defaults to 25565 for Java or 19132 for Bedrock.
  2. 2Send a GET request to https://minecraftpinger.com/api/v1/<host>:<port> with a User-Agent header identifying your app.
  3. 3Read the JSON response. If the mc server status is online, the server object contains player count, MOTD, version, ping, and more. If offline, server is null.

Endpoint

GET https://minecraftpinger.com/api/v1/<host>:<port>

Port is optional and defaults to 25565 (Java) or 19132 (Bedrock). Both Java Edition and Bedrock Edition servers are supported.

Required Header

User-Agent: your-app/1.0

All requests must include a User-Agent header identifying your application. This lets us understand how the API is being used and helps us contact you if something goes wrong. Requests without a User-Agent are rejected with a 400 response.

Code Examples

curl

curl -H "User-Agent: my-app/1.0" https://minecraftpinger.com/api/v1/hypixel.net

JavaScript (fetch)

const res = await fetch('https://minecraftpinger.com/api/v1/hypixel.net', {
  headers: { 'User-Agent': 'my-app/1.0' }
})
const data = await res.json()
// data.server is null if the server is offline
console.log(data.server?.players.online)

Python

import requests

r = requests.get(
    'https://minecraftpinger.com/api/v1/hypixel.net',
    headers={'User-Agent': 'my-app/1.0'}
)
data = r.json()
# data['server'] is None if the server is offline
print(data['server']['players']['online'])

Response

Online server

{
  "message": "ok",
  "server": {
    "ip": "hypixel.net",
    "port": 25565,
    "players": {
      "online": 52847,
      "max": 200000
    },
    "motd": "Hypixel Network [1.8-1.21]",
    "version": "Requires MC 1.8 / 1.21",
    "ping": 23,
    "edition": "java",
    "favicon": "data:image/png;base64,..."
  }
}

Offline or unreachable server

{
  "message": "ok",
  "server": null
}
FieldTypeDescription
ipstringResolved hostname or IP
portnumberPort used
players.onlinenumberCurrent player count
players.maxnumberMaximum player slots
motdstringMessage of the Day (plain text)
versionstringServer version string
pingnumberRound-trip latency in milliseconds
editionstring"java" or "bedrock"
faviconstring | nullBase64-encoded PNG server icon (Java only)

Caching

Responses are cached at the CDN edge for 2 minutes. Repeated requests for the same server within that window return the cached result instantly without hitting the origin. You can check the CF-Cache-Status response header to see whether a response was served from cache (HIT) or freshly fetched (MISS).

Frequently Asked Questions

Is the Minecraft server status API free to use?

Yes. The API is completely free. No account, credit card, or API key is required. Simply send a GET request with a User-Agent header and you will receive the mc server status instantly.

Do I need an API key to check Minecraft server status?

No API key is required. The only requirement is a User-Agent header that identifies your application. This helps us understand usage patterns and reach out if anything looks wrong.

What is the rate limit?

There is no published per-user rate limit. Responses for each server are cached at the CDN edge for 2 minutes, so repeated requests for the same server within that window return instantly without hitting the origin. Reasonable polling (once every few minutes) is perfectly fine.

Does the API support Bedrock Edition mc server status?

Yes. The API automatically detects whether a server is Java or Bedrock Edition and uses the correct protocol. Bedrock servers typically run on port 19132. You can also check Java Edition servers on port 25565 (the default).

What does "server: null" mean in the response?

A null server field means the server is offline or unreachable. This could be because the server is down, the address is incorrect, or a firewall is blocking the connection. An online server returns a full object with player count, MOTD, version, and more.

Can I use this to monitor mc server status automatically?

Yes. Because responses are cached at the edge for 2 minutes, polling every few minutes is efficient and will not overload the origin. The CF-Cache-Status response header tells you whether the result came from cache (HIT) or was freshly fetched (MISS).

Built by MinecraftPinger.com