SoulFire LogoSoulFire

Update instance account

Updates an existing Minecraft account in the instance. The account is matched by profile_id and replaced.

POST
/v1/instances/p0/accounts:update

Updates an existing Minecraft account in the instance. The account is matched by profile_id and replaced.

Authorization

AuthorizationBearer <token>

Preferred API authentication. Use a JWT with the api audience.

In: header

Path Parameters

id*string

The unique identifier (UUID) of the instance.

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

account.type*

The authentication type used for this account. Determines which account_data field is populated.

account.profile_id*string

The unique profile identifier (UUID) for this account. For online accounts: The official Minecraft profile UUID from Microsoft. For offline accounts: A deterministic UUID derived from the username. Format: Standard UUID string (e.g., "550e8400-e29b-41d4-a716-446655440000").

Formatuuid
account.last_known_name*string

The last known username/gamertag for this account. Updated during authentication and refresh operations. For Java: The Minecraft username (up to 16 characters). For Bedrock: The Xbox gamertag.

account.online_chain_java_data.auth_chain*

JSON structure containing the complete authentication chain from minecraftauth library. Includes Microsoft OAuth tokens, Xbox Live tokens, and Minecraft access tokens. This data can be refreshed to obtain new tokens without re-authentication.

account.bedrock_data.auth_chain*

JSON structure containing the complete Bedrock authentication chain. Includes Xbox Live tokens and Bedrock-specific session data. Compatible with the ViaBedrock protocol implementation.

account.online_simple_java_data.access_token*string

The raw Minecraft access token (JWT).

account.online_simple_java_data.expire_time_ms*integer

Token expiry time in milliseconds since epoch.

Formatint64
account.config.namespace*string
account.config.entries.key*string
account.config.entries.value*
account.persistent_metadata.namespace*string
account.persistent_metadata.entries.key*string
account.persistent_metadata.entries.value*

Response Body

application/json

application/json

application/json

application/json

curl -X POST "http://127.0.0.1:38765/v1/instances/p0/accounts:update" \  -H "Content-Type: application/json" \  -d '{    "account.type": {},    "account.profile_id": "8dec25d7-d125-46da-8314-b43b3c5640ed",    "account.last_known_name": "string",    "account.online_chain_java_data.auth_chain": {},    "account.bedrock_data.auth_chain": {},    "account.online_simple_java_data.access_token": "string",    "account.online_simple_java_data.expire_time_ms": 0,    "account.config.namespace": "string",    "account.config.entries.key": "string",    "account.config.entries.value": {},    "account.persistent_metadata.namespace": "string",    "account.persistent_metadata.entries.key": "string",    "account.persistent_metadata.entries.value": {}  }'
{}

How is this page?