Multiplayer Server - Get Build

Gets a multiplayer server build.

POST https://titleId.playfabapi.com/MultiplayerServer/GetBuild

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
BuildId True

string

The guid string build ID of the build to get.

CustomTags

object

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

Responses

Name Type Description
200 OK

GetBuildResponse

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
ApiErrorWrapper

The basic wrapper around every failed API response

AssetReference
AzureRegion
AzureVmSize
BuildRegion
ContainerFlavor
ContainerImageReference
CurrentServerStats
DynamicStandbySettings
DynamicStandbyThreshold
GameCertificateReference
GetBuildRequest

Returns the details about a multiplayer server build.

GetBuildResponse
InstrumentationConfiguration
OsPlatform
Port
ProtocolType
Schedule
ScheduledStandbySettings
ServerResourceConstraintParams
ServerType
VmStartupScriptConfiguration
VmStartupScriptPortRequest

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

AssetReference

Name Type Description
FileName

string

The asset's file name. This is a filename with the .zip, .tar, or .tar.gz extension.

MountPath

string

The asset's mount path.

AzureRegion

Name Type Description
AustraliaEast

string

AustraliaSoutheast

string

BrazilSouth

string

CentralIndia

string

CentralUs

string

EastAsia

string

EastUs

string

EastUs2

string

FranceCentral

string

JapanEast

string

JapanWest

string

KoreaCentral

string

NorthCentralUs

string

NorthEurope

string

SouthAfricaNorth

string

SouthCentralUs

string

SoutheastAsia

string

SwedenCentral

string

UaeNorth

string

UkSouth

string

WestCentralUs

string

WestEurope

string

WestUs

string

WestUs2

string

AzureVmSize

Name Type Description
Standard_A1

string

Standard_A1_v2

string

Standard_A2

string

Standard_A2_v2

string

Standard_A3

string

Standard_A4

string

Standard_A4_v2

string

Standard_A8_v2

string

Standard_D16_v3

string

Standard_D16a_v4

string

Standard_D16ads_v5

string

Standard_D16as_v4

string

Standard_D16d_v4

string

Standard_D16ds_v4

string

Standard_D16s_v3

string

Standard_D1_v2

string

Standard_D2_v2

string

Standard_D2_v3

string

Standard_D2a_v4

string

Standard_D2ads_v5

string

Standard_D2as_v4

string

Standard_D2d_v4

string

Standard_D2ds_v4

string

Standard_D2s_v3

string

Standard_D3_v2

string

Standard_D4_v2

string

Standard_D4_v3

string

Standard_D4a_v4

string

Standard_D4ads_v5

string

Standard_D4as_v4

string

Standard_D4d_v4

string

Standard_D4ds_v4

string

Standard_D4s_v3

string

Standard_D5_v2

string

Standard_D8_v3

string

Standard_D8a_v4

string

Standard_D8ads_v5

string

Standard_D8as_v4

string

Standard_D8d_v4

string

Standard_D8ds_v4

string

Standard_D8s_v3

string

Standard_DS1_v2

string

Standard_DS2_v2

string

Standard_DS3_v2

string

Standard_DS4_v2

string

Standard_DS5_v2

string

Standard_E16a_v4

string

Standard_E16as_v4

string

Standard_E2a_v4

string

Standard_E2as_v4

string

Standard_E4a_v4

string

Standard_E4as_v4

string

Standard_E8a_v4

string

Standard_E8as_v4

string

Standard_F1

string

Standard_F16

string

Standard_F16s_v2

string

Standard_F2

string

Standard_F2s_v2

string

Standard_F4

string

Standard_F4s_v2

string

Standard_F8

string

Standard_F8s_v2

string

Standard_HB120_16rs_v3

string

Standard_HB120_32rs_v3

string

Standard_HB120_64rs_v3

string

Standard_HB120_96rs_v3

string

Standard_HB120rs_v3

string

Standard_NC4as_T4_v3

string

BuildRegion

Name Type Description
CurrentServerStats

CurrentServerStats

The current multiplayer server stats for the region.

DynamicStandbySettings

DynamicStandbySettings

Optional settings to control dynamic adjustment of standby target

IsAssetReplicationComplete

boolean

Whether the game assets provided for the build have been replicated to this region.

MaxServers

number

The maximum number of multiplayer servers for the region.

MultiplayerServerCountPerVm

number

Regional override for the number of multiplayer servers to host on a single VM of the build.

Region

AzureRegion

The build region.

ScheduledStandbySettings

ScheduledStandbySettings

Optional settings to set the standby target to specified values during the supplied schedules

StandbyServers

number

The target number of standby multiplayer servers for the region.

Status

string

The status of multiplayer servers in the build region. Valid values are - Unknown, Initialized, Deploying, Deployed, Unhealthy, Deleting, Deleted.

VmSize

AzureVmSize

Regional override for the VM size the build was created on.

ContainerFlavor

Name Type Description
CustomLinux

string

Invalid

string

ManagedWindowsServerCore

string

ManagedWindowsServerCorePreview

string

ContainerImageReference

Name Type Description
ImageName

string

The container image name.

Tag

string

The container tag.

CurrentServerStats

Name Type Description
Active

number

The number of active multiplayer servers.

Propping

number

The number of multiplayer servers still downloading game resources (such as assets).

StandingBy

number

The number of standingby multiplayer servers.

Total

number

The total number of multiplayer servers.

DynamicStandbySettings

Name Type Description
DynamicFloorMultiplierThresholds

DynamicStandbyThreshold[]

List of auto standing by trigger values and corresponding standing by multiplier. Defaults to 1.5X at 50%, 3X at 25%, and 4X at 5%

IsEnabled

boolean

When true, dynamic standby will be enabled

RampDownSeconds

number

The time it takes to reduce target standing by to configured floor value after an increase. Defaults to 30 minutes

DynamicStandbyThreshold

Name Type Description
Multiplier

number

When the trigger threshold is reached, multiply by this value

TriggerThresholdPercentage

number

The multiplier will be applied when the actual standby divided by target standby floor is less than this value

GameCertificateReference

Name Type Description
GsdkAlias

string

An alias for the game certificate. The game server will reference this alias via GSDK config to retrieve the game certificate. This alias is used as an identifier in game server code to allow a new certificate with different Name field to be uploaded without the need to change any game server code to reference the new Name.

Name

string

The name of the game certificate. This name should match the name of a certificate that was previously uploaded to this title.

GetBuildRequest

Returns the details about a multiplayer server build.

Name Type Description
BuildId

string

The guid string build ID of the build to get.

CustomTags

object

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

GetBuildResponse

Name Type Description
AreAssetsReadonly

boolean

When true, assets will not be copied for each server inside the VM. All serverswill run from the same set of assets, or will have the same assets mounted in the container.

BuildId

string

The guid string build ID of the build.

BuildName

string

The build name.

BuildStatus

string

The current build status. Valid values are - Deploying, Deployed, DeletingRegion, Unhealthy.

ContainerFlavor

ContainerFlavor

The flavor of container of he build.

ContainerRunCommand

string

The container command to run when the multiplayer server has been allocated, including any arguments. This only applies to custom builds. If the build is a managed build, this field will be null.

CreationTime

string

The time the build was created in UTC.

CustomGameContainerImage

ContainerImageReference

The custom game container image for a custom build.

GameAssetReferences

AssetReference[]

The game assets for the build.

GameCertificateReferences

GameCertificateReference[]

The game certificates for the build.

InstrumentationConfiguration

InstrumentationConfiguration

The instrumentation configuration of the build.

Metadata

object

Metadata of the build. The keys are case insensitive. The build metadata is made available to the server through Game Server SDK (GSDK).

MultiplayerServerCountPerVm

number

The number of multiplayer servers to hosted on a single VM of the build.

OsPlatform

OsPlatform

The OS platform used for running the game process.

Ports

Port[]

The ports the build is mapped on.

RegionConfigurations

BuildRegion[]

The region configuration for the build.

ServerResourceConstraints

ServerResourceConstraintParams

The resource constraints to apply to each server on the VM.

ServerType

ServerType

The type of game server being hosted.

StartMultiplayerServerCommand

string

The command to run when the multiplayer server has been allocated, including any arguments. This only applies to managed builds. If the build is a custom build, this field will be null.

VmSize

AzureVmSize

The VM size the build was created on.

VmStartupScriptConfiguration

VmStartupScriptConfiguration

The configuration for the VmStartupScript feature for the build

InstrumentationConfiguration

Name Type Description
IsEnabled

boolean

Designates whether windows instrumentation configuration will be enabled for this Build

ProcessesToMonitor

string[]

This property is deprecated, use IsEnabled. The list of processes to be monitored on a VM for this build. Providing processes will turn on performance metrics collection for this build. Process names should not include extensions. If the game server process is: GameServer.exe; then, ProcessesToMonitor = [ GameServer ]

OsPlatform

Name Type Description
Linux

string

Windows

string

Port

Name Type Description
Name

string

The name for the port.

Num

number

The number for the port.

Protocol

ProtocolType

The protocol for the port.

ProtocolType

Name Type Description
TCP

string

UDP

string

Schedule

Name Type Description
Description

string

A short description about this schedule. For example, "Game launch on July 15th".

EndTime

string

The date and time in UTC at which the schedule ends. If IsRecurringWeekly is true, this schedule will keep renewing for future weeks until disabled or removed.

IsDisabled

boolean

Disables the schedule.

IsRecurringWeekly

boolean

If true, the StartTime and EndTime will get renewed every week.

StartTime

string

The date and time in UTC at which the schedule starts.

TargetStandby

number

The standby target to maintain for the duration of the schedule.

ScheduledStandbySettings

Name Type Description
IsEnabled

boolean

When true, scheduled standby will be enabled

ScheduleList

Schedule[]

A list of non-overlapping schedules

ServerResourceConstraintParams

Name Type Description
CpuLimit

number

The maximum number of cores that each server is allowed to use.

MemoryLimitGB

number

The maximum number of GiB of memory that each server is allowed to use. WARNING: After exceeding this limit, the server will be killed

ServerType

Name Type Description
Container

string

Process

string

VmStartupScriptConfiguration

Name Type Description
PortRequests

VmStartupScriptPortRequest[]

Optional port requests (name/protocol) that will be used by the VmStartupScript. Max of 5 requests.

VmStartupScriptAssetReference

AssetReference

Asset which contains the VmStartupScript script and any other required files.

VmStartupScriptPortRequest

Name Type Description
Name

string

The name for the port.

Protocol

ProtocolType

The protocol for the port.

Error Codes

Name Code
APINotEnabledForGameClientAccess 1082
MultiplayerServerBadRequest 1382
MultiplayerServerForbidden 1384
MultiplayerServerInternalServerError 1387
MultiplayerServerNotFound 1385
MultiplayerServerTooManyRequests 1380
MultiplayerServerUnauthorized 1383
MultiplayerServerUnavailable 1388