JavaScript SDK — Players

Players — mp.players

register
await mp.players.register(playerName, { playerData?, birthYear?, steamTicket?, steamIdentity? })

Registers a player. Returns player_id, private_key (the player token — store it) and player_tag. Steam fields accept a hex auth ticket + identity.

login
await mp.players.login(playerToken)

Starts the player session (PUT /login).

heartbeat
await mp.players.heartbeat(playerToken)

Keeps the player marked online — call on an interval while the session is active.

logout
await mp.players.logout(playerToken)

Ends the session cleanly.

rename
await mp.players.rename(playerToken, newName)

Renames the player; the new name is validated against the game's name rules server-side.

rotate
await mp.players.rotate(playerToken)

Rotates the player credential — store the returned private_key; the old token is retired.

list (admin)
await mp.players.list()

Lists all players. Requires apiPrivateToken — server-side only.

ban / unban (admin)
await mp.players.ban(playerId, { banDuration?, banReason? })
await mp.players.unban(playerId)

Timed or permanent bans. Admin operations — never ship the private token in a client.

getData / updateData
await mp.players.getData(playerToken)
await mp.players.updateData(playerToken, playerData)

Per-player JSON storage — stats, loadouts, progression. Leaderboards rank these fields server-side.