Skip to content

Create Or Join Session

POST
/session/v1/session

Join the first publicly available session of given type. If there is no public session, and the session type permits player made sessions, create a new session and put the player in it

Required Permissions:

  • For any player (including themselves) any of: session:*, session:create

Required Session Permissions: None

Authorizations

Request Body required

A request body for a player to join a session

object
client_version
required

String representation of semver for client

string
client_settings
required

Which input type and platform the client is using

object
platform_id

DEPRECATED. Use ‘platform’ instead. Id for which platform this client is on. ID will be ignored if ‘platform’ is given. At least one of the two is required

integer
platform

Which platform this client is on. If one is not provided, will get the platform from the ‘platform_id’. At least one of the two is required

string
Allowed values: Anon Basic XboxLive PSN NintendoNAID NintendoSwitch NintendoPPID Google GooglePlay Apple Epic Steam Amazon Twitch RallyHere LegacyName
input
required

Which input type this client is using

string
Allowed values: keyboardandmouse gamepad touch
crossplay_preferences

Client’s desired crossplay settings to determine which other clients it can play with. If not defined, assumed to be as permissive as possible

object
permitted_platform
required

The platform type that the client is allowed to play with (any, xbox-like only, playstation-like only etc.)

string
Allowed values: desired_platforms_any desired_platforms_xboxlike desired_platforms_playstationlike
permitted_input
required

The input type that the client is allowed to play with (keyboard and mouse, gamepad, touch input etc.)

string
Allowed values: desired_inputs_any desired_inputs_keyboardandmouse desired_inputs_gamepad desired_inputs_touch
session_type
required

Type of session client is creating or joining

string
region_id

Preferred region for the instance and match to take place in

string
>= 1 characters <= 128 characters
player

Optional information about player in order to join the new/existing session. V2 version of CreateOrJoin will require this

object
status

Status that the player would like after the request is complete. Note that some join operations may promote the player from member to leader

string
Allowed values: leader member invited reserved
client_version
required

Semver for updated client

string
client_settings
required

Which input type and platform the client is using

object
platform_id

DEPRECATED. Use ‘platform’ instead. Id for which platform this client is on. ID will be ignored if ‘platform’ is given. At least one of the two is required

integer
platform

Which platform this client is on. If one is not provided, will get the platform from the ‘platform_id’. At least one of the two is required

string
Allowed values: Anon Basic XboxLive PSN NintendoNAID NintendoSwitch NintendoPPID Google GooglePlay Apple Epic Steam Amazon Twitch RallyHere LegacyName
input
required

Which input type this client is using

string
Allowed values: keyboardandmouse gamepad touch
team_id
required

Which team the player is one

integer
crossplay_preferences

Client’s desired crossplay settings to determine which other clients it can play with. If not defined, assumed to be as permissive as possible

object
permitted_platform
required

The platform type that the client is allowed to play with (any, xbox-like only, playstation-like only etc.)

string
Allowed values: desired_platforms_any desired_platforms_xboxlike desired_platforms_playstationlike
permitted_input
required

The input type that the client is allowed to play with (keyboard and mouse, gamepad, touch input etc.)

string
Allowed values: desired_inputs_any desired_inputs_keyboardandmouse desired_inputs_gamepad desired_inputs_touch
custom_data

Player-defined custom data

object
key
additional properties
string
>= 1 characters <= 4096 characters

Responses

200

Successful Response

Response when a player successfully joins a session

object
session_id
required

Session ID the player is now a part of

string
>= 1 characters <= 128 characters

400

Bad Request

object
auth_success
boolean
default: true
error_code
required
string
desc
required
string

403

Forbidden

object
auth_success
boolean
default: true
error_code
required
string
desc
required
string

422

Validation Error

object
detail
Array<object>
object
loc
required
Array
msg
required
string
type
required
string