Created
August 27, 2025 05:19
-
-
Save MKRhere/25506357d406d11bba776816cce99efb to your computer and use it in GitHub Desktop.
Minecraft Server Management Protocol 25W35A - API Schema
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| "jsonrpc": "2.0", | |
| "id": 1, | |
| "result": { | |
| "openrpc": "1.3.2", | |
| "info": { "title": "Minecraft Server JSON-RPC", "version": "1.0.0" }, | |
| "methods": [ | |
| { | |
| "name": "minecraft:allowlist", | |
| "description": "Get the allowlist", | |
| "params": [], | |
| "result": { | |
| "name": "allowlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/player" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:allowlist/set", | |
| "description": "Set the allowlist", | |
| "params": [ | |
| { | |
| "name": "players", | |
| "schema": { "items": { "$ref": "#/components/schemas/player" }, "type": "array" }, | |
| "required": true | |
| } | |
| ], | |
| "result": { | |
| "name": "allowlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/player" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:allowlist/add", | |
| "description": "Add players to allowlist", | |
| "params": [ | |
| { | |
| "name": "add", | |
| "schema": { "items": { "$ref": "#/components/schemas/player" }, "type": "array" }, | |
| "required": true | |
| } | |
| ], | |
| "result": { | |
| "name": "allowlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/player" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:allowlist/remove", | |
| "description": "Remove players from allowlist", | |
| "params": [ | |
| { | |
| "name": "remove", | |
| "schema": { "items": { "$ref": "#/components/schemas/player" }, "type": "array" }, | |
| "required": true | |
| } | |
| ], | |
| "result": { | |
| "name": "allowlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/player" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:allowlist/clear", | |
| "description": "Clear all players in allowlist", | |
| "params": [], | |
| "result": { | |
| "name": "allowlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/player" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:bans", | |
| "description": "Get the ban list", | |
| "params": [], | |
| "result": { | |
| "name": "banlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/user_ban" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:bans/set", | |
| "description": "Set the banlist", | |
| "params": [ | |
| { | |
| "name": "bans", | |
| "schema": { "items": { "$ref": "#/components/schemas/user_ban" }, "type": "array" }, | |
| "required": true | |
| } | |
| ], | |
| "result": { | |
| "name": "banlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/user_ban" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:bans/add", | |
| "description": "Add players to ban list", | |
| "params": [ | |
| { | |
| "name": "add", | |
| "schema": { "items": { "$ref": "#/components/schemas/user_ban" }, "type": "array" }, | |
| "required": true | |
| } | |
| ], | |
| "result": { | |
| "name": "banlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/user_ban" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:bans/remove", | |
| "description": "Remove players from ban list", | |
| "params": [ | |
| { | |
| "name": "remove", | |
| "schema": { "items": { "$ref": "#/components/schemas/player" }, "type": "array" }, | |
| "required": true | |
| } | |
| ], | |
| "result": { | |
| "name": "banlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/user_ban" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:bans/clear", | |
| "description": "Clear all players in ban list", | |
| "params": [], | |
| "result": { | |
| "name": "banlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/user_ban" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:ip_bans", | |
| "description": "Get the ip ban list", | |
| "params": [], | |
| "result": { | |
| "name": "banlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/player" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:ip_bans/set", | |
| "description": "Set the ip banlist", | |
| "params": [ | |
| { | |
| "name": "banlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/ip_ban" }, "type": "array" }, | |
| "required": true | |
| } | |
| ], | |
| "result": { | |
| "name": "banlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/ip_ban" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:ip_bans/add", | |
| "description": "Add ip to ban list", | |
| "params": [ | |
| { | |
| "name": "add", | |
| "schema": { "items": { "$ref": "#/components/schemas/incoming_ip_ban" }, "type": "array" }, | |
| "required": true | |
| } | |
| ], | |
| "result": { | |
| "name": "banlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/ip_ban" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:ip_bans/remove", | |
| "description": "Remove ip from ban list", | |
| "params": [{ "name": "ip", "schema": { "items": { "type": "string" }, "type": "array" }, "required": true }], | |
| "result": { | |
| "name": "banlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/ip_ban" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:ip_bans/clear", | |
| "description": "Clear all ips in ban list", | |
| "params": [], | |
| "result": { | |
| "name": "banlist", | |
| "schema": { "items": { "$ref": "#/components/schemas/ip_ban" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:players", | |
| "description": "Get all connected players", | |
| "params": [], | |
| "result": { | |
| "name": "players", | |
| "schema": { "items": { "$ref": "#/components/schemas/player" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:players/kick", | |
| "description": "Kick players", | |
| "params": [ | |
| { | |
| "name": "kick", | |
| "schema": { "items": { "$ref": "#/components/schemas/kick_player" }, "type": "array" }, | |
| "required": true | |
| } | |
| ], | |
| "result": { | |
| "name": "kicked", | |
| "schema": { "items": { "$ref": "#/components/schemas/player" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:operators", | |
| "description": "Get all oped players", | |
| "params": [], | |
| "result": { | |
| "name": "operators", | |
| "schema": { "items": { "$ref": "#/components/schemas/operator" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:operators/set", | |
| "description": "Set all oped players", | |
| "params": [ | |
| { | |
| "name": "operators", | |
| "schema": { "items": { "$ref": "#/components/schemas/operator" }, "type": "array" }, | |
| "required": true | |
| } | |
| ], | |
| "result": { | |
| "name": "operators", | |
| "schema": { "items": { "$ref": "#/components/schemas/operator" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:operators/add", | |
| "description": "Op players", | |
| "params": [ | |
| { | |
| "name": "add", | |
| "schema": { "items": { "$ref": "#/components/schemas/operator" }, "type": "array" }, | |
| "required": true | |
| } | |
| ], | |
| "result": { | |
| "name": "operators", | |
| "schema": { "items": { "$ref": "#/components/schemas/operator" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:operators/remove", | |
| "description": "Deop players", | |
| "params": [ | |
| { | |
| "name": "remove", | |
| "schema": { "items": { "$ref": "#/components/schemas/player" }, "type": "array" }, | |
| "required": true | |
| } | |
| ], | |
| "result": { | |
| "name": "operators", | |
| "schema": { "items": { "$ref": "#/components/schemas/operator" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:operators/clear", | |
| "description": "Deop all players", | |
| "params": [], | |
| "result": { | |
| "name": "operators", | |
| "schema": { "items": { "$ref": "#/components/schemas/operator" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:server/status", | |
| "description": "Get server status", | |
| "params": [], | |
| "result": { "name": "status", "schema": { "$ref": "#/components/schemas/server_state" } } | |
| }, | |
| { | |
| "name": "minecraft:server/save", | |
| "description": "Save server state", | |
| "params": [{ "name": "flush", "schema": { "type": "boolean" }, "required": true }], | |
| "result": { "name": "saving", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:server/stop", | |
| "description": "Stop server", | |
| "params": [], | |
| "result": { "name": "stopping", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:server/system_message", | |
| "description": "Send a system message", | |
| "params": [ | |
| { "name": "message", "schema": { "$ref": "#/components/schemas/system_message" }, "required": true } | |
| ], | |
| "result": { "name": "sent", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/autosave", | |
| "description": "Get whether automatic world saving is enabled on the server", | |
| "params": [], | |
| "result": { "name": "enabled", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/autosave/set", | |
| "description": "Enable or disable automatic world saving on the server", | |
| "params": [{ "name": "enable", "schema": { "type": "boolean" }, "required": true }], | |
| "result": { "name": "enabled", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/difficulty", | |
| "description": "Get the current difficulty level of the server", | |
| "params": [], | |
| "result": { "name": "difficulty", "schema": { "type": "string" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/difficulty/set", | |
| "description": "Set the difficulty level of the server", | |
| "params": [{ "name": "difficulty", "schema": { "type": "string" }, "required": true }], | |
| "result": { "name": "difficulty", "schema": { "type": "string" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/enforce_allowlist", | |
| "description": "Get whether allowlist enforcement is enabled (kicks players immediately when removed from allowlist)", | |
| "params": [], | |
| "result": { "name": "enforced", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/enforce_allowlist/set", | |
| "description": "Enable or disable allowlist enforcement (when enabled, players are kicked immediately upon removal from allowlist)", | |
| "params": [{ "name": "enforce", "schema": { "type": "boolean" }, "required": true }], | |
| "result": { "name": "enforced", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/use_allowlist", | |
| "description": "Get whether the allowlist is enabled on the server", | |
| "params": [], | |
| "result": { "name": "used", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/use_allowlist/set", | |
| "description": "Enable or disable the allowlist on the server (controls whether only allowlisted players can join)", | |
| "params": [{ "name": "use", "schema": { "type": "boolean" }, "required": true }], | |
| "result": { "name": "used", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/max_players", | |
| "description": "Get the maximum number of players allowed to connect to the server", | |
| "params": [], | |
| "result": { "name": "max", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/max_players/set", | |
| "description": "Set the maximum number of players allowed to connect to the server", | |
| "params": [{ "name": "max", "schema": { "type": "integer" }, "required": true }], | |
| "result": { "name": "max", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/pause_when_empty_seconds", | |
| "description": "Get the number of seconds before the game is automatically paused when no players are online", | |
| "params": [], | |
| "result": { "name": "seconds", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/pause_when_empty_seconds/set", | |
| "description": "Set the number of seconds before the game is automatically paused when no players are online", | |
| "params": [{ "name": "seconds", "schema": { "type": "integer" }, "required": true }], | |
| "result": { "name": "seconds", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/player_idle_timeout", | |
| "description": "Get the number of seconds before idle players are automatically kicked from the server", | |
| "params": [], | |
| "result": { "name": "seconds", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/player_idle_timeout/set", | |
| "description": "Set the number of seconds before idle players are automatically kicked from the server", | |
| "params": [{ "name": "seconds", "schema": { "type": "integer" }, "required": true }], | |
| "result": { "name": "seconds", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/allow_flight", | |
| "description": "Get whether flight is allowed for players in Survival mode", | |
| "params": [], | |
| "result": { "name": "allowed", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/allow_flight/set", | |
| "description": "Allow or disallow flight for players in Survival mode", | |
| "params": [{ "name": "allow", "schema": { "type": "boolean" }, "required": true }], | |
| "result": { "name": "allowed", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/motd", | |
| "description": "Get the server's message of the day displayed to players", | |
| "params": [], | |
| "result": { "name": "message", "schema": { "type": "string" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/motd/set", | |
| "description": "Set the server's message of the day displayed to players", | |
| "params": [{ "name": "message", "schema": { "type": "string" }, "required": true }], | |
| "result": { "name": "message", "schema": { "type": "string" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/spawn_protection_radius", | |
| "description": "Get the spawn protection radius in blocks (only operators can edit within this area)", | |
| "params": [], | |
| "result": { "name": "radius", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/spawn_protection_radius/set", | |
| "description": "Set the spawn protection radius in blocks (only operators can edit within this area)", | |
| "params": [{ "name": "radius", "schema": { "type": "integer" }, "required": true }], | |
| "result": { "name": "radius", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/force_game_mode", | |
| "description": "Get whether players are forced to use the server's default game mode", | |
| "params": [], | |
| "result": { "name": "forced", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/force_game_mode/set", | |
| "description": "Enable or disable forcing players to use the server's default game mode", | |
| "params": [{ "name": "force", "schema": { "type": "boolean" }, "required": true }], | |
| "result": { "name": "forced", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/game_mode", | |
| "description": "Get the server's default game mode", | |
| "params": [], | |
| "result": { "name": "mode", "schema": { "type": "string" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/game_mode/set", | |
| "description": "Set the server's default game mode", | |
| "params": [{ "name": "mode", "schema": { "type": "string" }, "required": true }], | |
| "result": { "name": "mode", "schema": { "type": "string" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/view_distance", | |
| "description": "Get the server's view distance in chunks", | |
| "params": [], | |
| "result": { "name": "distance", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/view_distance/set", | |
| "description": "Set the server's view distance in chunks", | |
| "params": [{ "name": "distance", "schema": { "type": "integer" }, "required": true }], | |
| "result": { "name": "distance", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/simulation_distance", | |
| "description": "Get the server's simulation distance in chunks", | |
| "params": [], | |
| "result": { "name": "distance", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/simulation_distance/set", | |
| "description": "Set the server's simulation distance in chunks", | |
| "params": [{ "name": "distance", "schema": { "type": "integer" }, "required": true }], | |
| "result": { "name": "distance", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/accept_transfers", | |
| "description": "Get whether the server accepts player transfers from other servers", | |
| "params": [], | |
| "result": { "name": "accepted", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/accept_transfers/set", | |
| "description": "Enable or disable accepting player transfers from other servers", | |
| "params": [{ "name": "accept", "schema": { "type": "boolean" }, "required": true }], | |
| "result": { "name": "accepted", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/status_heartbeat_interval", | |
| "description": "Get the interval in seconds between server status heartbeats", | |
| "params": [], | |
| "result": { "name": "seconds", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/status_heartbeat_interval/set", | |
| "description": "Set the interval in seconds between server status heartbeats", | |
| "params": [{ "name": "seconds", "schema": { "type": "integer" }, "required": true }], | |
| "result": { "name": "seconds", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/operator_user_permission_level", | |
| "description": "Get the permission level required for operator commands", | |
| "params": [], | |
| "result": { "name": "level", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/operator_user_permission_level/set", | |
| "description": "Set the permission level required for operator commands", | |
| "params": [{ "name": "level", "schema": { "type": "integer" }, "required": true }], | |
| "result": { "name": "level", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/hide_online_players", | |
| "description": "Get whether the server hides online player information from status queries", | |
| "params": [], | |
| "result": { "name": "hidden", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/hide_online_players/set", | |
| "description": "Enable or disable hiding online player information from status queries", | |
| "params": [{ "name": "hide", "schema": { "type": "boolean" }, "required": true }], | |
| "result": { "name": "hidden", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/status_replies", | |
| "description": "Get whether the server responds to connection status requests", | |
| "params": [], | |
| "result": { "name": "enabled", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/status_replies/set", | |
| "description": "Enable or disable the server responding to connection status requests", | |
| "params": [{ "name": "enable", "schema": { "type": "boolean" }, "required": true }], | |
| "result": { "name": "enabled", "schema": { "type": "boolean" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/entity_broadcast_range", | |
| "description": "Get the entity broadcast range as a percentage", | |
| "params": [], | |
| "result": { "name": "percentage_points", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:serversettings/entity_broadcast_range/set", | |
| "description": "Set the entity broadcast range as a percentage", | |
| "params": [{ "name": "percentage_points", "schema": { "type": "integer" }, "required": true }], | |
| "result": { "name": "percentage_points", "schema": { "type": "integer" } } | |
| }, | |
| { | |
| "name": "minecraft:gamerules", | |
| "description": "Get the available game rule keys and their current values", | |
| "params": [], | |
| "result": { | |
| "name": "gamerules", | |
| "schema": { "items": { "$ref": "#/components/schemas/typed_game_rule" }, "type": "array" } | |
| } | |
| }, | |
| { | |
| "name": "minecraft:gamerules/update", | |
| "description": "Update game rule value", | |
| "params": [ | |
| { "name": "gamerule", "schema": { "$ref": "#/components/schemas/untyped_game_rule" }, "required": true } | |
| ], | |
| "result": { "name": "gamerule", "schema": { "$ref": "#/components/schemas/typed_game_rule" } } | |
| }, | |
| { "name": "notification:server/started", "description": "Server started", "params": [] }, | |
| { "name": "notification:server/stopping", "description": "Server shutting down", "params": [] }, | |
| { "name": "notification:server/saving", "description": "Server save started", "params": [] }, | |
| { "name": "notification:server/saved", "description": "Server save completed", "params": [] }, | |
| { | |
| "name": "notification:players/joined", | |
| "description": "Player joined", | |
| "params": [{ "name": "player", "schema": { "$ref": "#/components/schemas/player" }, "required": true }] | |
| }, | |
| { | |
| "name": "notification:players/left", | |
| "description": "Player left", | |
| "params": [{ "name": "player", "schema": { "$ref": "#/components/schemas/player" }, "required": true }] | |
| }, | |
| { | |
| "name": "notification:operators/added", | |
| "description": "Player was oped", | |
| "params": [{ "name": "player", "schema": { "$ref": "#/components/schemas/operator" }, "required": true }] | |
| }, | |
| { | |
| "name": "notification:operators/removed", | |
| "description": "Player was deoped", | |
| "params": [{ "name": "player", "schema": { "$ref": "#/components/schemas/operator" }, "required": true }] | |
| }, | |
| { | |
| "name": "notification:allowlist/added", | |
| "description": "Player was added to allowlist", | |
| "params": [{ "name": "player", "schema": { "$ref": "#/components/schemas/player" }, "required": true }] | |
| }, | |
| { | |
| "name": "notification:allowlist/removed", | |
| "description": "Player was removed from allowlist", | |
| "params": [{ "name": "player", "schema": { "$ref": "#/components/schemas/player" }, "required": true }] | |
| }, | |
| { | |
| "name": "notification:ip_bans/added", | |
| "description": "Ip was added to ip ban list", | |
| "params": [{ "name": "player", "schema": { "$ref": "#/components/schemas/ip_ban" }, "required": true }] | |
| }, | |
| { | |
| "name": "notification:ip_bans/removed", | |
| "description": "Ip was removed from ip ban list", | |
| "params": [{ "name": "player", "schema": { "type": "string" }, "required": true }] | |
| }, | |
| { | |
| "name": "notification:bans/added", | |
| "description": "Player was added to ban list", | |
| "params": [{ "name": "player", "schema": { "$ref": "#/components/schemas/user_ban" }, "required": true }] | |
| }, | |
| { | |
| "name": "notification:bans/removed", | |
| "description": "Player was removed from ban list", | |
| "params": [{ "name": "player", "schema": { "$ref": "#/components/schemas/player" }, "required": true }] | |
| }, | |
| { | |
| "name": "notification:gamerules/updated", | |
| "description": "Gamerule was changed", | |
| "params": [ | |
| { "name": "gamerule", "schema": { "$ref": "#/components/schemas/typed_game_rule" }, "required": true } | |
| ] | |
| }, | |
| { | |
| "name": "notification:server/status", | |
| "description": "Server status heartbeat", | |
| "params": [{ "name": "status", "schema": { "$ref": "#/components/schemas/server_state" }, "required": true }] | |
| } | |
| ], | |
| "components": { | |
| "schemas": { | |
| "untyped_game_rule": { | |
| "properties": { "value": { "type": "string" }, "key": { "type": "string" } }, | |
| "type": "object" | |
| }, | |
| "incoming_ip_ban": { | |
| "properties": { | |
| "reason": { "type": "string" }, | |
| "expires": { "type": "string" }, | |
| "ip": { "type": "string" }, | |
| "source": { "type": "string" }, | |
| "player": { "$ref": "#/components/schemas/player" } | |
| }, | |
| "type": "object" | |
| }, | |
| "system_message": { | |
| "properties": { | |
| "receivingPlayers": { "type": "array", "items": { "$ref": "#/components/schemas/player" } }, | |
| "overlay": { "type": "boolean" }, | |
| "message": { "$ref": "#/components/schemas/message" } | |
| }, | |
| "type": "object" | |
| }, | |
| "kick_player": { | |
| "properties": { | |
| "players": { "type": "array", "items": { "$ref": "#/components/schemas/player" } }, | |
| "message": { "$ref": "#/components/schemas/message" } | |
| }, | |
| "type": "object" | |
| }, | |
| "ip_ban": { | |
| "properties": { | |
| "reason": { "type": "string" }, | |
| "expires": { "type": "string" }, | |
| "ip": { "type": "string" }, | |
| "source": { "type": "string" } | |
| }, | |
| "type": "object" | |
| }, | |
| "typed_game_rule": { | |
| "properties": { | |
| "type": { "type": "string", "enum": ["integer", "boolean"] }, | |
| "value": { "type": "string" }, | |
| "key": { "type": "string" } | |
| }, | |
| "type": "object" | |
| }, | |
| "user_ban": { | |
| "properties": { | |
| "reason": { "type": "string" }, | |
| "expires": { "type": "string" }, | |
| "source": { "type": "string" }, | |
| "player": { "$ref": "#/components/schemas/player" } | |
| }, | |
| "type": "object" | |
| }, | |
| "message": { | |
| "properties": { | |
| "translatable": { "type": "string" }, | |
| "translatableParams": { "type": "array", "items": { "type": "string" } }, | |
| "literal": { "type": "string" } | |
| }, | |
| "type": "object" | |
| }, | |
| "version": { | |
| "properties": { "protocol": { "type": "integer" }, "name": { "type": "string" } }, | |
| "type": "object" | |
| }, | |
| "server_state": { | |
| "properties": { | |
| "players": { "type": "array", "items": { "$ref": "#/components/schemas/player" } }, | |
| "started": { "type": "boolean" }, | |
| "version": { "$ref": "#/components/schemas/version" } | |
| }, | |
| "type": "object" | |
| }, | |
| "operator": { | |
| "properties": { | |
| "permissionLevel": { "type": "integer" }, | |
| "bypassesPlayerLimit": { "type": "boolean" }, | |
| "player": { "$ref": "#/components/schemas/player" } | |
| }, | |
| "type": "object" | |
| }, | |
| "player": { "properties": { "name": { "type": "string" }, "id": { "type": "string" } }, "type": "object" } | |
| } | |
| } | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment