Getting Started with Citadel Cloud
Connect your DayZ server in minutes. Follow these steps to set up real-time monitoring, player management, and automated protection.
Quick Start
Create a Team
Sign in with your Steam account and create a team. Teams are the top-level container for your servers, members, and settings.
1. Go to citadelcloud.com and sign in with Steam 2. Click "Create Team" and enter a name 3. Your team is ready — you're the owner
Add a Server
Register your DayZ server with your team. You'll receive an API key that the plugin uses to authenticate.
1. Navigate to your team → Servers 2. Click "Register Server" 3. Enter your server name, IP, and ports 4. Copy the generated API key (shown only once)
Install the Plugin
Download and install the Citadel Cloud plugin on your DayZ server. The plugin connects via WebSocket and streams data in real-time.
1. Download CitadelPlugin from the releases page 2. Extract to your DayZ server's plugins directory 3. Edit the plugin config (see below) 4. Restart your DayZ server
Connect & Monitor
Once the plugin starts, it will establish a WebSocket connection to Citadel Cloud. Your dashboard will show live data within seconds.
Plugin Configuration
The plugin configuration file should be placed in your DayZ server's plugin directory. Here's the format:
{
"apiKey": "your-api-key-here",
"cloudUrl": "wss://api.citadelcloud.com/ws/plugin",
"metricsInterval": 15,
"logEvents": true,
"playerTracking": true,
"killTracking": true,
"chatTracking": true
}apiKeyYour server's API key from the dashboard. Required.cloudUrlWebSocket endpoint. Use the default unless self-hosting.metricsIntervalHow often to send metrics (seconds). Default: 15.logEventsStream connection/disconnection events. Default: true.playerTrackingTrack player positions for the live map. Default: true.killTrackingTrack kills and report to the cloud. Default: true.chatTrackingStream chat messages to the cloud. Default: true.API Reference
All API endpoints are under /api/v1. Authentication is via Bearer token in the Authorization header.
Authentication
/auth/steam/auth/me/auth/refreshTeams
/teams/teams/teams/:teamId/teams/:teamId/teams/:teamIdServers
/teams/:teamId/servers/teams/:teamId/servers/teams/:teamId/servers/:serverId/teams/:teamId/servers/:serverIdPlayers
/teams/:teamId/players/teams/:teamId/players/:playerId/teams/:teamId/servers/:serverId/players/onlineBans
/teams/:teamId/ban-lists/teams/:teamId/ban-lists/:listId/bans/teams/:teamId/ban-lists/:listId/bans/:banIdWebhooks
/teams/:teamId/webhooks/teams/:teamId/webhooks/teams/:teamId/webhooks/:id/testWebhooks
Webhooks send HTTP POST requests to your URL when events occur. Supports standard JSON and Discord webhook format.
Event Types
player_connectA player joined the serverplayer_disconnectA player left the serverchatA chat message was sentkillA player kill occurredserver_statusServer went online or offlineban_createdA new ban was createdban_revokedA ban was revokedPayload Format
{
"event": "player_connect",
"timestamp": "2026-03-01T12:00:00.000Z",
"server": {
"id": "...",
"name": "My DayZ Server"
},
"data": {
"steamId": "76561198...",
"playerName": "Survivor",
"ipAddress": "..."
}
}Enable "Discord webhook format" when creating a webhook to send Discord-compatible embeds instead of raw JSON.
Need help?
Join our Discord community for support, feature requests, and updates.
Get Started