CreateAppBlockBuilder - Amazon AppStream 2.0

CreateAppBlockBuilder

Creates an app block builder.

Request Syntax

{ "AccessEndpoints": [ { "EndpointType": "string", "VpceId": "string" } ], "Description": "string", "DisplayName": "string", "EnableDefaultInternetAccess": boolean, "IamRoleArn": "string", "InstanceType": "string", "Name": "string", "Platform": "string", "Tags": { "string" : "string" }, "VpcConfig": { "SecurityGroupIds": [ "string" ], "SubnetIds": [ "string" ] } }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.

AccessEndpoints

The list of interface VPC endpoint (interface endpoint) objects. Administrators can connect to the app block builder only through the specified endpoints.

Type: Array of AccessEndpoint objects

Array Members: Minimum number of 1 item. Maximum number of 4 items.

Required: No

Description

The description of the app block builder.

Type: String

Length Constraints: Maximum length of 256.

Required: No

DisplayName

The display name of the app block builder.

Type: String

Length Constraints: Maximum length of 100.

Required: No

EnableDefaultInternetAccess

Enables or disables default internet access for the app block builder.

Type: Boolean

Required: No

IamRoleArn

The Amazon Resource Name (ARN) of the IAM role to apply to the app block builder. To assume a role, the app block builder calls the AWS Security Token Service (STS) AssumeRole API operation and passes the ARN of the role to use. The operation creates a new session with temporary credentials. AppStream 2.0 retrieves the temporary credentials and creates the appstream_machine_role credential profile on the instance.

For more information, see Using an IAM Role to Grant Permissions to Applications and Scripts Running on AppStream 2.0 Streaming Instances in the Amazon AppStream 2.0 Administration Guide.

Type: String

Pattern: ^arn:aws(?:\-cn|\-iso\-b|\-iso|\-us\-gov)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.\\-]{0,1023}$

Required: No

InstanceType

The instance type to use when launching the app block builder. The following instance types are available:

  • stream.standard.small

  • stream.standard.medium

  • stream.standard.large

  • stream.standard.xlarge

  • stream.standard.2xlarge

Type: String

Length Constraints: Minimum length of 1.

Required: Yes

Name

The unique name for the app block builder.

Type: String

Pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]{0,100}$

Required: Yes

Platform

The platform of the app block builder.

WINDOWS_SERVER_2019 is the only valid value.

Type: String

Valid Values: WINDOWS_SERVER_2019

Required: Yes

Tags

The tags to associate with the app block builder. A tag is a key-value pair, and the value is optional. For example, Environment=Test. If you do not specify a value, Environment=.

If you do not specify a value, the value is set to an empty string.

Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following special characters:

_ . : / = + \ - @

For more information, see Tagging Your Resources in the Amazon AppStream 2.0 Administration Guide.

Type: String to string map

Map Entries: Maximum number of 50 items.

Key Length Constraints: Minimum length of 1. Maximum length of 128.

Key Pattern: ^(^(?!aws:).[\p{L}\p{Z}\p{N}_.:/=+\-@]*)$

Value Length Constraints: Minimum length of 0. Maximum length of 256.

Value Pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$

Required: No

VpcConfig

The VPC configuration for the app block builder.

App block builders require that you specify at least two subnets in different availability zones.

Type: VpcConfig object

Required: Yes

Response Syntax

{ "AppBlockBuilder": { "AccessEndpoints": [ { "EndpointType": "string", "VpceId": "string" } ], "AppBlockBuilderErrors": [ { "ErrorCode": "string", "ErrorMessage": "string", "ErrorTimestamp": number } ], "Arn": "string", "CreatedTime": number, "Description": "string", "DisplayName": "string", "EnableDefaultInternetAccess": boolean, "IamRoleArn": "string", "InstanceType": "string", "Name": "string", "Platform": "string", "State": "string", "StateChangeReason": { "Code": "string", "Message": "string" }, "VpcConfig": { "SecurityGroupIds": [ "string" ], "SubnetIds": [ "string" ] } } }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

AppBlockBuilder

Describes an app block builder.

Type: AppBlockBuilder object

Errors

For information about the errors that are common to all actions, see Common Errors.

ConcurrentModificationException

An API error occurred. Wait a few minutes and try again.

HTTP Status Code: 400

InvalidAccountStatusException

The resource cannot be created because your AWS account is suspended. For assistance, contact AWS Support.

HTTP Status Code: 400

InvalidParameterCombinationException

Indicates an incorrect combination of parameters, or a missing parameter.

HTTP Status Code: 400

InvalidRoleException

The specified role is invalid.

HTTP Status Code: 400

LimitExceededException

The requested limit exceeds the permitted limit for an account.

HTTP Status Code: 400

OperationNotPermittedException

The attempted operation is not permitted.

HTTP Status Code: 400

RequestLimitExceededException

AppStream 2.0 can’t process the request right now because the Describe calls from your AWS account are being throttled by Amazon EC2. Try again later.

HTTP Status Code: 400

ResourceAlreadyExistsException

The specified resource already exists.

HTTP Status Code: 400

ResourceNotAvailableException

The specified resource exists and is not in use, but isn't available.

HTTP Status Code: 400

ResourceNotFoundException

The specified resource was not found.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: