Skip to main content
POST
/
api
/
v3
/
lobbies
/
{config}
/
me
/
matchmaking
Start matchmaking
curl --request POST \
  --url https://api.computeflow.cloud/api/v3/lobbies/{config}/me/matchmaking \
  --header 'Content-Type: application/json' \
  --header 'api-key: <api-key>' \
  --header 'x-player-id: <x-player-id>' \
  --data '
{
  "mode": "<string>"
}
'
{
  "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "code": "<string>",
  "config": "<string>",
  "status": "waiting",
  "host": "<string>",
  "maxPlayers": 123,
  "currentPlayers": 123,
  "region": "<string>",
  "isPrivate": true,
  "allowLateJoin": true,
  "settings": {},
  "players": [
    {
      "id": "<string>",
      "state": {},
      "isHost": true
    }
  ],
  "server": {
    "instanceId": "<string>",
    "status": "<string>",
    "region": "<string>",
    "ports": [
      {
        "name": "<string>",
        "host": "<string>",
        "port": 123,
        "protocol": "udp"
      }
    ]
  },
  "matchmaking": {
    "mode": "<string>",
    "startedAt": "<string>",
    "queueStats": {
      "playersSearching": 123,
      "lobbiesInQueue": 123,
      "avgWaitSeconds": 123
    }
  },
  "createdAt": "<string>",
  "updatedAt": "<string>"
}

Authorizations

api-key
string
header
required

Headers

x-player-id
string
required

Unique player identifier. Must be the lobby host.

Path Parameters

config
string
required

Lobby configuration name or ID.

Body

application/json

Start matchmaking. The lobby enters the queue and is matched with compatible opponents.

mode
string
required

Matchmaking mode name from the lobby config (e.g. "ranked_2v2", "casual_ffa").

Minimum string length: 1

Response

Matchmaking started. Status is in_queue. The matchmaking field includes mode, startedAt, and queueStats.

Full lobby state including players, server, and matchmaking info.

id
string<uuid>
required

Lobby ID.

code
string | null
required

Invite code for joining (null if private mode is disabled).

config
string
required

Lobby config name.

status
enum<string>
required

Current lobby status.

Available options:
waiting,
in_queue,
starting,
matched,
match_found,
in_game
host
string
required

Player ID of the host.

maxPlayers
number
required

Maximum player capacity.

currentPlayers
number
required

Current number of players.

region
string | null
required

Preferred game server region.

isPrivate
boolean
required

Whether the lobby is hidden from browsing.

allowLateJoin
boolean
required

Whether players can join mid-game.

settings
object
required

Custom game settings.

players
object[]
required

Players in the lobby with their state.

server
object
required

Game server info (null when no game running).

matchmaking
object
required

Matchmaking info (null when not searching).

createdAt
string
required

ISO 8601 creation timestamp.

updatedAt
string
required

ISO 8601 last update timestamp.