API Reference
How EnderDash communicates with your servers and how to use API keys for authentication.
Overview
EnderDash communicates with your Minecraft servers over WebRTC peer-to-peer data channels using JSON-RPC 2.0. Control-plane actions like console commands, file access, terminals, and Ocelot tools still happen over that real-time channel.
Alongside that, EnderDash now exposes a small read-only REST API for dashboard integrations and scripting.
API Keys
API keys are used to authenticate the EnderDash plugin on your Minecraft server. Each server needs its own API key to connect to the signaling server and establish a WebRTC session.
You can generate and manage API keys in the dashboard under Settings > API Keys. Each key can be given a name and has metadata attached for tracking.
Communication Protocol
When you open a server in the dashboard:
- Your browser connects to the signaling server (Cloudflare Durable Objects)
- The signaling server brokers a WebRTC handshake between your browser and the Minecraft server plugin
- A direct peer-to-peer data channel is established
- All commands, console output, file operations, and data flow over this encrypted channel
Messages use JSON-RPC 2.0 and support request/response, notifications, and pub/sub subscriptions.
REST API
These endpoints are available today:
GET /api/v1/organization/:organizationSlug/serversGET /api/v1/organization/:organizationSlug/activity
The REST API is currently read-only and uses your authenticated EnderDash session. It is intended for dashboard extensions, scripts, and internal tooling that need inventory or audit data without opening the full UI.
Server Functions
EnderDash also exposes internal server functions for operations like server validation and status checks. These are not public APIs and are used internally by the dashboard.