REST API
Connect your own bot, website or tools to your servers. JSON over HTTPS with a Bearer token; player IPs and BattlEye GUIDs are never in it.
Endpoints
Base URL https://dayzhub.cloud/api/v1/console · 120 requests a minute.
| Method | Path | What it does | Scope |
|---|---|---|---|
| GET | /openapi.json | This API as an OpenAPI 3.1 file (public, no token needed). | public |
| GET | /servers | Your servers with status, players, real FPS and uptime. | read |
| GET | /servers/:serverId | One server plus everyone online. | read |
| GET | /servers/:serverId/players | Players with playtime, sessions, kills and deaths. | read |
| GET | /servers/:serverId/events | The log: join, leave, kill, death, hit, aikill, placement, build, dismantle, destroy, base_hit, chat, admin, system. | read |
| GET | /servers/:serverId/bans | Active bans on every list the server uses. | read |
| GET | /servers/:serverId/bans/:ban | One ban by its id: reason, evidence and whether it is active, expired or revoked. | read |
| POST | /servers/:serverId/bans | Ban: {"steamId":"7656…","minutes":0,"reason":"…"} (0 = permanent). | write |
| DELETE | /servers/:serverId/bans/:ban | Lift a ban from the server's own list. | write |
| POST | /servers/:serverId/actions | Any Operations action: {"action":"heal","steamId":"7656…"}, "message", "teleport", "give", "kick", "say", "restart"… | write |
| POST | /servers/:serverId/kick | Kick a player with a reason they see. | write |
| POST | /servers/:serverId/message | Send a message to one player, or broadcast it to everyone. | write |
| GET | /servers/:serverId/whitelist | The whitelist: whether it is on and who is on it. | read |
| POST | /servers/:serverId/whitelist | Add players to the whitelist (up to 5000). | write |
| DELETE | /servers/:serverId/whitelist/:steamId | Remove a player from the whitelist (the last one cannot go while it is on). | write |
| GET | /servers/:serverId/priority | The priority players who skip the queue. | read |
| POST | /servers/:serverId/priority | Add players to the priority list (up to 1000). | write |
| DELETE | /servers/:serverId/priority/:steamId | Remove a player from the priority list. | write |
| GET | /servers/:serverId/sessions | Play sessions from join to leave, newest first. | read |
| GET | /servers/:serverId/stats | Population and FPS history, one point every 5 minutes. | read |
| GET | /servers/:serverId/leaderboard | Leaderboard: kills, deaths, playtime, longest kill, K/D, PvE K/D or infected kills. | read |
| GET | /servers/:serverId/hud | In-game leaderboard HUD: the top players of seven boards and the asked players' own ranks. | read |
| POST | /servers/:serverId/hud | The same as the HUD call, as a POST (for DayZ game servers). | read |
| GET | /players/lookup | Find a player on all your servers by SteamID64 or name. | read |
Money, bank, ATM, garage and base-wipe actions can only be run from the dashboard, never with a token.
Each token may make 300 requests a minute and 150000 a day (lookups and logs count more than simple reads).
curl -H "Authorization: Bearer dhca_…" \ https://dayzhub.cloud/api/v1/console/servers/dhc_demo_survive/events?type=kill&limit=20
openapi.json · Full documentation and client examples are in docs/API.md and docs/sdk.
Tokens
2 tokens, no fixed limit.
Signed webhooks
Send events from your servers to your own website or bot as signed JSON: joins, leaves, kills, bans, server status, reports and alerts.
Each delivery is JSON with an event id you can use to ignore repeats. Failed deliveries are retried after 30 seconds, 2 minutes, 10 minutes, 1 hour and 6 hours; a webhook is switched off after 20 failures in a row. Replay window: 300 seconds.
X-DHC-Signature: t=1760000000,v1=<hex> v1 = HMAC_SHA256(secret, t + "." + rawBody)