curl --request DELETE \
--url https://api.computeflow.cloud/api/v3/lobbies/{config}/me \
--header 'api-key: <api-key>' \
--header 'x-player-id: <x-player-id>'import requests
url = "https://api.computeflow.cloud/api/v3/lobbies/{config}/me"
headers = {
"x-player-id": "<x-player-id>",
"api-key": "<api-key>"
}
response = requests.delete(url, headers=headers)
print(response.text)const options = {
method: 'DELETE',
headers: {'x-player-id': '<x-player-id>', 'api-key': '<api-key>'}
};
fetch('https://api.computeflow.cloud/api/v3/lobbies/{config}/me', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.computeflow.cloud/api/v3/lobbies/{config}/me",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"api-key: <api-key>",
"x-player-id: <x-player-id>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.computeflow.cloud/api/v3/lobbies/{config}/me"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("x-player-id", "<x-player-id>")
req.Header.Add("api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://api.computeflow.cloud/api/v3/lobbies/{config}/me")
.header("x-player-id", "<x-player-id>")
.header("api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.computeflow.cloud/api/v3/lobbies/{config}/me")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["x-player-id"] = '<x-player-id>'
request["api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"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": {
"instance_id": "<string>",
"name": "<string>",
"status": "launching",
"network_ports": [
{
"name": "<string>",
"internal_port": 123,
"external_port": 123,
"protocol": "udp",
"host": "<string>",
"tls_enabled": true
}
],
"startup_args": "<string>",
"service_type": "match_based",
"compute_size": "<string>",
"region": "<string>",
"version_tag": "<string>",
"version": 123,
"started_at": "2023-11-07T05:31:56Z",
"stopped_at": "2023-11-07T05:31:56Z",
"auto_restart": true,
"custom_data": {},
"ttl": 123,
"is_pool_server": true,
"pool_claimed_at": "2023-11-07T05:31:56Z",
"match_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
},
"matchmaking": {
"mode": "<string>",
"startedAt": "<string>",
"queueStats": {
"playersSearching": 123,
"lobbiesInQueue": 123,
"avgWaitSeconds": 123
},
"confirmation": {
"deadline": "<string>",
"confirmed": true
}
},
"createdAt": "<string>",
"updatedAt": "<string>",
"matchmakingError": "<string>"
}{
"error": "<string>",
"status": 123,
"detail": "<string>"
}{
"error": "<string>",
"status": 123,
"detail": "<string>"
}Leave a lobby
Removes the caller from their current lobby. If the caller is the host, host duty is transferred to the next player. If the caller is the last player, the lobby is deleted.
Response:
- If the lobby still has players: returns the updated lobby state.
- If the lobby was deleted (last player left): returns
{ "status": "lobby_deleted" }.
Players who leave while matchmaking is active are removed from the queue.
curl --request DELETE \
--url https://api.computeflow.cloud/api/v3/lobbies/{config}/me \
--header 'api-key: <api-key>' \
--header 'x-player-id: <x-player-id>'import requests
url = "https://api.computeflow.cloud/api/v3/lobbies/{config}/me"
headers = {
"x-player-id": "<x-player-id>",
"api-key": "<api-key>"
}
response = requests.delete(url, headers=headers)
print(response.text)const options = {
method: 'DELETE',
headers: {'x-player-id': '<x-player-id>', 'api-key': '<api-key>'}
};
fetch('https://api.computeflow.cloud/api/v3/lobbies/{config}/me', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.computeflow.cloud/api/v3/lobbies/{config}/me",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"api-key: <api-key>",
"x-player-id: <x-player-id>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.computeflow.cloud/api/v3/lobbies/{config}/me"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("x-player-id", "<x-player-id>")
req.Header.Add("api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://api.computeflow.cloud/api/v3/lobbies/{config}/me")
.header("x-player-id", "<x-player-id>")
.header("api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.computeflow.cloud/api/v3/lobbies/{config}/me")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["x-player-id"] = '<x-player-id>'
request["api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"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": {
"instance_id": "<string>",
"name": "<string>",
"status": "launching",
"network_ports": [
{
"name": "<string>",
"internal_port": 123,
"external_port": 123,
"protocol": "udp",
"host": "<string>",
"tls_enabled": true
}
],
"startup_args": "<string>",
"service_type": "match_based",
"compute_size": "<string>",
"region": "<string>",
"version_tag": "<string>",
"version": 123,
"started_at": "2023-11-07T05:31:56Z",
"stopped_at": "2023-11-07T05:31:56Z",
"auto_restart": true,
"custom_data": {},
"ttl": 123,
"is_pool_server": true,
"pool_claimed_at": "2023-11-07T05:31:56Z",
"match_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
},
"matchmaking": {
"mode": "<string>",
"startedAt": "<string>",
"queueStats": {
"playersSearching": 123,
"lobbiesInQueue": 123,
"avgWaitSeconds": 123
},
"confirmation": {
"deadline": "<string>",
"confirmed": true
}
},
"createdAt": "<string>",
"updatedAt": "<string>",
"matchmakingError": "<string>"
}{
"error": "<string>",
"status": 123,
"detail": "<string>"
}{
"error": "<string>",
"status": 123,
"detail": "<string>"
}Authorizations
Headers
Unique player identifier.
Path Parameters
Lobby configuration name or ID.
Response
Left the lobby. Returns updated lobby state, or { status: "lobby_deleted" } if you were the last player.
- Option 1
- Option 2
Full lobby state including players, server, and matchmaking info.
Lobby ID.
Invite code for joining (null if private mode is disabled).
Lobby config name.
Current lobby status.
waiting, in_queue, starting, matched, match_found, in_game Player ID of the host.
Maximum player capacity.
Current number of players.
Preferred game server region.
Whether the lobby is hidden from browsing.
Whether players can join mid-game.
Custom game settings.
Show child attributes
Show child attributes
Players in the lobby with their state.
Show child attributes
Show child attributes
Game server info (null when no game running).
Show child attributes
Show child attributes
Matchmaking info (null when not searching).
Show child attributes
Show child attributes
ISO 8601 creation timestamp.
ISO 8601 last update timestamp.
Set when a queue entry was failed after repeated server-create failures. Explains why the match never formed; the lobby is returned to waiting so the player can retry.