{ "opencollection": "1.0.0", "info": { "name": "Minecraft Services Attributes Session API", "version": "1.0.0" }, "items": [ { "info": { "name": "Session", "type": "folder" }, "items": [ { "info": { "name": "Has Joined Verification (Server-Side)", "type": "http" }, "http": { "method": "GET", "url": "https://api.minecraftservices.com/session/minecraft/hasJoined", "params": [ { "name": "username", "value": "jeb_", "type": "query", "description": "Username sent by the connecting client." }, { "name": "serverId", "value": "e6e0fce6f3a8b7afa3b9eb0a0d3a8e9a4e8c8e1b", "type": "query", "description": "SHA-1 server hash computed during the handshake." }, { "name": "ip", "value": "203.0.113.42", "type": "query", "description": "Optional IP of the connecting client for stricter checks." }, { "name": "prevent_proxy", "value": "false", "type": "query", "description": "When true, fails verification if the client appears proxied." } ] }, "docs": "Called by a Minecraft server during the login handshake to verify that the client claiming to be `username` has authenticated against Mojang for the supplied `serverId` (a SHA-1 hash of the server's shared secret and public key). Returns the player's full session profile on success." }, { "info": { "name": "Join Session (Client-Side)", "type": "http" }, "http": { "method": "POST", "url": "https://api.minecraftservices.com/session/minecraft/join", "body": { "type": "json", "data": "{}" } }, "docs": "Called by the Minecraft client during the login handshake to register the session with Mojang before the server's hasJoined check. The request body carries the player's Minecraft access token, profile UUID, and the SHA-1 server hash." } ] } ], "bundled": true }