2017/04/21 - Amazon AppStream - 5 updated api methods
Changes The new feature named "Default Internet Access" will enable Internet access from AppStream 2.0 instances - image builders and fleet instances. Admins will check a flag either through AWS management console for AppStream 2.0 or through API while creating an image builder or while creating/updating a fleet.
{'EnableDefaultInternetAccess': 'boolean'}Response
{'Fleet': {'EnableDefaultInternetAccess': 'boolean'}}
Creates a new fleet.
See also: AWS API Documentation
Request Syntax
client.create_fleet( Name='string', ImageName='string', InstanceType='string', ComputeCapacity={ 'DesiredInstances': 123 }, VpcConfig={ 'SubnetIds': [ 'string', ] }, MaxUserDurationInSeconds=123, DisconnectTimeoutInSeconds=123, Description='string', DisplayName='string', EnableDefaultInternetAccess=True|False )
string
[REQUIRED]
A unique identifier for the fleet.
string
[REQUIRED]
Unique name of the image used by the fleet.
string
[REQUIRED]
The instance type of compute resources for the fleet. Fleet instances are launched from this instance type.
dict
[REQUIRED]
The parameters for the capacity allocated to the fleet.
DesiredInstances (integer) -- [REQUIRED]
The desired number of streaming instances.
dict
The VPC configuration for the fleet.
SubnetIds (list) -- [REQUIRED]
The list of subnets to which a network interface is established from the fleet instance.
(string) --
integer
The maximum time up to which a streaming session can run.
integer
The time after disconnection when a session is considered to have ended. If a user who got disconnected reconnects within this timeout interval, the user is connected back to his/her previous session.
string
The description of the fleet.
string
The display name of the fleet.
boolean
Enable/Disable default Internet access from fleet.
dict
Response Syntax
{ 'Fleet': { 'Arn': 'string', 'Name': 'string', 'DisplayName': 'string', 'Description': 'string', 'ImageName': 'string', 'InstanceType': 'string', 'ComputeCapacityStatus': { 'Desired': 123, 'Running': 123, 'InUse': 123, 'Available': 123 }, 'MaxUserDurationInSeconds': 123, 'DisconnectTimeoutInSeconds': 123, 'State': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED', 'VpcConfig': { 'SubnetIds': [ 'string', ] }, 'CreatedTime': datetime(2015, 1, 1), 'FleetErrors': [ { 'ErrorCode': 'IAM_SERVICE_ROLE_MISSING_ENI_DESCRIBE_ACTION'|'IAM_SERVICE_ROLE_MISSING_ENI_CREATE_ACTION'|'IAM_SERVICE_ROLE_MISSING_ENI_DELETE_ACTION'|'NETWORK_INTERFACE_LIMIT_EXCEEDED'|'INTERNAL_SERVICE_ERROR'|'IAM_SERVICE_ROLE_IS_MISSING'|'SUBNET_HAS_INSUFFICIENT_IP_ADDRESSES'|'IAM_SERVICE_ROLE_MISSING_DESCRIBE_SUBNET_ACTION'|'SUBNET_NOT_FOUND'|'IMAGE_NOT_FOUND'|'INVALID_SUBNET_CONFIGURATION', 'ErrorMessage': 'string' }, ], 'EnableDefaultInternetAccess': True|False } }
Response Structure
(dict) --
Fleet (dict) --
The details for the created fleet.
Arn (string) --
The ARN for the fleet.
Name (string) --
The name of the fleet.
DisplayName (string) --
The name displayed to end users on the AppStream 2.0 portal.
Description (string) --
The description displayed to end users on the AppStream 2.0 portal.
ImageName (string) --
The image used by the fleet.
InstanceType (string) --
The instance type of compute resources for the fleet. The fleet instances are launched from this instance type.
ComputeCapacityStatus (dict) --
The capacity information for the fleet.
Desired (integer) --
The desired number of streaming instances.
Running (integer) --
The total number of simultaneous streaming instances that are running.
InUse (integer) --
The number of instances that are being used for streaming.
Available (integer) --
The number of currently available instances that can be used to stream sessions.
MaxUserDurationInSeconds (integer) --
The maximum time during which a streaming session can run.
DisconnectTimeoutInSeconds (integer) --
The time after disconnection when a session is considered to have ended. When a user reconnects after a disconnection, the user is connected to the same session and instance within this time interval.
State (string) --
The current state for the fleet.
VpcConfig (dict) --
The VPC configuration for the fleet.
SubnetIds (list) --
The list of subnets to which a network interface is established from the fleet instance.
(string) --
CreatedTime (datetime) --
The time at which the fleet was created.
FleetErrors (list) --
The list of fleet errors is appended to this list.
(dict) --
The details of the fleet error.
ErrorCode (string) --
The error code for the fleet error.
ErrorMessage (string) --
The error message generated when the fleet has errors.
EnableDefaultInternetAccess (boolean) --
Default Internet access from the fleet. True (Enabled), False (Disabled).
{'Fleets': {'EnableDefaultInternetAccess': 'boolean'}}
If fleet names are provided, this operation describes the specified fleets; otherwise, all the fleets in the account are described.
See also: AWS API Documentation
Request Syntax
client.describe_fleets( Names=[ 'string', ], NextToken='string' )
list
The fleet names to describe. Use null to describe all the fleets for the AWS account.
(string) --
string
The pagination token to use to retrieve the next page of results for this operation. If this value is null, it retrieves the first page.
dict
Response Syntax
{ 'Fleets': [ { 'Arn': 'string', 'Name': 'string', 'DisplayName': 'string', 'Description': 'string', 'ImageName': 'string', 'InstanceType': 'string', 'ComputeCapacityStatus': { 'Desired': 123, 'Running': 123, 'InUse': 123, 'Available': 123 }, 'MaxUserDurationInSeconds': 123, 'DisconnectTimeoutInSeconds': 123, 'State': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED', 'VpcConfig': { 'SubnetIds': [ 'string', ] }, 'CreatedTime': datetime(2015, 1, 1), 'FleetErrors': [ { 'ErrorCode': 'IAM_SERVICE_ROLE_MISSING_ENI_DESCRIBE_ACTION'|'IAM_SERVICE_ROLE_MISSING_ENI_CREATE_ACTION'|'IAM_SERVICE_ROLE_MISSING_ENI_DELETE_ACTION'|'NETWORK_INTERFACE_LIMIT_EXCEEDED'|'INTERNAL_SERVICE_ERROR'|'IAM_SERVICE_ROLE_IS_MISSING'|'SUBNET_HAS_INSUFFICIENT_IP_ADDRESSES'|'IAM_SERVICE_ROLE_MISSING_DESCRIBE_SUBNET_ACTION'|'SUBNET_NOT_FOUND'|'IMAGE_NOT_FOUND'|'INVALID_SUBNET_CONFIGURATION', 'ErrorMessage': 'string' }, ], 'EnableDefaultInternetAccess': True|False }, ], 'NextToken': 'string' }
Response Structure
(dict) --
Fleets (list) --
The list of fleet details.
(dict) --
Contains the parameters for a fleet.
Arn (string) --
The ARN for the fleet.
Name (string) --
The name of the fleet.
DisplayName (string) --
The name displayed to end users on the AppStream 2.0 portal.
Description (string) --
The description displayed to end users on the AppStream 2.0 portal.
ImageName (string) --
The image used by the fleet.
InstanceType (string) --
The instance type of compute resources for the fleet. The fleet instances are launched from this instance type.
ComputeCapacityStatus (dict) --
The capacity information for the fleet.
Desired (integer) --
The desired number of streaming instances.
Running (integer) --
The total number of simultaneous streaming instances that are running.
InUse (integer) --
The number of instances that are being used for streaming.
Available (integer) --
The number of currently available instances that can be used to stream sessions.
MaxUserDurationInSeconds (integer) --
The maximum time during which a streaming session can run.
DisconnectTimeoutInSeconds (integer) --
The time after disconnection when a session is considered to have ended. When a user reconnects after a disconnection, the user is connected to the same session and instance within this time interval.
State (string) --
The current state for the fleet.
VpcConfig (dict) --
The VPC configuration for the fleet.
SubnetIds (list) --
The list of subnets to which a network interface is established from the fleet instance.
(string) --
CreatedTime (datetime) --
The time at which the fleet was created.
FleetErrors (list) --
The list of fleet errors is appended to this list.
(dict) --
The details of the fleet error.
ErrorCode (string) --
The error code for the fleet error.
ErrorMessage (string) --
The error message generated when the fleet has errors.
EnableDefaultInternetAccess (boolean) --
Default Internet access from the fleet. True (Enabled), False (Disabled).
NextToken (string) --
The pagination token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.
{'Images': {'ImageBuilderSupported': 'boolean'}}
Describes the images. If a list of names is not provided, all images in your account are returned. This operation does not return a paginated result.
See also: AWS API Documentation
Request Syntax
client.describe_images( Names=[ 'string', ] )
list
A specific list of images to describe.
(string) --
dict
Response Syntax
{ 'Images': [ { 'Name': 'string', 'Arn': 'string', 'BaseImageArn': 'string', 'DisplayName': 'string', 'State': 'PENDING'|'AVAILABLE'|'FAILED'|'DELETING', 'Visibility': 'PUBLIC'|'PRIVATE', 'ImageBuilderSupported': True|False, 'Platform': 'WINDOWS', 'Description': 'string', 'StateChangeReason': { 'Code': 'INTERNAL_ERROR'|'IMAGE_BUILDER_NOT_AVAILABLE', 'Message': 'string' }, 'Applications': [ { 'Name': 'string', 'DisplayName': 'string', 'IconURL': 'string', 'LaunchPath': 'string', 'LaunchParameters': 'string', 'Enabled': True|False, 'Metadata': { 'string': 'string' } }, ], 'CreatedTime': datetime(2015, 1, 1) }, ] }
Response Structure
(dict) --
Images (list) --
The list of images.
(dict) --
New streaming instances are booted from images. The image stores the application catalog and is connected to fleets.
Name (string) --
The unique identifier for the image.
Arn (string) --
The ARN for the image.
BaseImageArn (string) --
The source image ARN from which this image was created.
DisplayName (string) --
The display name for the image.
State (string) --
The image starts in the PENDING state, and then moves to AVAILABLE if image creation succeeds and FAILED if image creation has failed.
Visibility (string) --
The visibility of an image to the user; images can be public or private.
ImageBuilderSupported (boolean) --
Indicates whether an image builder can be launched from this image.
Platform (string) --
The operating system platform of the image.
Description (string) --
A meaningful description for the image.
StateChangeReason (dict) --
The reason why the last state change occurred.
Code (string) --
The state change reason code of the image.
Message (string) --
The state change reason message to the end user.
Applications (list) --
The applications associated with an image.
(dict) --
An entry for a single application in the application catalog.
Name (string) --
The unique identifier for the application.
DisplayName (string) --
The name of the application shown to the end users.
IconURL (string) --
The URL for the application icon. This URL may be time-limited.
LaunchPath (string) --
The path to the application executable in the instance.
LaunchParameters (string) --
A list of arguments that are passed to the application at launch.
Enabled (boolean) --
An application can be disabled after image creation if there is a problem.
Metadata (dict) --
Additional attributes that describes the application.
(string) --
(string) --
CreatedTime (datetime) --
The timestamp when the image was created.
{'AuthenticationType': 'API | SAML'}Response
{'Sessions': {'AuthenticationType': 'API | SAML'}}
Describes the streaming sessions for a stack and a fleet. If a user ID is provided, this operation returns streaming sessions for only that user. Pass this value for the nextToken parameter in a subsequent call to this operation to retrieve the next set of items. If an authentication type is not provided, the operation defaults to users authenticated using a streaming url.
See also: AWS API Documentation
Request Syntax
client.describe_sessions( StackName='string', FleetName='string', UserId='string', NextToken='string', Limit=123, AuthenticationType='API'|'SAML' )
string
[REQUIRED]
The name of the stack for which to list sessions.
string
[REQUIRED]
The name of the fleet for which to list sessions.
string
The user for whom to list sessions. Use null to describe all the sessions for the stack and fleet.
string
The pagination token to use to retrieve the next page of results for this operation. If this value is null, it retrieves the first page.
integer
The size of each page of results. The default value is 20 and the maximum supported value is 50.
string
The authentication method of the user. It can be API for a user authenticated using a streaming url or SAML for a SAML federated user. If an authentication type is not provided, the operation defaults to users authenticated using a streaming url.
dict
Response Syntax
{ 'Sessions': [ { 'Id': 'string', 'UserId': 'string', 'StackName': 'string', 'FleetName': 'string', 'State': 'ACTIVE'|'PENDING'|'EXPIRED', 'AuthenticationType': 'API'|'SAML' }, ], 'NextToken': 'string' }
Response Structure
(dict) --
Sessions (list) --
The list of streaming sessions.
(dict) --
Contains the parameters for a streaming session.
Id (string) --
The unique ID for a streaming session.
UserId (string) --
The identifier of the user for whom the session was created.
StackName (string) --
The name of the stack for which the streaming session was created.
FleetName (string) --
The name of the fleet for which the streaming session was created.
State (string) --
The current state of the streaming session.
AuthenticationType (string) --
The authentication method of the user for whom the session was created. It can be API for a user authenticated using a streaming url or SAML for a SAML federated user.
NextToken (string) --
The pagination token to use to retrieve the next page of results for this operation. If there are no more pages, this value is null.
{'EnableDefaultInternetAccess': 'boolean'}Response
{'Fleet': {'EnableDefaultInternetAccess': 'boolean'}}
Updates an existing fleet. All the attributes except the fleet name can be updated in the STOPPED state. When a fleet is in the RUNNING state, only DisplayName and ComputeCapacity can be updated. A fleet cannot be updated in a status of STARTING or STOPPING .
See also: AWS API Documentation
Request Syntax
client.update_fleet( ImageName='string', Name='string', InstanceType='string', ComputeCapacity={ 'DesiredInstances': 123 }, VpcConfig={ 'SubnetIds': [ 'string', ] }, MaxUserDurationInSeconds=123, DisconnectTimeoutInSeconds=123, DeleteVpcConfig=True|False, Description='string', DisplayName='string', EnableDefaultInternetAccess=True|False )
string
The image name from which a fleet is created.
string
[REQUIRED]
The name of the fleet.
string
The instance type of compute resources for the fleet. Fleet instances are launched from this instance type.
dict
The parameters for the capacity allocated to the fleet.
DesiredInstances (integer) -- [REQUIRED]
The desired number of streaming instances.
dict
The VPC configuration for the fleet.
SubnetIds (list) -- [REQUIRED]
The list of subnets to which a network interface is established from the fleet instance.
(string) --
integer
The maximum time during which a streaming session can run.
integer
The time after disconnection when a session is considered to have ended. When the user reconnects after a disconnection, the user is connected to the same instance within this time interval.
boolean
Delete the VPC association for the specified fleet.
string
The description displayed to end users on the AppStream 2.0 portal.
string
The name displayed to end users on the AppStream 2.0 portal.
boolean
Enable/Disable default Internet access from fleet.
dict
Response Syntax
{ 'Fleet': { 'Arn': 'string', 'Name': 'string', 'DisplayName': 'string', 'Description': 'string', 'ImageName': 'string', 'InstanceType': 'string', 'ComputeCapacityStatus': { 'Desired': 123, 'Running': 123, 'InUse': 123, 'Available': 123 }, 'MaxUserDurationInSeconds': 123, 'DisconnectTimeoutInSeconds': 123, 'State': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED', 'VpcConfig': { 'SubnetIds': [ 'string', ] }, 'CreatedTime': datetime(2015, 1, 1), 'FleetErrors': [ { 'ErrorCode': 'IAM_SERVICE_ROLE_MISSING_ENI_DESCRIBE_ACTION'|'IAM_SERVICE_ROLE_MISSING_ENI_CREATE_ACTION'|'IAM_SERVICE_ROLE_MISSING_ENI_DELETE_ACTION'|'NETWORK_INTERFACE_LIMIT_EXCEEDED'|'INTERNAL_SERVICE_ERROR'|'IAM_SERVICE_ROLE_IS_MISSING'|'SUBNET_HAS_INSUFFICIENT_IP_ADDRESSES'|'IAM_SERVICE_ROLE_MISSING_DESCRIBE_SUBNET_ACTION'|'SUBNET_NOT_FOUND'|'IMAGE_NOT_FOUND'|'INVALID_SUBNET_CONFIGURATION', 'ErrorMessage': 'string' }, ], 'EnableDefaultInternetAccess': True|False } }
Response Structure
(dict) --
Fleet (dict) --
A list of fleet details.
Arn (string) --
The ARN for the fleet.
Name (string) --
The name of the fleet.
DisplayName (string) --
The name displayed to end users on the AppStream 2.0 portal.
Description (string) --
The description displayed to end users on the AppStream 2.0 portal.
ImageName (string) --
The image used by the fleet.
InstanceType (string) --
The instance type of compute resources for the fleet. The fleet instances are launched from this instance type.
ComputeCapacityStatus (dict) --
The capacity information for the fleet.
Desired (integer) --
The desired number of streaming instances.
Running (integer) --
The total number of simultaneous streaming instances that are running.
InUse (integer) --
The number of instances that are being used for streaming.
Available (integer) --
The number of currently available instances that can be used to stream sessions.
MaxUserDurationInSeconds (integer) --
The maximum time during which a streaming session can run.
DisconnectTimeoutInSeconds (integer) --
The time after disconnection when a session is considered to have ended. When a user reconnects after a disconnection, the user is connected to the same session and instance within this time interval.
State (string) --
The current state for the fleet.
VpcConfig (dict) --
The VPC configuration for the fleet.
SubnetIds (list) --
The list of subnets to which a network interface is established from the fleet instance.
(string) --
CreatedTime (datetime) --
The time at which the fleet was created.
FleetErrors (list) --
The list of fleet errors is appended to this list.
(dict) --
The details of the fleet error.
ErrorCode (string) --
The error code for the fleet error.
ErrorMessage (string) --
The error message generated when the fleet has errors.
EnableDefaultInternetAccess (boolean) --
Default Internet access from the fleet. True (Enabled), False (Disabled).