Developers
HTTP API
The JSON API the plugin uses to reach the dashboard. You can call it from your own tools.
Authentication
Send your license key as a bearer token.
Authorization: Bearer SAC-XXXXX-XXXXX-XXXXX-XXXXXEndpoints
| Endpoint | Use |
|---|---|
GET /api/v1/license | Check a key is valid. |
POST /api/v1/ingest | Report a heartbeat and up to 200 alerts. |
GET /api/health | Service status. No key needed. |
Ingest
POST https://sentinelac.xyz/api/v1/ingest
Content-Type: application/json
{
"server": { "name": "Survival", "version": "V1 (2.9.0)", "platform": "Paper 1.21.11", "players": 84 },
"alerts": [
{ "ts": 1759230000000, "player": "Kyro_", "uuid": "", "check": "reach",
"vl": 3.2, "max": 3, "kicked": true, "detail": "dist=3.61>3.40", "world": "world", "ping": 43 }
]
}{ "ok": true, "accepted": 1, "alerts": true }Limits and errors
- 90 requests a minute per key, 200 alerts per request, 256 KB per body.
- The dashboard keeps the latest 10,000 alerts per license.
- Errors return
{"ok": false, "code": "...", "message": "..."}with a matching status:401for a bad key,413for a large body,429when rate limited.