Join Session By Platform Session Id Self
POST/session/v1/platform/:platform/platform-session/:platform_session_id_base64/player/me
Join a platform session by ID, and the parent session
Required Permissions:
-
For any player (including themselves) any of:
session:*,session:update-player:any -
For the player themselves :
session:update-player:self
Required Session Permissions: None
Request
Path Parameters
Possible values: non-empty and <= 4096 characters
Possible values: [Anon, Basic, XboxLive, PSN, NintendoNAID, NintendoSwitch, NintendoPPID, Google, GooglePlay, Apple, Epic, Steam, Amazon, Twitch, RallyHere, LegacyName]
- application/json
Body
required
Possible values: [leader, member, invited, reserved]
What membership state players have in a session
Semver for updated client
client_settings
object
required
A player's platform and input settings
Possible values: [2, 4, 5, 9, 10, 11, 13, 16, 22, 24, 26, 28]
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
Possible values: [Anon, Basic, XboxLive, PSN, NintendoNAID, NintendoSwitch, NintendoPPID, Google, GooglePlay, Apple, Epic, Steam, Amazon, Twitch, RallyHere, LegacyName]
Which platform this client is on. If one is not provided, will get the platform from the 'platform_id'. Platform is now read from client's authorization claims if available
Possible values: [keyboardandmouse, gamepad, touch]
Which input type this client is using
Possible values: [pc, xbox_series, xbox_one, web]
Platform verified device type for this client
Which team the player is one
crossplay_preferences
object
A session's or player's preferences around crossplay platforms and inputs. Permitted platforms and inputs will be checked when new players attempt to join a session
Possible values: [desired_platforms_any, desired_platforms_xboxlike, desired_platforms_playstationlike]
The platform type that the client is allowed to play with (any, xbox-like only, playstation-like only etc.)
Possible values: [desired_inputs_any, desired_inputs_keyboardandmouse, desired_inputs_gamepad, desired_inputs_touch]
The input type that the client is allowed to play with (keyboard and mouse, gamepad, touch input etc.)
custom_data
object
player-defined custom data
Possible values: non-empty and <= 128 characters
Password to join a password protected session that you are not invited to
Responses
- 200
- 403
- 404
- 422
- 503
Successful Response
Response Headers
ETag
string
Used to identify this version of the content. Provide with a get request to avoid downloading the same data multiple times.
- application/json
- Schema
- Example (from schema)
Schema
Array [
Array [
]
]
Array [
Array [
]
]
Array [
Array [
]
]
template type
Possible values: non-empty and <= 128 characters
unique ID for this session within its type
instance
object
Information about the instance resource in a session
Possible values: non-empty and <= 128 characters
Allocation ID for instance that's been spun up
Possible values: non-empty and <= 128 characters
Unique ID for the host/session relationship
Possible values: [dedicated, player, preallocated]
Type of the host
Player ID of the host, if the host type is player
Player UUID of the host, if the host type is player
Unique ID for the process that is running this instance
Unique ID for the machine running the instance
Possible values: [requested, allocated, pending, joinable, unjoinable, closed]
Is the instance joinable at this time?
join_params
object
Parameters to join the instance
Public connection string for instance
Private connection string for instance
custom_data
object
Custom data to join a instance
instance_startup_params
object
Parameters used by the host to startup. For UE5 this will contain the map and gamemode
Name of the map for the instance to spawn with
Game mode for the instance to spawn in
Additional commandline parameters for the instance
custom_data
object
Custom data to pass through to the instance
Product Client Version number. Used for compatibility checking with players
Datetime that enforces that a timezone is given. Unix timestamps are allowed and forced into the UTC time zone
custom_data
object
instance-defined custom data
Possible values: [healthy, unhealthy, degraded, unknown]
The current status of the instance
Possible values: non-empty and <= 128 characters
The profile id that this instance was spawned from
The match ID associated with this instance
match
object
DEPRECATED Information about a match
Unique ID
Datetime that enforces that a timezone is given. Unix timestamps are allowed and forced into the UTC time zone
custom_data
object
instance-defined custom data
Default value: ``
List of tickets that were assigned to this match if created by matchmaking
matchmaking_results
object
Unique ID
Datetime that enforces that a timezone is given. Unix timestamps are allowed and forced into the UTC time zone
custom_data
object
MMF defined custom data
Default value: ``
List of tickets that were assigned to this match if created by matchmaking
ticket_data
object[]
List of all the ticket data that was used when generating this match
Unique ID for this ticket
Default value: ``
List of Player UUIDS that are associated with this ticket
Datetime that enforces that a timezone is given. Unix timestamps are allowed and forced into the UTC time zone
Possible values: non-empty and <= 128 characters
Which region this ticket was created for
Possible values: non-empty and <= 128 characters
Which queue was used to create this ticket
Possible values: non-empty and <= 128 characters
List of profiles that were being considered for this ticket
additional_join_params
object
Additional join params specified on queue join
double_args
object
Additional double arguments to add to the matchmaking ticket
string_args
object
Additional string arguments to add to the matchmaking ticket
Possible values: non-empty and <= 4096 characters
Default value: ``
Additional tags to add to the matchmaking ticket
extensions
object
Additional extensions to add to the matchmaking ticket. Value is a base64 string representation of the protobuf binary data. The data will be converted back to binary before being put on the ticket
rank_data
object[]
List of rank data on the ticket
UUID for this rank
Ticket's group mu for this rank
Whether or not the tickets from these results have been assigned
profile
object
The profile used to create this match
Possible values: non-empty and <= 128 characters
ID of the matchmaking profile to join
Possible values: [normal, backfill, created_before]
Default value: normal
What mode to set on the matchmaking profile (normal, backfill etc)
Which instance template to use when launching a match in this profile
Which rank this profile should use MMR from to make matches from, and update at the end of match (1v1 MMR or 2v2 MMR for example)
The number of sides a game in this profile will have (2 in a 1v1 and 3 in a 1v1v1 for example
The maximum number of players that can be on each team
The minimum number of players that can be on each team
Legacy config to help migrate clients
Which deserter this profile should check before allowing players to join matchmaking
What type of session should result from matchmaking on this profile
custom_data
object
Custom data about this profile
matchmaking
object
Info about the matchmaking status in a session
Unique ID for this attempt at matchmaking
custom_data
object
session-defined custom data
Possible values: non-empty and <= 128 characters
Unique ID for the joined queue
backfill
object
Info about the open-match backfill object in a session
Possible values: non-empty
Unique ID for the backfill object
extensions
object
Optional additional extensions used when acknowledging backfill requests
browser
object
Information about the browser resource in a session
custom_data
object
Custom data with the listing of the instance in the Session browser
Datetime that enforces that a timezone is given. Unix timestamps are allowed and forced into the UTC time zone
Is this session freely joinable by players without an invite?
teams
object[]
required
List of teams of players currently in the session
players
object[]
required
Players currently on this team
Legacy id for this player
UUID for this player
Possible values: [leader, member, invited, reserved]
What membership state players have in a session
UUID of the player who sent this players invite, if any
Possible values: non-empty and <= 128 characters
The UUID of the session that this player was invited from
custom_data
object
player-defined custom data
Product Client Version number. Used for compatibility checking with other players and instances
client_settings
object
A player's platform and input settings
Possible values: [2, 4, 5, 9, 10, 11, 13, 16, 22, 24, 26, 28]
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
Possible values: [Anon, Basic, XboxLive, PSN, NintendoNAID, NintendoSwitch, NintendoPPID, Google, GooglePlay, Apple, Epic, Steam, Amazon, Twitch, RallyHere, LegacyName]
Which platform this client is on. If one is not provided, will get the platform from the 'platform_id'. Platform is now read from client's authorization claims if available
Possible values: [keyboardandmouse, gamepad, touch]
Which input type this client is using
Possible values: [pc, xbox_series, xbox_one, web]
Platform verified device type for this client
crossplay_preferences
object
A session's or player's preferences around crossplay platforms and inputs. Permitted platforms and inputs will be checked when new players attempt to join a session
Possible values: [desired_platforms_any, desired_platforms_xboxlike, desired_platforms_playstationlike]
The platform type that the client is allowed to play with (any, xbox-like only, playstation-like only etc.)
Possible values: [desired_inputs_any, desired_inputs_keyboardandmouse, desired_inputs_gamepad, desired_inputs_touch]
The input type that the client is allowed to play with (keyboard and mouse, gamepad, touch input etc.)
Datetime that enforces that a timezone is given. Unix timestamps are allowed and forced into the UTC time zone
Datetime that enforces that a timezone is given. Unix timestamps are allowed and forced into the UTC time zone
Possible values: [invite, kick, move]
Default value: ``
A list of intra session permissions granted to this specific player
Possible values: >= 1 and <= 100
Maximum number of players allowed on this team
Which team this is
Matchmaking tickets that were assigned to this team
custom_data
object
Custom data about this team
Flag showing if the list of players has been automatically suppressed due to its size.
platform_session
object[]
Child Platform Sessions for this session. A player joining one of the child platform sessions implicitly joins the parent session
Possible values: [Anon, Basic, XboxLive, PSN, NintendoNAID, NintendoSwitch, NintendoPPID, Google, GooglePlay, Apple, Epic, Steam, Amazon, Twitch, RallyHere, LegacyName]
An enumeration.
Possible values: non-empty and <= 128 characters
Platform-Specific Identifier for the Platform's template
Possible values: non-empty and <= 4096 characters
Platform session's unique identifier
players
object[]
required
DEPRECATED. PlatformSessions no longer keep tracking of players. Players in the platform session
Player ID representing the current player
Player UUID representing the current player
Is this player the leader of the platform session? When setting up the parent session, if all players are from the same platform session, leadership is coordinated
custom_data
object
Product defined custom data fields about the platform session
platform_scouts
object
List of platform scouts for this session
property name*
PlatformScout
UUID of player who is the designated scout for the platform session
Possible values: [Anon, Basic, XboxLive, PSN, NintendoNAID, NintendoSwitch, NintendoPPID, Google, GooglePlay, Apple, Epic, Steam, Amazon, Twitch, RallyHere, LegacyName]
An enumeration.
custom_data
object
Leader Player or instance defined custom data about this session
Datetime that enforces that a timezone is given. Unix timestamps are allowed and forced into the UTC time zone
Possible values: non-empty and <= 128 characters
Preferred region for the instance and match to take place in
Flag of whether or not this session was created by matchmaking or not
{
"type": "string",
"session_id": "string",
"instance": {
"allocation_id": "string",
"instance_id": "string",
"host_type": "dedicated",
"host_player_id": 0,
"host_player_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"host_dedicated_process_id": "string",
"host_dedicated_server_id": "string",
"join_status": "requested",
"join_params": {
"public_conn_str": "string",
"private_conn_str": "string",
"custom_data": {}
},
"instance_startup_params": {
"map": "string",
"mode": "string",
"misc_params": "string",
"custom_data": {}
},
"version": "21.3.15-beta+12345",
"created": "2024-07-29T15:51:28.071Z",
"custom_data": {},
"instance_health": "healthy",
"match_making_profile_id": "string",
"match_id": "string"
},
"matchmaking_results": {
"match_making_id": "string",
"created": "2024-07-29T15:51:28.071Z",
"custom_data": {},
"ticket_ids": [
"string"
],
"ticket_data": [
{
"ticket_id": "string",
"player_uuids": [
"3fa85f64-5717-4562-b3fc-2c963f66afa6"
],
"queue_join_datetime": "2024-07-29T15:51:28.071Z",
"region_id": "string",
"queue_id": "string",
"profile_ids": [
"string"
],
"additional_join_params": {
"double_args": {},
"string_args": {},
"tags": [
"string"
],
"extensions": {}
},
"rank_data": [
{
"rank_uuid": "string",
"mu": 0
}
]
}
],
"tickets_assigned": false,
"profile": {
"match_making_profile_id": "string",
"join_mode": "normal",
"instance_request_template_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"rank_id": "string",
"num_sides": 0,
"max_players_per_side": 0,
"min_players_per_side": 0,
"legacy_config": {},
"deserter_id": "string",
"session_template_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"custom_data": {}
}
},
"matchmaking": {
"ticket_id": "string",
"custom_data": {},
"queue_id": "string"
},
"backfill": {
"backfill_id": "string",
"extensions": {}
},
"browser": {
"custom_data": {},
"created_timestamp": "2024-07-29T15:51:28.071Z"
},
"joinable": true,
"teams": [
{
"players": [
{
"player_id": 0,
"player_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"status": "leader",
"inviting_player_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"source_session_id": "string",
"custom_data": {},
"version": "21.3.15-beta+12345",
"client_settings": {
"platform_id": 2,
"platform": "Anon",
"input": "keyboardandmouse",
"device_type": "pc"
},
"crossplay_preferences": {
"permitted_platform": "desired_platforms_any",
"permitted_input": "desired_inputs_any"
},
"invited": "2024-07-29T15:51:28.071Z",
"joined": "2024-07-29T15:51:28.071Z",
"session_permissions": [
"invite"
]
}
],
"max_size": 0,
"team_id": 0,
"ticket_ids": [
"string"
],
"custom_data": {}
}
],
"teams_suppressed": false,
"platform_session": [
{
"platform": "Anon",
"platform_session_type": "string",
"platform_session_id_base64": "string",
"players": [
{
"player_id": 0,
"player_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"leader": false
}
],
"custom_data": {}
}
],
"platform_scouts": {},
"custom_data": {},
"created": "2024-07-29T15:51:28.071Z",
"region_id": "string",
"created_by_matchmaking": false
}
User is not authenticated, or does not have sufficient role access to perform request
- application/json
- Schema
- Example (from schema)
Schema
Default value: true
{
"auth_success": true,
"error_code": "string",
"desc": "string"
}
Platform Session or Platform Player doesn't exist. See error code for more info
- application/json
- Schema
- Example (from schema)
Schema
Default value: true
{
"auth_success": true,
"error_code": "string",
"desc": "string"
}
Validation Error
- application/json
- Schema
- Example (from schema)
Schema
Array [
Array [
- MOD1
- MOD2
]
]
detail
object[]
loc
object[]
required
anyOf
string
integer
{
"detail": [
{
"loc": [
"string",
0
],
"msg": "string",
"type": "string"
}
]
}
Service was unable to fulfill the request at this time and should be retried after the Retry-After wait time
Response Headers
Retry-After
integer
Number of seconds after which to retry the request
- application/json
- Schema
- Example (from schema)
Schema
Default value: true
{
"auth_success": true,
"error_code": "string",
"desc": "string"
}