Commands & admin API
Player commands
The proxy handles these itself; the servers never see them.
| Command | Permission | What it does |
|---|---|---|
/server [name] [dimension|seamless|cinematic] | pmproxy.command.server | Without a name: list servers. With one: go there. |
/hub (/lobby) | pmproxy.command.hub | Go to the lobby (fallback groups). |
/glist | pmproxy.command.glist | Players on each server. |
/find <player> | pmproxy.command.find | Which server a player is on. |
/send <player|*> <server|group> [style] | pmproxy.command.send | Move a player, or everyone. |
/alert <message> | pmproxy.command.alert | Message to the whole network. |
/gkick <player> [message] | pmproxy.command.kick | Kick from the network. |
Who has each permission: permissions.default, permissions.admin and player-groups in config.yml, or the permissions plugin (/perm, alias /lp).
VanillaMine backends also register /server, /hub, /glist, /find, /send and /alert with pocketmine.command.* permissions, for use from a server's console.
Proxy console
help, list / glist, find, send, kick, alert, servers, addserver, removeserver, drain, block, unblock, reload, stop.
Admin HTTP API
Enable with admin.bind (e.g. 127.0.0.1:8081) and set admin.token. Keep it private.
| Request | Body | Does |
|---|---|---|
GET /api/players | Online players and their servers. | |
GET /api/servers | Servers, state and player counts. | |
POST /api/servers | Add a server at runtime. | |
POST /api/send | {"player","from","target","style"} | Move a player. |
POST /api/kick | {"player","from","message"} | Kick a player. |
POST /api/alert | {"message","from"} | Network-wide message. |
POST /api/block | {"ip","seconds","unblock"} | Block or unblock an address. |
POST /api/drain | {"server","drain","move"} | Stop sending players to a server, optionally move its players away. |
POST /api/reload | Reload config.yml. | |
GET /metrics | Prometheus metrics. |
bash
curl -H "Authorization: Bearer $TOKEN" -d '{"player":"Steve","target":"survival"}' http://127.0.0.1:8081/api/send