PlayerConnected
Validates the player token is valid and has not already been consumed then marks the player as connected.
Player Tokens and Reserved Slots
Player tokens reserve a spot in the lobby until they expire. This allows for precise matchmaking up to exactly the lobby's player limit, which is important for games with small lobbies and a high influx of players.
By calling this endpoint with the player token, the player's spot is marked as connected and will not expire. If this endpoint is never called, the player's token will expire and this spot will be filled by another player.
Anti-Botting
Player tokens are only issued by caling rivet.api.matchmaker#JoinLobby, calling rivet.api.matchmaker#FindLobby, or
from the rivet.api.identity.common#GlobalEventMatchmakerLobbyJoin event.
These endpoints have anti-botting measures (i.e. enforcing max player
limits, captchas, and detecting bots), so valid player tokens provide some
confidence that the player is not a bot.
Therefore, it's important to make sure the token is valid by waiting for this endpoint to return OK before allowing the connected socket to do anything else. If this endpoint returns an error, the socket should be disconnected immediately.
How to Transmit the Player Token
The client is responsible for acquiring the player token by caling
rivet.api.matchmaker#JoinLobby, calling rivet.api.matchmaker#FindLobby,
or from the rivet.api.identity.common#GlobalEventMatchmakerLobbyJoin
event. Beyond that, it's up to the developer how the player token is
transmitted to the lobby.
If using WebSockets, the player token can be transmitted as a query paramter.
Otherwise, the player token will likely be automatically sent by the client once the socket opens. As mentioned above, nothing else should happen until the player token is validated.
Request Body required
- player_token password required
A JSON Web Token.
Slightly modified to include a description prefix and use Protobufs of JSON.
- 200
- 400
- 403
- 404
- 408
- 429
- 500
PlayerConnected 200 response
BadRequestError 400 response
Schema
- code string required
- message string required
- metadata
Unstructured metadata relating to an error. Must be manually parsed.
ForbiddenError 403 response
Schema
- code string required
- message string required
- metadata
Unstructured metadata relating to an error. Must be manually parsed.
NotFoundError 404 response
Schema
- code string required
- message string required
- metadata
Unstructured metadata relating to an error. Must be manually parsed.
UnauthorizedError 408 response
Schema
- code string required
- message string required
- metadata
Unstructured metadata relating to an error. Must be manually parsed.
RateLimitError 429 response
Schema
- code string required
- message string required
- metadata
Unstructured metadata relating to an error. Must be manually parsed.
InternalError 500 response
Schema
- code string required
- message string required
- metadata
Unstructured metadata relating to an error. Must be manually parsed.