Skip to content

Manage rooms in the dashboard

Before you manage rooms, connect the dashboard to a relay. Check the active connection in the navigation menu before making changes. All actions apply to that relay, not to every saved connection.

Click Home to view HTTP health, relay version, request latency, and room statistics. The client total comes from room snapshots: it excludes active relay hosts and selected promotion candidates. Fish-Networking’s local host client counts as a relay client; Netcode for GameObjects and Mirror handle their local host clients internally, so those clients are not counted.

The latency gauge measures the browser’s HTTP health request. It is not game-packet latency or a UDP connectivity test. To check game traffic, test a host-and-client session.

Click Rooms. In the Search rooms box, enter a room code or display name. Search is case-insensitive. To filter the results, select options in the Type, Visibility, Host, and Clients lists. On a narrow screen, click Filters to open these controls.

Click a room’s name or code to inspect its client count, host state, display name, and metadata. The room list and room details refresh every 5 seconds.

The dashboard lists every room returned by the admin API, including rooms marked private. The Public setting is presentation metadata, not a join restriction. For admission rules and room lifetime, see Choose a room type.

  1. On the Rooms page, click Create room.
  2. In the Display name box, enter a name for the room.
  3. In the Maximum clients box, enter the client limit. It defaults to 4096 and accepts values from 1 to 65,535.
  4. Select the Public checkbox for a public room, or clear it for a private room.
  5. Click Create room. The dashboard opens the new room’s details.
  6. Give players the room code, relay address, and UDP port. The room starts without a host. The first eligible client must complete promotion before it can host the game.

The dashboard creates a persistent room through POST /rooms. It does not create a game server or connect a player. To start the session, follow Create persistent rooms.

You cannot change the room’s client limit, visibility, or kind after creation. Add metadata from the room’s details page.

To rename a room, enter a name in the Display name box, then click Save display name. An empty value clears the name. The relay limits names to 255 UTF-8 bytes, so a name containing multibyte characters can exceed the server’s limit before reaching the form’s character limit.

In the Metadata section, click Add entry, then enter a key and value in the Metadata key and Metadata value boxes. Click Remove entry to mark a saved entry for removal. To undo a removal before saving, click Restore entry. Click Save metadata to apply the changes, or click Discard changes to return the editor to the loaded values without updating the relay.

Metadata keys are case-insensitive on the relay. Do not put admin tokens, room host tokens, or promotion claims in metadata.

On relay 1.4.0 or later, find the client in the room’s Clients section, then click Kick client. Confirm the action in the browser dialogue. The table uses relay virtual client IDs, not player account IDs or Netcode for GameObjects client IDs.

The relay returns only IDs by default. To display IP addresses, start the relay with --client-details IpAddresses. To include UDP ports, use IpEndpoints. The dashboard shows these columns when the response includes them. These are the remote endpoints observed by the relay, not player identities. See Client-list details.

If the relay has no version endpoint, the dashboard provides a Virtual client ID box instead of a client list. Enter the relay virtual ID in this box, then click Kick. To obtain or convert an ID from game code, see Kick a client through the API.

On relay 1.4.0 or later, a persistent room with an active host shows Remove host. Click Remove host and confirm the action in the browser dialog to disconnect the host without deleting the room.

The relay invalidates the former host’s room token and attempts to promote the earliest remaining eligible client. If none remain, the room stays available without a host. Host removal does not ban the player from joining again.

Wait for the room’s host state to update. Completing the HTTP request does not mean a replacement host is ready, and the dashboard does not transfer game state. Your game must implement host migration.

To end a session for everyone, click Delete room and confirm the action in the browser dialog. The relay removes the room and disconnects its host, clients, and any selected promotion candidate. The dashboard then returns to the Rooms page.

Deletion cannot be undone. Delete persistent rooms when their sessions end; empty persistent rooms do not expire automatically.