{ "$schema": "https://json-structure.org/meta/core/v0/#", "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-gamelift/refs/heads/main/json-structure/gamelift-game-server-group-structure.json", "name": "GameServerGroup", "description": "

This data type is used with the Amazon GameLift FleetIQ and game server groups.

Properties that describe a game server group resource. A game server group manages certain properties related to a corresponding Amazon EC2 Auto Scaling group.

A game server group is created by a successful call to CreateGameServerGroup and deleted by calling DeleteGameServerGroup. Game server group activity can be temporarily suspended and resumed by calling SuspendGameServerGroup and ResumeGameServerGroup, respectively.

", "type": "object", "properties": { "GameServerGroupName": { "allOf": [ { "$ref": "#/components/schemas/GameServerGroupName" }, { "description": "A developer-defined identifier for the game server group. The name is unique for each Region in each Amazon Web Services account." } ] }, "GameServerGroupArn": { "allOf": [ { "$ref": "#/components/schemas/GameServerGroupArn" }, { "description": "A generated unique ID for the game server group." } ] }, "RoleArn": { "allOf": [ { "$ref": "#/components/schemas/IamRoleArn" }, { "description": "The Amazon Resource Name (ARN) for an IAM role that allows Amazon GameLift to access your Amazon EC2 Auto Scaling groups." } ] }, "InstanceDefinitions": { "allOf": [ { "$ref": "#/components/schemas/InstanceDefinitions" }, { "description": "The set of Amazon EC2 instance types that Amazon GameLift FleetIQ can use when balancing and automatically scaling instances in the corresponding Auto Scaling group. " } ] }, "BalancingStrategy": { "allOf": [ { "$ref": "#/components/schemas/BalancingStrategy" }, { "description": "

Indicates how Amazon GameLift FleetIQ balances the use of Spot Instances and On-Demand Instances in the game server group. Method options include the following:

" } ] }, "GameServerProtectionPolicy": { "allOf": [ { "$ref": "#/components/schemas/GameServerProtectionPolicy" }, { "description": "A flag that indicates whether instances in the game server group are protected from early termination. Unprotected instances that have active game servers running might be terminated during a scale-down event, causing players to be dropped from the game. Protected instances cannot be terminated while there are active game servers running except in the event of a forced game server group deletion (see ). An exception to this is with Spot Instances, which can be terminated by Amazon Web Services regardless of protection status. " } ] }, "AutoScalingGroupArn": { "allOf": [ { "$ref": "#/components/schemas/AutoScalingGroupArn" }, { "description": "A generated unique ID for the Amazon EC2 Auto Scaling group that is associated with this game server group." } ] }, "Status": { "allOf": [ { "$ref": "#/components/schemas/GameServerGroupStatus" }, { "description": "

The current status of the game server group. Possible statuses include:

" } ] }, "StatusReason": { "allOf": [ { "$ref": "#/components/schemas/NonZeroAndMaxString" }, { "description": "Additional information about the current game server group status. This information might provide additional insight on groups that are in ERROR status." } ] }, "SuspendedActions": { "allOf": [ { "$ref": "#/components/schemas/GameServerGroupActions" }, { "description": "A list of activities that are currently suspended for this game server group. If this property is empty, all activities are occurring." } ] }, "CreationTime": { "allOf": [ { "$ref": "#/components/schemas/Timestamp" }, { "description": "A time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (for example \"1469498468.057\")." } ] }, "LastUpdatedTime": { "allOf": [ { "$ref": "#/components/schemas/Timestamp" }, { "description": "A timestamp that indicates when this game server group was last updated." } ] } } }