Crate rusoto_gamelift [−] [src]
Amazon GameLift is a managed service for developers who need a scalable, dedicated server solution for their multiplayer games. Amazon GameLift provides tools to acquire computing resources and deploy game servers, scale game server capacity to meet player demand, and track in-depth metrics on player usage and server performance.
The Amazon GameLift service API includes important features:
-
Find game sessions and match players to games – Retrieve information on available game sessions; create new game sessions; send player requests to join a game session.
-
Configure and manage game server resources – Manage builds, fleets, queues, and aliases; set autoscaling policies; retrieve logs and metrics.
This reference guide describes the low-level service API for Amazon GameLift. We recommend using either the Amazon Web Services software development kit (AWS SDK), available in multiple languages, or the AWS command-line interface (CLI) tool. Both of these align with the low-level service API. In addition, you can use the AWS Management Console for Amazon GameLift for many administrative actions.
You can use some API actions with Amazon GameLift Local, a testing tool that lets you test your game integration locally before deploying on Amazon GameLift. You can call these APIs from the AWS CLI or programmatically; API calls to Amazon GameLift Local servers perform exactly as they do when calling Amazon GameLift web servers. For more information on using Amazon GameLift Local, see Testing an Integration.
MORE RESOURCES
-
Amazon GameLift Developer Guide – Learn more about Amazon GameLift features and how to use them.
-
Lumberyard and Amazon GameLift Tutorials – Get started fast with walkthroughs and sample projects.
-
GameDev Blog – Stay up to date with new features and techniques.
-
GameDev Forums – Connect with the GameDev community.
-
Amazon GameLift Document History – See changes to the Amazon GameLift service, SDKs, and documentation, as well as links to release notes.
API SUMMARY
This list offers a functional overview of the Amazon GameLift service API.
Finding Games and Joining Players
You can enable players to connect to game servers on Amazon GameLift from a game client or through a game service (such as a matchmaking service). You can use these operations to discover actively running game or start new games. You can also match players to games, either singly or as a group.
-
Discover existing game sessions
-
SearchGameSessions – Get all available game sessions or search for game sessions that match a set of criteria. Available in Amazon GameLift Local.
-
-
Start a new game session
-
Game session placement – Use a queue to process new game session requests and create game sessions on fleets designated for the queue.
-
StartGameSessionPlacement – Request a new game session placement and add one or more players to it.
-
DescribeGameSessionPlacement – Get details on a placement request, including status.
-
StopGameSessionPlacement – Cancel a placement request.
-
-
CreateGameSession – Start a new game session on a specific fleet. Available in Amazon GameLift Local.
-
-
Manage game session objects
-
DescribeGameSessions – Retrieve metadata for one or more game sessions, including length of time active and current player count. Available in Amazon GameLift Local.
-
DescribeGameSessionDetails – Retrieve metadata and the game session protection setting for one or more game sessions.
-
UpdateGameSession – Change game session settings, such as maximum player count and join policy.
-
GetGameSessionLogUrl – Get the location of saved logs for a game session.
-
-
Manage player sessions objects
-
CreatePlayerSession – Send a request for a player to join a game session. Available in Amazon GameLift Local.
-
CreatePlayerSessions – Send a request for multiple players to join a game session. Available in Amazon GameLift Local.
-
DescribePlayerSessions – Get details on player activity, including status, playing time, and player data. Available in Amazon GameLift Local.
-
Setting Up and Managing Game Servers
When setting up Amazon GameLift, first create a game build and upload the files to Amazon GameLift. Then use these operations to set up a fleet of resources to run your game servers. Manage games to scale capacity, adjust configuration settings, access raw utilization data, and more.
-
Manage game builds
-
CreateBuild – Create a new build by uploading files stored in an Amazon S3 bucket. (To create a build stored at a local file location, use the AWS CLI command
upload-build
.) -
ListBuilds – Get a list of all builds uploaded to a Amazon GameLift region.
-
DescribeBuild – Retrieve information associated with a build.
-
UpdateBuild – Change build metadata, including build name and version.
-
DeleteBuild – Remove a build from Amazon GameLift.
-
-
Manage fleets
-
CreateFleet – Configure and activate a new fleet to run a build's game servers.
-
DeleteFleet – Terminate a fleet that is no longer running game servers or hosting players.
-
View / update fleet configurations.
-
ListFleets – Get a list of all fleet IDs in a Amazon GameLift region (all statuses).
-
DescribeFleetAttributes / UpdateFleetAttributes – View or change a fleet's metadata and settings for game session protection and resource creation limits.
-
DescribeFleetPortSettings / UpdateFleetPortSettings – View or change the inbound permissions (IP address and port setting ranges) allowed for a fleet.
-
DescribeRuntimeConfiguration / UpdateRuntimeConfiguration – View or change what server processes (and how many) to run on each instance in a fleet.
-
DescribeInstances – Get information on each instance in a fleet, including instance ID, IP address, and status.
-
-
-
Control fleet capacity
-
DescribeEC2InstanceLimits – Retrieve maximum number of instances allowed for the current AWS account and the current usage level.
-
DescribeFleetCapacity / UpdateFleetCapacity – Retrieve the capacity settings and the current number of instances in a fleet; adjust fleet capacity settings to scale up or down.
-
Autoscale – Manage autoscaling rules and apply them to a fleet.
-
PutScalingPolicy – Create a new autoscaling policy, or update an existing one.
-
DescribeScalingPolicies – Retrieve an existing autoscaling policy.
-
DeleteScalingPolicy – Delete an autoscaling policy and stop it from affecting a fleet's capacity.
-
-
-
Access fleet activity statistics
-
DescribeFleetUtilization – Get current data on the number of server processes, game sessions, and players currently active on a fleet.
-
DescribeFleetEvents – Get a fleet's logged events for a specified time span.
-
DescribeGameSessions – Retrieve metadata associated with one or more game sessions, including length of time active and current player count.
-
-
Remotely access an instance
-
GetInstanceAccess – Request access credentials needed to remotely connect to a specified instance in a fleet.
-
-
Manage fleet aliases
-
CreateAlias – Define a new alias and optionally assign it to a fleet.
-
ListAliases – Get all fleet aliases defined in a Amazon GameLift region.
-
DescribeAlias – Retrieve information on an existing alias.
-
UpdateAlias – Change settings for a alias, such as redirecting it from one fleet to another.
-
DeleteAlias – Remove an alias from the region.
-
ResolveAlias – Get the fleet ID that a specified alias points to.
-
-
Manage game session queues
-
CreateGameSessionQueue – Create a queue for processing requests for new game sessions.
-
DescribeGameSessionQueues – Get data on all game session queues defined in a Amazon GameLift region.
-
UpdateGameSessionQueue – Change the configuration of a game session queue.
-
DeleteGameSessionQueue – Remove a game session queue from the region.
-
If you're using the service, you're probably looking for GameLiftClient and GameLift.
Structs
Alias |
Properties describing a fleet alias. Alias-related operations include: |
AwsCredentials |
AWS access credentials sometimes used for uploading game build files to Amazon GameLift. They are valid for a limited time. If they expire before you upload your game build, get a new set by calling RequestUploadCredentials. |
Build |
Properties describing a game build. Build-related operations include: |
CreateAliasInput |
Represents the input for a request action. |
CreateAliasOutput |
Represents the returned data in response to a request action. |
CreateBuildInput |
Represents the input for a request action. |
CreateBuildOutput |
Represents the returned data in response to a request action. |
CreateFleetInput |
Represents the input for a request action. |
CreateFleetOutput |
Represents the returned data in response to a request action. |
CreateGameSessionInput |
Represents the input for a request action. |
CreateGameSessionOutput |
Represents the returned data in response to a request action. |
CreateGameSessionQueueInput |
Represents the input for a request action. |
CreateGameSessionQueueOutput |
Represents the returned data in response to a request action. |
CreatePlayerSessionInput |
Represents the input for a request action. |
CreatePlayerSessionOutput |
Represents the returned data in response to a request action. |
CreatePlayerSessionsInput |
Represents the input for a request action. |
CreatePlayerSessionsOutput |
Represents the returned data in response to a request action. |
DeleteAliasInput |
Represents the input for a request action. |
DeleteBuildInput |
Represents the input for a request action. |
DeleteFleetInput |
Represents the input for a request action. |
DeleteGameSessionQueueInput |
Represents the input for a request action. |
DeleteGameSessionQueueOutput | |
DeleteScalingPolicyInput |
Represents the input for a request action. |
DescribeAliasInput |
Represents the input for a request action. |
DescribeAliasOutput |
Represents the returned data in response to a request action. |
DescribeBuildInput |
Represents the input for a request action. |
DescribeBuildOutput |
Represents the returned data in response to a request action. |
DescribeEC2InstanceLimitsInput |
Represents the input for a request action. |
DescribeEC2InstanceLimitsOutput |
Represents the returned data in response to a request action. |
DescribeFleetAttributesInput |
Represents the input for a request action. |
DescribeFleetAttributesOutput |
Represents the returned data in response to a request action. |
DescribeFleetCapacityInput |
Represents the input for a request action. |
DescribeFleetCapacityOutput |
Represents the returned data in response to a request action. |
DescribeFleetEventsInput |
Represents the input for a request action. |
DescribeFleetEventsOutput |
Represents the returned data in response to a request action. |
DescribeFleetPortSettingsInput |
Represents the input for a request action. |
DescribeFleetPortSettingsOutput |
Represents the returned data in response to a request action. |
DescribeFleetUtilizationInput |
Represents the input for a request action. |
DescribeFleetUtilizationOutput |
Represents the returned data in response to a request action. |
DescribeGameSessionDetailsInput |
Represents the input for a request action. |
DescribeGameSessionDetailsOutput |
Represents the returned data in response to a request action. |
DescribeGameSessionPlacementInput |
Represents the input for a request action. |
DescribeGameSessionPlacementOutput |
Represents the returned data in response to a request action. |
DescribeGameSessionQueuesInput |
Represents the input for a request action. |
DescribeGameSessionQueuesOutput |
Represents the returned data in response to a request action. |
DescribeGameSessionsInput |
Represents the input for a request action. |
DescribeGameSessionsOutput |
Represents the returned data in response to a request action. |
DescribeInstancesInput |
Represents the input for a request action. |
DescribeInstancesOutput |
Represents the returned data in response to a request action. |
DescribePlayerSessionsInput |
Represents the input for a request action. |
DescribePlayerSessionsOutput |
Represents the returned data in response to a request action. |
DescribeRuntimeConfigurationInput |
Represents the input for a request action. |
DescribeRuntimeConfigurationOutput |
Represents the returned data in response to a request action. |
DescribeScalingPoliciesInput |
Represents the input for a request action. |
DescribeScalingPoliciesOutput |
Represents the returned data in response to a request action. |
DesiredPlayerSession |
Player information for use when creating player sessions using a game session placement request with StartGameSessionPlacement. |
EC2InstanceCounts |
Current status of fleet capacity. The number of active instances should match or be in the process of matching the number of desired instances. Pending and terminating counts are non-zero only if fleet capacity is adjusting to an UpdateFleetCapacity request, or if access to resources is temporarily affected. |
EC2InstanceLimit |
Maximum number of instances allowed based on the Amazon Elastic Compute Cloud (Amazon EC2) instance type. Instance limits can be retrieved by calling DescribeEC2InstanceLimits. |
Event |
Log entry describing an event involving Amazon GameLift resources (such as a fleet). In addition to tracking activity, event codes and messages can provide additional information for troubleshooting and debugging problems. |
FleetAttributes |
General properties describing a fleet. |
FleetCapacity |
Information about the fleet's capacity. Fleet capacity is measured in EC2 instances. By default, new fleets have a capacity of one instance, but can be updated as needed. The maximum number of instances for a fleet is determined by the fleet's instance type. |
FleetUtilization |
Current status of fleet utilization, including the number of game and player sessions being hosted. |
GameLiftClient |
A client for the Amazon GameLift API. |
GameProperty |
Set of key-value pairs containing information a server process requires to set up a game session. This object allows you to pass in any set of data needed for your game. For more information, see the Amazon GameLift Developer Guide. |
GameSession |
Properties describing a game session. |
GameSessionDetail |
A game session's properties plus the protection policy currently in force. |
GameSessionPlacement |
Object that describes a StartGameSessionPlacement request. This object includes the full details of the original request plus the current status and start/end time stamps. Game session placement-related operations include: |
GameSessionQueue |
Configuration of a queue that is used to process game session placement requests. The queue configuration identifies several game features:
Queue-related operations include the following: |
GameSessionQueueDestination |
Fleet designated in a game session queue. Requests for new game sessions in the queue are fulfilled by starting a new game session on any destination configured for a queue. |
GetGameSessionLogUrlInput |
Represents the input for a request action. |
GetGameSessionLogUrlOutput |
Represents the returned data in response to a request action. |
GetInstanceAccessInput |
Represents the input for a request action. |
GetInstanceAccessOutput |
Represents the returned data in response to a request action. |
Instance |
Properties that describe an instance of a virtual computing resource that hosts one or more game servers. A fleet contains zero or more instances. |
InstanceAccess |
Information required to remotely connect to a fleet instance. Access is requested by calling GetInstanceAccess. |
InstanceCredentials |
Set of credentials required to remotely access a fleet instance. Access credentials are requested by calling GetInstanceAccess and returned in an InstanceAccess object. |
IpPermission |
A range of IP addresses and port settings that allow inbound traffic to connect to server processes on Amazon GameLift. Each game session hosted on a fleet is assigned a unique combination of IP address and port number, which must fall into the fleet's allowed ranges. This combination is included in the GameSession object. |
ListAliasesInput |
Represents the input for a request action. |
ListAliasesOutput |
Represents the returned data in response to a request action. |
ListBuildsInput |
Represents the input for a request action. |
ListBuildsOutput |
Represents the returned data in response to a request action. |
ListFleetsInput |
Represents the input for a request action. |
ListFleetsOutput |
Represents the returned data in response to a request action. |
PlacedPlayerSession |
Information about a player session that was created as part of a StartGameSessionPlacement request. This object contains only the player ID and player session ID. To retrieve full details on a player session, call DescribePlayerSessions with the player session ID. |
PlayerLatency |
Regional latency information for a player, used when requesting a new game session with StartGameSessionPlacement. This value indicates the amount of time lag that exists when the player is connected to a fleet in the specified region. The relative difference between a player's latency values for multiple regions are used to determine which fleets are best suited to place a new game session for the player. |
PlayerLatencyPolicy |
Queue setting that determines the highest latency allowed for individual players when placing a game session. When a latency policy is in force, a game session cannot be placed at any destination in a region where a player is reporting latency higher than the cap. Latency policies are only enforced when the placement request contains player latency information. Latency policy-related operations include: |
PlayerSession |
Properties describing a player session. A player session represents either a player reservation for a game session or actual player activity in a game session. A player session object (including player data) is automatically passed to a game session when the player connects to the game session and is validated. Player session-related operations include: |
PutScalingPolicyInput |
Represents the input for a request action. |
PutScalingPolicyOutput |
Represents the returned data in response to a request action. |
RequestUploadCredentialsInput |
Represents the input for a request action. |
RequestUploadCredentialsOutput |
Represents the returned data in response to a request action. |
ResolveAliasInput |
Represents the input for a request action. |
ResolveAliasOutput |
Represents the returned data in response to a request action. |
ResourceCreationLimitPolicy |
Policy that limits the number of game sessions a player can create on the same fleet. This optional policy gives game owners control over how players can consume available game server resources. A resource creation policy makes the following statement: "An individual player can create a maximum number of new game sessions within a specified time period". The policy is evaluated when a player tries to create a new game session. For example, with a policy of 10 new game sessions and a time period of 60 minutes, on receiving a |
RoutingStrategy |
Routing configuration for a fleet alias. |
RuntimeConfiguration |
Collection of server process configurations that describe what processes should be run on each instance in a fleet. An instance can launch and maintain multiple server processes based on the runtime configuration; it regularly checks for an updated runtime configuration and starts new server processes to match the latest version. The key purpose of a runtime configuration with multiple server process configurations is to be able to run more than one kind of game server in a single fleet. You can include configurations for more than one server executable in order to run two or more different programs to run on the same instance. This option might be useful, for example, to run more than one version of your game server on the same fleet. Another option is to specify configurations for the same server executable but with different launch parameters. A Amazon GameLift instance is limited to 50 processes running simultaneously. To calculate the total number of processes specified in a runtime configuration, add the values of the |
S3Location |
Location in Amazon Simple Storage Service (Amazon S3) where build files can be stored for access by Amazon GameLift. This location is specified in a CreateBuild request. For more details, see the Create a Build with Files in Amazon S3. |
ScalingPolicy |
Rule that controls how a fleet is scaled. Scaling policies are uniquely identified by the combination of name and fleet ID. |
SearchGameSessionsInput |
Represents the input for a request action. |
SearchGameSessionsOutput |
Represents the returned data in response to a request action. |
ServerProcess |
A set of instructions for launching server processes on each instance in a fleet. Each instruction set identifies the location of the server executable, optional launch parameters, and the number of server processes with this configuration to maintain concurrently on the instance. Server process configurations make up a fleet's |
StartGameSessionPlacementInput |
Represents the input for a request action. |
StartGameSessionPlacementOutput |
Represents the returned data in response to a request action. |
StopGameSessionPlacementInput |
Represents the input for a request action. |
StopGameSessionPlacementOutput |
Represents the returned data in response to a request action. |
UpdateAliasInput |
Represents the input for a request action. |
UpdateAliasOutput |
Represents the returned data in response to a request action. |
UpdateBuildInput |
Represents the input for a request action. |
UpdateBuildOutput |
Represents the returned data in response to a request action. |
UpdateFleetAttributesInput |
Represents the input for a request action. |
UpdateFleetAttributesOutput |
Represents the returned data in response to a request action. |
UpdateFleetCapacityInput |
Represents the input for a request action. |
UpdateFleetCapacityOutput |
Represents the returned data in response to a request action. |
UpdateFleetPortSettingsInput |
Represents the input for a request action. |
UpdateFleetPortSettingsOutput |
Represents the returned data in response to a request action. |
UpdateGameSessionInput |
Represents the input for a request action. |
UpdateGameSessionOutput |
Represents the returned data in response to a request action. |
UpdateGameSessionQueueInput |
Represents the input for a request action. |
UpdateGameSessionQueueOutput |
Represents the returned data in response to a request action. |
UpdateRuntimeConfigurationInput |
Represents the input for a request action. |
UpdateRuntimeConfigurationOutput |
Represents the returned data in response to a request action. |
Enums
CreateAliasError |
Errors returned by CreateAlias |
CreateBuildError |
Errors returned by CreateBuild |
CreateFleetError |
Errors returned by CreateFleet |
CreateGameSessionError |
Errors returned by CreateGameSession |
CreateGameSessionQueueError |
Errors returned by CreateGameSessionQueue |
CreatePlayerSessionError |
Errors returned by CreatePlayerSession |
CreatePlayerSessionsError |
Errors returned by CreatePlayerSessions |
DeleteAliasError |
Errors returned by DeleteAlias |
DeleteBuildError |
Errors returned by DeleteBuild |
DeleteFleetError |
Errors returned by DeleteFleet |
DeleteGameSessionQueueError |
Errors returned by DeleteGameSessionQueue |
DeleteScalingPolicyError |
Errors returned by DeleteScalingPolicy |
DescribeAliasError |
Errors returned by DescribeAlias |
DescribeBuildError |
Errors returned by DescribeBuild |
DescribeEC2InstanceLimitsError |
Errors returned by DescribeEC2InstanceLimits |
DescribeFleetAttributesError |
Errors returned by DescribeFleetAttributes |
DescribeFleetCapacityError |
Errors returned by DescribeFleetCapacity |
DescribeFleetEventsError |
Errors returned by DescribeFleetEvents |
DescribeFleetPortSettingsError |
Errors returned by DescribeFleetPortSettings |
DescribeFleetUtilizationError |
Errors returned by DescribeFleetUtilization |
DescribeGameSessionDetailsError |
Errors returned by DescribeGameSessionDetails |
DescribeGameSessionPlacementError |
Errors returned by DescribeGameSessionPlacement |
DescribeGameSessionQueuesError |
Errors returned by DescribeGameSessionQueues |
DescribeGameSessionsError |
Errors returned by DescribeGameSessions |
DescribeInstancesError |
Errors returned by DescribeInstances |
DescribePlayerSessionsError |
Errors returned by DescribePlayerSessions |
DescribeRuntimeConfigurationError |
Errors returned by DescribeRuntimeConfiguration |
DescribeScalingPoliciesError |
Errors returned by DescribeScalingPolicies |
GetGameSessionLogUrlError |
Errors returned by GetGameSessionLogUrl |
GetInstanceAccessError |
Errors returned by GetInstanceAccess |
ListAliasesError |
Errors returned by ListAliases |
ListBuildsError |
Errors returned by ListBuilds |
ListFleetsError |
Errors returned by ListFleets |
PutScalingPolicyError |
Errors returned by PutScalingPolicy |
RequestUploadCredentialsError |
Errors returned by RequestUploadCredentials |
ResolveAliasError |
Errors returned by ResolveAlias |
SearchGameSessionsError |
Errors returned by SearchGameSessions |
StartGameSessionPlacementError |
Errors returned by StartGameSessionPlacement |
StopGameSessionPlacementError |
Errors returned by StopGameSessionPlacement |
UpdateAliasError |
Errors returned by UpdateAlias |
UpdateBuildError |
Errors returned by UpdateBuild |
UpdateFleetAttributesError |
Errors returned by UpdateFleetAttributes |
UpdateFleetCapacityError |
Errors returned by UpdateFleetCapacity |
UpdateFleetPortSettingsError |
Errors returned by UpdateFleetPortSettings |
UpdateGameSessionError |
Errors returned by UpdateGameSession |
UpdateGameSessionQueueError |
Errors returned by UpdateGameSessionQueue |
UpdateRuntimeConfigurationError |
Errors returned by UpdateRuntimeConfiguration |
Traits
GameLift |
Trait representing the capabilities of the Amazon GameLift API. Amazon GameLift clients implement this trait. |