Get Started

API Documentation

Manage servers, players, bans, and infractions programmatically via the Metabans REST API.

Base URLhttps://api.metabans.com/v1

Authentication

Authenticate with the API using an API Key — pass your key via the Authorization header:

Authorization: Bearer mb_your_api_key_here

API keys are created in your panel at /settings/api-keys. Each key has scoped abilities (e.g. servers:read, bans:write).

Public endpoints (under /api/public/*) require no authentication but are rate limited to 60 requests/minute.

Plugin endpoints (under /api/plugin/*) use a separate X-Server-Token header with per-server plugin tokens (mb_srv_...), generated in your server settings.

Public

Unauthenticated endpoints. No API key required.

GET/api/public/stats

Platform-wide statistics (active servers, players online, tracked players, network bans, reputation flags, communities).

Example response
{
  "active_servers": 10,
  "players_online": 100,
  "total_players": 100000,
  "total_bans": 100,
  "total_flags": 10000,
  "total_communities": 10,
  "total_servers": 20
}
Example
curl https://metabans.com/api/public/stats
GET/api/public/servers

Paginated list of public servers with filters.

Parameters
search
string
Search by hostname
game_type
string
Filter by game type (e.g. rust)
status
string
Filter: "online"
region
string
Country code (e.g. US, DE)
sort
string
players_desc, players_asc, name_asc, name_desc, newest
Example
curl "https://metabans.com/api/public/servers?game_type=rust&status=online"
GET/api/public/servers/{id}

Single server details with latest stats.

Example
curl https://metabans.com/api/public/servers/{id}
GET/v1/public/bans

Public global ban list with player info. Paginated.

Parameters
page
integer
Page number
per_page
integer
Results per page (max 100)
Example
curl https://api.metabans.com/v1/public/bans
Join Discord