Authenticate a player
Exchanges player credentials for an access token and a refresh token.
The response is camelCase on the wire. The SDK derives its session
expiry from expiresIn (seconds) and from JWT exp claims when
present. Token signatures are never verified by the client — the
backend is the identity owner.
When requiresOTP is true, the SDK surfaces an
AuthenticationFailed error because OTP verification is not yet
supported by the client runtime.
Authorizations
Player access token returned by login/refresh.
Body
Player email address or handle.
"player@example.com"
Player password.
"********"
Request a one-click style login session where supported.
Caller-supplied device identifier (also sent as the x-device-id header).
Human-readable device name.
Device operating system name.
Free-form location string reported by the client.
Response
Successful credential exchange.
Bearer access token.
Refresh token for /auth/validate rotation.
Access-token lifetime in seconds.
3600
Backend user object.
Optional backend message (for example "Login successful").
Whether the backend requires further OTP verification. The SDK surfaces an error when true.

