CSTRIKE API v1

Simple JSON API for live server data on CS 1.6, CS:GO, CS:S and CS2. One URL works for any game — no API key. Built for MOTD scripts, Discord bots and server panels.

Simple by default Universal /api/v1/server/ip/port 90 req/min per IP ?pretty=1 readable JSON
Community — multiple servers

You run a community with several servers and want to show them on your own website? Two options:

1. All servers in your network (recommended if you created a Network on CSTRIKE):

curl "https://msboost.eu/api/v1/network/msboost-eu/servers?pretty=1"

Replace msboost-eu with your network slug (from /network/...). Returns every community server in one request.

2. Fixed IP list (any servers listed on CSTRIKE, with or without a network):

curl "https://msboost.eu/api/v1/servers/batch?list=81.181.244.41:27015,51.38.119.150:27015&pretty=1"

Up to 30 servers per request, comma-separated. Missing IPs are listed in not_found.

Add &players=1 to include players_online on each server (heavier — use only when needed).

PHP example — display on your site:

$slug = 'msboost-eu';
$data = json_decode(file_get_contents('https://msboost.eu/api/v1/network/' . $slug . '/servers'), true);
foreach ($data['servers'] ?? [] as $sv) {
    echo $sv['hostname'] . ' — ' . $sv['players']['current'] . '/' . $sv['players']['max'] . ' — ' . $sv['map'] . "\n";
}
Quick start (single server)

You only need the server IP and port — CSTRIKE detects CS 1.6 / CS:GO / CS:S / CS2 automatically:

curl "https://msboost.eu/api/v1/server/81.181.244.41/27015?pretty=1"

Or pin a game in the path if you prefer:

curl "https://msboost.eu/api/v1/csgo/server/81.181.244.41/27015"
Server response (simple)

Only the fields that matter for integration:

{
  "ok": true,
  "meta": { "api_version": 1, "format": "simple", "game": { "type", "slug", "label" } },
  "server": {
    "hostname": "My Server",
    "ip": "81.181.244.41",
    "port": 27015,
    "map": "de_dust2",
    "country": "RO",
    "players": { "current": 12, "max": 32 },
    "ping_ms": 45,
    "rank": 3,
    "votes": 42,
    "players_online": [
      {
        "name": "Player1",
        "kills": 26,
        "deaths": null,
        "session_seconds": 5165,
        "total_play_seconds": 86400
      }
    ],
    "links": { "profile", "connect" }
  }
}
  • players.current / players.max — online count vs slots
  • ping_ms — query latency to the game server (ms)
  • rank — position on CSTRIKE for this game
  • votes — total community votes
  • session_seconds — time on server this session (from game query)
  • total_play_seconds — tracked playtime on this server (from CSTRIKE stats)
  • deathsnull when the game query does not expose deaths (common on CS 1.6)

Verbose nested JSON: add ?format=full

Endpoints
GET https://msboost.eu/api/v1/network/{slug}/servers

All servers in a CSTRIKE network — ideal for community websites.

GET https://msboost.eu/api/v1/servers/batch?list=ip:port,...

Up to 30 servers by IP list. Optional &players=1.

GET https://msboost.eu/api/v1/server/{ip}/{port}

Recommended. Live server + online players. Works for any listed game.

GET https://msboost.eu/api/v1/cs16/servers

CS 1.6 server list — same simple fields, without players_online.

  • online=1 · country=RO · search= · page · limit
GET https://msboost.eu/api/v1/csgo/servers

CS:GO server list — same simple fields, without players_online.

  • online=1 · country=RO · search= · page · limit
GET https://msboost.eu/api/v1/css/servers

CS:S server list — same simple fields, without players_online.

  • online=1 · country=RO · search= · page · limit
GET https://msboost.eu/api/v1/cs2/servers

CS2 server list — same simple fields, without players_online.

  • online=1 · country=RO · search= · page · limit
GET https://msboost.eu/api/v1/{game}/server/{ip}/{port}/stats?period=24h

Player count history — 24h, 7d, or 30d. Universal: /api/v1/server/{ip}/{port}/stats

Integration snippet

PHP — fetch any server by IP:

$ip = '81.181.244.41';
$port = 27015;
$json = file_get_contents('https://msboost.eu/api/v1/server/' . $ip . '/' . $port);
$data = json_decode($json, true);
$sv = $data['server'] ?? [];
echo $sv['hostname'] . ' — ' . $sv['players']['current'] . '/' . $sv['players']['max'];

JavaScript (browser / Node):

const r = await fetch('https://msboost.eu/api/v1/server/81.181.244.41/27015');
const { server } = await r.json();
console.log(server.hostname, server.players);