Lobby - Create Lobby

Create a lobby.

POST https://titleId.playfabapi.com/Lobby/CreateLobby

Request Header

Name Required Type Description
X-EntityToken True

string

This API requires an Entity Session Token, available from the Entity GetEntityToken method.

Request Body

Name Required Type Description
MaxPlayers True

number

The maximum number of players allowed in the lobby. The value must be between 2 and 128.

Owner True

EntityKey

The lobby owner. Must be the calling entity.

UseConnections True

boolean

A setting to control whether connections are used. Defaults to true. When true, notifications are sent to subscribed players, disconnect detection removes connectionHandles, only owner migration policies using connections are allowed, and lobbies must have at least one connected member to be searchable or be a server hosted lobby with a connected server. If false, then notifications are not sent, connections are not allowed, and lobbies do not need connections to be searchable.

AccessPolicy

AccessPolicy

The policy indicating who is allowed to join the lobby, and the visibility to queries. May be 'Public', 'Friends' or 'Private'. Public means the lobby is both visible in queries and any player may join, including invited players. Friends means that users who are bidirectional friends of members in the lobby may search to find friend lobbies, to retrieve its connection string. Private means the lobby is not visible in queries, and a player must receive an invitation to join. Defaults to 'Public' on creation. Can only be changed by the lobby owner.

CustomTags

object

The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.).

LobbyData

object

The private key-value pairs which are visible to all entities in the lobby. At most 30 key-value pairs may be stored here, keys are limited to 30 characters and values to 1000. The total size of all lobbyData values may not exceed 4096 bytes. Keys are case sensitive.

Members

Member[]

The member initially added to the lobby. Client must specify exactly one member, which is the creator's entity and member data. Member PubSubConnectionHandle must be null or empty. Game servers must not specify any members.

OwnerMigrationPolicy

OwnerMigrationPolicy

The policy for how a new owner is chosen. May be 'Automatic', 'Manual' or 'None'. Can only be specified by clients. If client-owned and 'Automatic' - The Lobby service will automatically assign another connected owner when the current owner leaves or disconnects. The useConnections property must be true. If client - owned and 'Manual' - Ownership is protected as long as the current owner is connected. If the current owner leaves or disconnects any member may set themselves as the current owner. The useConnections property must be true. If client-owned and 'None' - Any member can set ownership. The useConnections property can be either true or false.

SearchData

object

The public key-value pairs which allow queries to differentiate between lobbies. Queries will refer to these key-value pairs in their filter and order by clauses to retrieve lobbies fitting the specified criteria. At most 30 key-value pairs may be stored here. Keys are of the format string_key1, string_key2 ... string_key30 for string values, or number_key1, number_key2, ... number_key30 for numeric values.Numeric values are floats. Values can be at most 256 characters long. The total size of all searchData values may not exceed 1024 bytes.

Responses

Name Type Description
200 OK

CreateLobbyResult

400 Bad Request

ApiErrorWrapper

This is the outer wrapper for all responses with errors

Security

X-EntityToken

This API requires an Entity Session Token, available from the Entity GetEntityToken method.

Type: apiKey
In: header

Definitions

Name Description
AccessPolicy
ApiErrorWrapper

The basic wrapper around every failed API response

CreateLobbyRequest

Request to create a lobby. A Server or client can create a lobby.

CreateLobbyResult
EntityKey

Combined entity type and ID structure which uniquely identifies a single entity.

Member
OwnerMigrationPolicy

AccessPolicy

Name Type Description
Friends

string

Private

string

Public

string

ApiErrorWrapper

The basic wrapper around every failed API response

Name Type Description
code

integer

Numerical HTTP code

error

string

Playfab error code

errorCode

integer

Numerical PlayFab error code

errorDetails

object

Detailed description of individual issues with the request object

errorMessage

string

Description for the PlayFab errorCode

status

string

String HTTP code

CreateLobbyRequest

Request to create a lobby. A Server or client can create a lobby.

Name Type Description
AccessPolicy

AccessPolicy

The policy indicating who is allowed to join the lobby, and the visibility to queries. May be 'Public', 'Friends' or 'Private'. Public means the lobby is both visible in queries and any player may join, including invited players. Friends means that users who are bidirectional friends of members in the lobby may search to find friend lobbies, to retrieve its connection string. Private means the lobby is not visible in queries, and a player must receive an invitation to join. Defaults to 'Public' on creation. Can only be changed by the lobby owner.

CustomTags

object

The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.).

LobbyData

object

The private key-value pairs which are visible to all entities in the lobby. At most 30 key-value pairs may be stored here, keys are limited to 30 characters and values to 1000. The total size of all lobbyData values may not exceed 4096 bytes. Keys are case sensitive.

MaxPlayers

number

The maximum number of players allowed in the lobby. The value must be between 2 and 128.

Members

Member[]

The member initially added to the lobby. Client must specify exactly one member, which is the creator's entity and member data. Member PubSubConnectionHandle must be null or empty. Game servers must not specify any members.

Owner

EntityKey

The lobby owner. Must be the calling entity.

OwnerMigrationPolicy

OwnerMigrationPolicy

The policy for how a new owner is chosen. May be 'Automatic', 'Manual' or 'None'. Can only be specified by clients. If client-owned and 'Automatic' - The Lobby service will automatically assign another connected owner when the current owner leaves or disconnects. The useConnections property must be true. If client - owned and 'Manual' - Ownership is protected as long as the current owner is connected. If the current owner leaves or disconnects any member may set themselves as the current owner. The useConnections property must be true. If client-owned and 'None' - Any member can set ownership. The useConnections property can be either true or false.

SearchData

object

The public key-value pairs which allow queries to differentiate between lobbies. Queries will refer to these key-value pairs in their filter and order by clauses to retrieve lobbies fitting the specified criteria. At most 30 key-value pairs may be stored here. Keys are of the format string_key1, string_key2 ... string_key30 for string values, or number_key1, number_key2, ... number_key30 for numeric values.Numeric values are floats. Values can be at most 256 characters long. The total size of all searchData values may not exceed 1024 bytes.

UseConnections

boolean

A setting to control whether connections are used. Defaults to true. When true, notifications are sent to subscribed players, disconnect detection removes connectionHandles, only owner migration policies using connections are allowed, and lobbies must have at least one connected member to be searchable or be a server hosted lobby with a connected server. If false, then notifications are not sent, connections are not allowed, and lobbies do not need connections to be searchable.

CreateLobbyResult

Name Type Description
ConnectionString

string

A field which indicates which lobby the user will be joining.

LobbyId

string

Id to uniquely identify a lobby.

EntityKey

Combined entity type and ID structure which uniquely identifies a single entity.

Name Type Description
Id

string

Unique ID of the entity.

Type

string

Entity type. See https://docs.microsoft.com/gaming/playfab/features/data/entities/available-built-in-entity-types

Member

Name Type Description
MemberData

object

Key-value pairs specific to member.

MemberEntity

EntityKey

The member entity key.

PubSubConnectionHandle

string

Opaque string, stored on a Subscribe call, which indicates the connection an owner or member has with PubSub.

OwnerMigrationPolicy

Name Type Description
Automatic

string

Manual

string

None

string

Server

string

Error Codes

Name Code
LobbyBadRequest 13007
LobbyPlayerMaxLobbyLimitExceeded 13008
LobbyRateLimitExceeded 13001