Amazon GameLift
Developer Guide (Version )

Amazon GameLift Service API Reference (AWS SDK)

The Amazon GameLift Service API is packaged into the AWS SDK. Download the AWS SDK or view the Amazon GameLift API reference documentation.

This page lists the available API actions based on functionality and tasks. The GameLift service API includes two main categories: (1) actions for starting game sessions and getting players into games, and (2) actions to manage your GameLift hosting resources.

Actions to Manage Games and Players

Call these API actions from your game client service to start new game sessions, request matchmaking, reserve player slots in active games, and work with game and player session data.

  • Start new game sessions for one or more players. Use a game session placement to start a new game and place it with the best hosting resources available. Alternatively, create a new game session on one specific fleet.

  • Get players into game sessions with FlexMatch matchmaking. Group players into a match and start a new game session for them. Find new players for an existing game using match backfill.

    • StartMatchmaking – Request matchmaking for one players or a group who want to play together.

    • DescribeMatchmaking – Get details on a matchmaking request, including status.

    • AcceptMatch – For a match that requires player acceptance, register when a player accepts a proposed match.

    • StopMatchmaking – Cancel a matchmaking request.

    • StartMatchBackfill - Request additional player matches to fill empty slots in an existing game session.

  • Get players into existing games. Find existing games with available player slots and reserve them for new players.

    • SearchGameSessions – Retrieve all available game sessions or search for game sessions that match a set of criteria.

    • CreatePlayerSession – Reserve an open slot for a player to join a game session. Available in GameLift Local.

    • CreatePlayerSessions – Reserve open slots for multiple players to join a game session. Available in GameLift Local.

  • Work with game session and player session data. Retrieve current data on existing game sessions and player sessions, and update as needed.

    • DescribeGameSessions – Retrieve metadata for one or more game sessions, including length of time active and current player count. Available in GameLift Local.

    • DescribeGameSessionDetails – Retrieve metadata and the game session protection setting for one or more game sessions.

    • GetGameSessionLogUrl – Get the location of saved logs for a game session.

    • DescribePlayerSessions – Get details on player activity, including status, playing time, and player data. Available in GameLift Local.

    • UpdateGameSession – Change game session settings, such as maximum player count and join policy.

Actions to Manage Game Hosting Resources

Use these API actions to configure hosting resources for your game, scale capacity to meet player demand, access performance and utilization metrics, and more. Most resource management functionality is available in the GameLift Console, but you can also make direct calls to the service using the AWS Command Line Interface (AWS CLI) tool or the AWS SDK.

  • Manage game builds. Work with builds of your custom game server, which are uploaded to the GameLift service and deployed on fleets.

    • CreateBuild – Create a new build using files stored in an Amazon S3 bucket. To create a build and upload files from a local path, use the AWS CLI-only command upload-build.

    • ListBuilds – Get a list of all builds uploaded to a GameLift region.

    • DescribeBuild – Retrieve information associated with a build.

    • UpdateBuild – Change build metadata, including build name and version.

    • DeleteBuild – Remove a build from GameLift.

  • Manage Realtime scripts. Work with configuration scripts for use with Realtime Servers. Unlike custom game builds, scripts can be updated after they are uploaded to the GameLift service.

    • CreateScript – Create a new server script to run on Realtime Servers.

    • ListScripts – Get a list of all Realtime scripts uploaded to an GameLift region.

    • DescribeScript – Retrieve information associated with a Realtime script.

    • UpdateScript – Change script metadata and upload revised script content.

    • DeleteScript – Remove a Realtime script from GameLift.

  • Manage fleets for game hosting. Configure a fleet of hosting resources and deploy your game server or Realtime script to the fleet.

  • Scale fleet capacity. Set up fleet automatic scaling or set fleet capacity manually.

  • Manage game session queues. Set up multi-fleet, multi-region Queues to place game sessions with the best available hosting resources. Queues are required with FlexMatch matchmaking.

  • Manage FlexMatch resources. Configure matchmakers for your game and specify match rules to create teams of players to meet your custom specifications.

  • Monitor fleet activity. Get up-to-the-minute information on server process and game session activity on a fleet.

    • DescribeFleetUtilization – Retrieve statistics on the number of server processes, game sessions, and players that are currently active on a fleet.

    • DescribeFleetEvents – View logged events for a fleet during a specified time span.

    • DescribeGameSessions – Retrieve game session metadata, including a game's running time and current player count.

  • Remotely access an instance. Monitor or troubleshoot activity on a specified fleet instance.

    • DescribeInstances – Get information on each instance in a fleet, including instance ID, IP address, and status.

    • GetInstanceAccess – Request access credentials needed to remotely connect to a specified instance in a fleet.

  • Manage fleet aliases. Use aliases to represent your fleets or specify an alternative destination.

    • CreateAlias – Define a new alias and optionally assign it to a fleet.

    • ListAliases – Get all fleet aliases defined in a GameLift region.

    • DescribeAlias – Retrieve information on an existing alias.

    • UpdateAlias – Change settings for an 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 VPC peering connections for fleets. Use VPC peering to establish secure access between your GameLift and other AWS resources.

Available Programming Languages

The AWS SDK with Amazon GameLift is available in the following languages. See documentation for each language for details on support for development environments.