SDK for PHP 3.x

Client: Aws\Cloud9\Cloud9Client
Service ID: cloud9
Version: 2017-09-23

This page describes the parameters and results for the operations of the AWS Cloud9 (2017-09-23), and shows how to use the Aws\Cloud9\Cloud9Client object to call the described operations. This documentation is specific to the 2017-09-23 API version of the service.

Operation Summary

Each of the following operations can be created from a client using $client->getCommand('CommandName'), where "CommandName" is the name of one of the following operations. Note: a command is a value that encapsulates an operation and the parameters used to create an HTTP request.

You can also create and send a command immediately using the magic methods available on a client object: $client->commandName(/* parameters */). You can send the command asynchronously (returning a promise) by appending the word "Async" to the operation name: $client->commandNameAsync(/* parameters */).

CreateEnvironmentEC2 ( array $params = [] )
Creates an Cloud9 development environment, launches an Amazon Elastic Compute Cloud (Amazon EC2) instance, and then connects from the instance to the environment.
CreateEnvironmentMembership ( array $params = [] )
Adds an environment member to an Cloud9 development environment.
DeleteEnvironment ( array $params = [] )
Deletes an Cloud9 development environment.
DeleteEnvironmentMembership ( array $params = [] )
Deletes an environment member from a development environment.
DescribeEnvironmentMemberships ( array $params = [] )
Gets information about environment members for an Cloud9 development environment.
DescribeEnvironmentStatus ( array $params = [] )
Gets status information for an Cloud9 development environment.
DescribeEnvironments ( array $params = [] )
Gets information about Cloud9 development environments.
ListEnvironments ( array $params = [] )
Gets a list of Cloud9 development environment identifiers.
ListTagsForResource ( array $params = [] )
Gets a list of the tags associated with an Cloud9 development environment.
TagResource ( array $params = [] )
Adds tags to an Cloud9 development environment.
UntagResource ( array $params = [] )
Removes tags from an Cloud9 development environment.
UpdateEnvironment ( array $params = [] )
Changes the settings of an existing Cloud9 development environment.
UpdateEnvironmentMembership ( array $params = [] )
Changes the settings of an existing environment member for an Cloud9 development environment.

Paginators

Paginators handle automatically iterating over paginated API results. Paginators are associated with specific API operations, and they accept the parameters that the corresponding API operation accepts. You can get a paginator from a client class using getPaginator($paginatorName, $operationParameters). This client supports the following paginators:

DescribeEnvironmentMemberships
ListEnvironments

Operations

CreateEnvironmentEC2

$result = $client->createEnvironmentEC2([/* ... */]);
$promise = $client->createEnvironmentEC2Async([/* ... */]);

Creates an Cloud9 development environment, launches an Amazon Elastic Compute Cloud (Amazon EC2) instance, and then connects from the instance to the environment.

Parameter Syntax

$result = $client->createEnvironmentEC2([
    'automaticStopTimeMinutes' => <integer>,
    'clientRequestToken' => '<string>',
    'connectionType' => 'CONNECT_SSH|CONNECT_SSM',
    'description' => '<string>',
    'dryRun' => true || false,
    'imageId' => '<string>', // REQUIRED
    'instanceType' => '<string>', // REQUIRED
    'name' => '<string>', // REQUIRED
    'ownerArn' => '<string>',
    'subnetId' => '<string>',
    'tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
automaticStopTimeMinutes
Type: int

The number of minutes until the running instance is shut down after the environment has last been used.

clientRequestToken
Type: string

A unique, case-sensitive string that helps Cloud9 to ensure this operation completes no more than one time.

For more information, see Client Tokens in the Amazon EC2 API Reference.

connectionType
Type: string

The connection type used for connecting to an Amazon EC2 environment. Valid values are CONNECT_SSH (default) and CONNECT_SSM (connected through Amazon EC2 Systems Manager).

For more information, see Accessing no-ingress EC2 instances with Amazon EC2 Systems Manager in the Cloud9 User Guide.

description
Type: string

The description of the environment to create.

dryRun
Type: boolean

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

imageId
Required: Yes
Type: string

The identifier for the Amazon Machine Image (AMI) that's used to create the EC2 instance. To choose an AMI for the instance, you must specify a valid AMI alias or a valid Amazon EC2 Systems Manager (SSM) path.

From December 04, 2023, you will be required to include the imageId parameter for the CreateEnvironmentEC2 action. This change will be reflected across all direct methods of communicating with the API, such as Amazon Web Services SDK, Amazon Web Services CLI and Amazon Web Services CloudFormation. This change will only affect direct API consumers, and not Cloud9 console users.

We recommend using Amazon Linux 2023 as the AMI to create your environment as it is fully supported.

Since Ubuntu 18.04 has ended standard support as of May 31, 2023, we recommend you choose Ubuntu 22.04.

AMI aliases

  • Amazon Linux 2: amazonlinux-2-x86_64

  • Amazon Linux 2023 (recommended): amazonlinux-2023-x86_64

  • Ubuntu 18.04: ubuntu-18.04-x86_64

  • Ubuntu 22.04: ubuntu-22.04-x86_64

SSM paths

  • Amazon Linux 2: resolve:ssm:/aws/service/cloud9/amis/amazonlinux-2-x86_64

  • Amazon Linux 2023 (recommended): resolve:ssm:/aws/service/cloud9/amis/amazonlinux-2023-x86_64

  • Ubuntu 18.04: resolve:ssm:/aws/service/cloud9/amis/ubuntu-18.04-x86_64

  • Ubuntu 22.04: resolve:ssm:/aws/service/cloud9/amis/ubuntu-22.04-x86_64

instanceType
Required: Yes
Type: string

The type of instance to connect to the environment (for example, t2.micro).

name
Required: Yes
Type: string

The name of the environment to create.

This name is visible to other IAM users in the same Amazon Web Services account.

ownerArn
Type: string

The Amazon Resource Name (ARN) of the environment owner. This ARN can be the ARN of any IAM principal. If this value is not specified, the ARN defaults to this environment's creator.

subnetId
Type: string

The ID of the subnet in Amazon VPC that Cloud9 will use to communicate with the Amazon EC2 instance.

tags
Type: Array of Tag structures

An array of key-value pairs that will be associated with the new Cloud9 development environment.

Result Syntax

[
    'environmentId' => '<string>',
]

Result Details

Members
environmentId
Type: string

The ID of the environment that was created.

Errors

BadRequestException:

The target request is invalid.

ConflictException:

A conflict occurred.

NotFoundException:

The target resource cannot be found.

ForbiddenException:

An access permissions issue occurred.

TooManyRequestsException:

Too many service requests were made over the given time period.

LimitExceededException:

A service limit was exceeded.

InternalServerErrorException:

An internal server error occurred.

Examples

Example 1: CreateEnvironmentEC2

$result = $client->createEnvironmentEC2([
    'name' => 'my-demo-environment',
    'automaticStopTimeMinutes' => 60,
    'description' => 'This is my demonstration environment.',
    'imageId' => 'amazonlinux-2023-x86_64',
    'instanceType' => 't2.micro',
    'ownerArn' => 'arn:aws:iam::123456789012:user/MyDemoUser',
    'subnetId' => 'subnet-6300cd1b',
]);

Result syntax:

[
    'environmentId' => '8d9967e2f0624182b74e7690ad69ebEX',
]

CreateEnvironmentMembership

$result = $client->createEnvironmentMembership([/* ... */]);
$promise = $client->createEnvironmentMembershipAsync([/* ... */]);

Adds an environment member to an Cloud9 development environment.

Parameter Syntax

$result = $client->createEnvironmentMembership([
    'environmentId' => '<string>', // REQUIRED
    'permissions' => 'read-write|read-only', // REQUIRED
    'userArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
environmentId
Required: Yes
Type: string

The ID of the environment that contains the environment member you want to add.

permissions
Required: Yes
Type: string

The type of environment member permissions you want to associate with this environment member. Available values include:

  • read-only: Has read-only access to the environment.

  • read-write: Has read-write access to the environment.

userArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the environment member you want to add.

Result Syntax

[
    'membership' => [
        'environmentId' => '<string>',
        'lastAccess' => <DateTime>,
        'permissions' => 'owner|read-write|read-only',
        'userArn' => '<string>',
        'userId' => '<string>',
    ],
]

Result Details

Members
membership
Required: Yes
Type: EnvironmentMember structure

Information about the environment member that was added.

Errors

BadRequestException:

The target request is invalid.

ConflictException:

A conflict occurred.

NotFoundException:

The target resource cannot be found.

ForbiddenException:

An access permissions issue occurred.

TooManyRequestsException:

Too many service requests were made over the given time period.

LimitExceededException:

A service limit was exceeded.

InternalServerErrorException:

An internal server error occurred.

Examples

Example 1: CreateEnvironmentMembership

$result = $client->createEnvironmentMembership([
    'environmentId' => '8d9967e2f0624182b74e7690ad69ebEX',
    'permissions' => 'read-write',
    'userArn' => 'arn:aws:iam::123456789012:user/AnotherDemoUser',
]);

Result syntax:

[
    'membership' => [
        'environmentId' => '8d9967e2f0624182b74e7690ad69ebEX',
        'permissions' => 'read-write',
        'userArn' => 'arn:aws:iam::123456789012:user/AnotherDemoUser',
        'userId' => 'AIDAJ3BA6O2FMJWCWXHEX',
    ],
]

DeleteEnvironment

$result = $client->deleteEnvironment([/* ... */]);
$promise = $client->deleteEnvironmentAsync([/* ... */]);

Deletes an Cloud9 development environment. If an Amazon EC2 instance is connected to the environment, also terminates the instance.

Parameter Syntax

$result = $client->deleteEnvironment([
    'environmentId' => '<string>', // REQUIRED
]);

Parameter Details

Members
environmentId
Required: Yes
Type: string

The ID of the environment to delete.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

BadRequestException:

The target request is invalid.

ConflictException:

A conflict occurred.

NotFoundException:

The target resource cannot be found.

ForbiddenException:

An access permissions issue occurred.

TooManyRequestsException:

Too many service requests were made over the given time period.

LimitExceededException:

A service limit was exceeded.

InternalServerErrorException:

An internal server error occurred.

Examples

Example 1: DeleteEnvironment

$result = $client->deleteEnvironment([
    'environmentId' => '8d9967e2f0624182b74e7690ad69ebEX',
]);

Result syntax:

[
]

DeleteEnvironmentMembership

$result = $client->deleteEnvironmentMembership([/* ... */]);
$promise = $client->deleteEnvironmentMembershipAsync([/* ... */]);

Deletes an environment member from a development environment.

Parameter Syntax

$result = $client->deleteEnvironmentMembership([
    'environmentId' => '<string>', // REQUIRED
    'userArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
environmentId
Required: Yes
Type: string

The ID of the environment to delete the environment member from.

userArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the environment member to delete from the environment.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

BadRequestException:

The target request is invalid.

ConflictException:

A conflict occurred.

NotFoundException:

The target resource cannot be found.

ForbiddenException:

An access permissions issue occurred.

TooManyRequestsException:

Too many service requests were made over the given time period.

LimitExceededException:

A service limit was exceeded.

InternalServerErrorException:

An internal server error occurred.

Examples

Example 1: DeleteEnvironmentMembership

$result = $client->deleteEnvironmentMembership([
    'environmentId' => '8d9967e2f0624182b74e7690ad69ebEX',
    'userArn' => 'arn:aws:iam::123456789012:user/AnotherDemoUser',
]);

Result syntax:

[
]

DescribeEnvironmentMemberships

$result = $client->describeEnvironmentMemberships([/* ... */]);
$promise = $client->describeEnvironmentMembershipsAsync([/* ... */]);

Gets information about environment members for an Cloud9 development environment.

Parameter Syntax

$result = $client->describeEnvironmentMemberships([
    'environmentId' => '<string>',
    'maxResults' => <integer>,
    'nextToken' => '<string>',
    'permissions' => ['<string>', ...],
    'userArn' => '<string>',
]);

Parameter Details

Members
environmentId
Type: string

The ID of the environment to get environment member information about.

maxResults
Type: int

The maximum number of environment members to get information about.

nextToken
Type: string

During a previous call, if there are more than 25 items in the list, only the first 25 items are returned, along with a unique string called a next token. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned.

permissions
Type: Array of strings

The type of environment member permissions to get information about. Available values include:

  • owner: Owns the environment.

  • read-only: Has read-only access to the environment.

  • read-write: Has read-write access to the environment.

If no value is specified, information about all environment members are returned.

userArn
Type: string

The Amazon Resource Name (ARN) of an individual environment member to get information about. If no value is specified, information about all environment members are returned.

Result Syntax

[
    'memberships' => [
        [
            'environmentId' => '<string>',
            'lastAccess' => <DateTime>,
            'permissions' => 'owner|read-write|read-only',
            'userArn' => '<string>',
            'userId' => '<string>',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
memberships
Type: Array of EnvironmentMember structures

Information about the environment members for the environment.

nextToken
Type: string

If there are more than 25 items in the list, only the first 25 items are returned, along with a unique string called a next token. To get the next batch of items in the list, call this operation again, adding the next token to the call.

Errors

BadRequestException:

The target request is invalid.

ConflictException:

A conflict occurred.

NotFoundException:

The target resource cannot be found.

ForbiddenException:

An access permissions issue occurred.

TooManyRequestsException:

Too many service requests were made over the given time period.

LimitExceededException:

A service limit was exceeded.

InternalServerErrorException:

An internal server error occurred.

Examples

Example 1: DescribeEnvironmentMemberships1

The following example gets information about all of the environment members for the specified development environment.

$result = $client->describeEnvironmentMemberships([
    'environmentId' => '8d9967e2f0624182b74e7690ad69ebEX',
]);

Result syntax:

[
    'memberships' => [
        [
            'environmentId' => '8d9967e2f0624182b74e7690ad69ebEX',
            'permissions' => 'read-write',
            'userArn' => 'arn:aws:iam::123456789012:user/AnotherDemoUser',
            'userId' => 'AIDAJ3BA6O2FMJWCWXHEX',
        ],
        [
            'environmentId' => '8d9967e2f0624182b74e7690ad69ebEX',
            'permissions' => 'owner',
            'userArn' => 'arn:aws:iam::123456789012:user/MyDemoUser',
            'userId' => 'AIDAJNUEDQAQWFELJDLEX',
        ],
    ],
]
Example 2: DescribeEnvironmentMemberships2

The following example gets information about the owner of the specified development environment.

$result = $client->describeEnvironmentMemberships([
    'environmentId' => '8d9967e2f0624182b74e7690ad69ebEX',
    'permissions' => [
        'owner',
    ],
]);

Result syntax:

[
    'memberships' => [
        [
            'environmentId' => '8d9967e2f0624182b74e7690ad69ebEX',
            'permissions' => 'owner',
            'userArn' => 'arn:aws:iam::123456789012:user/MyDemoUser',
            'userId' => 'AIDAJNUEDQAQWFELJDLEX',
        ],
    ],
]
Example 3: DescribeEnvironmentMemberships3

The following example gets development environment membership information for the specified user.

$result = $client->describeEnvironmentMemberships([
    'userArn' => 'arn:aws:iam::123456789012:user/MyDemoUser',
]);

Result syntax:

[
    'memberships' => [
        [
            'environmentId' => '10a75714bd494714929e7f5ec4125aEX',
            'lastAccess' => ,
            'permissions' => 'owner',
            'userArn' => 'arn:aws:iam::123456789012:user/MyDemoUser',
            'userId' => 'AIDAJNUEDQAQWFELJDLEX',
        ],
        [
            'environmentId' => '12bfc3cd537f41cb9776f8af5525c9EX',
            'lastAccess' => ,
            'permissions' => 'owner',
            'userArn' => 'arn:aws:iam::123456789012:user/MyDemoUser',
            'userId' => 'AIDAJNUEDQAQWFELJDLEX',
        ],
    ],
]

DescribeEnvironmentStatus

$result = $client->describeEnvironmentStatus([/* ... */]);
$promise = $client->describeEnvironmentStatusAsync([/* ... */]);

Gets status information for an Cloud9 development environment.

Parameter Syntax

$result = $client->describeEnvironmentStatus([
    'environmentId' => '<string>', // REQUIRED
]);

Parameter Details

Members
environmentId
Required: Yes
Type: string

The ID of the environment to get status information about.

Result Syntax

[
    'message' => '<string>',
    'status' => 'error|creating|connecting|ready|stopping|stopped|deleting',
]

Result Details

Members
message
Required: Yes
Type: string

Any informational message about the status of the environment.

status
Required: Yes
Type: string

The status of the environment. Available values include:

  • connecting: The environment is connecting.

  • creating: The environment is being created.

  • deleting: The environment is being deleted.

  • error: The environment is in an error state.

  • ready: The environment is ready.

  • stopped: The environment is stopped.

  • stopping: The environment is stopping.

Errors

BadRequestException:

The target request is invalid.

ConflictException:

A conflict occurred.

NotFoundException:

The target resource cannot be found.

ForbiddenException:

An access permissions issue occurred.

TooManyRequestsException:

Too many service requests were made over the given time period.

LimitExceededException:

A service limit was exceeded.

InternalServerErrorException:

An internal server error occurred.

Examples

Example 1: DescribeEnvironmentStatus

$result = $client->describeEnvironmentStatus([
    'environmentId' => '8d9967e2f0624182b74e7690ad69ebEX',
]);

Result syntax:

[
    'message' => 'Environment is ready to use',
    'status' => 'ready',
]

DescribeEnvironments

$result = $client->describeEnvironments([/* ... */]);
$promise = $client->describeEnvironmentsAsync([/* ... */]);

Gets information about Cloud9 development environments.

Parameter Syntax

$result = $client->describeEnvironments([
    'environmentIds' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
environmentIds
Required: Yes
Type: Array of strings

The IDs of individual environments to get information about.

Result Syntax

[
    'environments' => [
        [
            'arn' => '<string>',
            'connectionType' => 'CONNECT_SSH|CONNECT_SSM',
            'description' => '<string>',
            'id' => '<string>',
            'lifecycle' => [
                'failureResource' => '<string>',
                'reason' => '<string>',
                'status' => 'CREATING|CREATED|CREATE_FAILED|DELETING|DELETE_FAILED',
            ],
            'managedCredentialsStatus' => 'ENABLED_ON_CREATE|ENABLED_BY_OWNER|DISABLED_BY_DEFAULT|DISABLED_BY_OWNER|DISABLED_BY_COLLABORATOR|PENDING_REMOVAL_BY_COLLABORATOR|PENDING_START_REMOVAL_BY_COLLABORATOR|PENDING_REMOVAL_BY_OWNER|PENDING_START_REMOVAL_BY_OWNER|FAILED_REMOVAL_BY_COLLABORATOR|FAILED_REMOVAL_BY_OWNER',
            'name' => '<string>',
            'ownerArn' => '<string>',
            'type' => 'ssh|ec2',
        ],
        // ...
    ],
]

Result Details

Members
environments
Type: Array of Environment structures

Information about the environments that are returned.

Errors

BadRequestException:

The target request is invalid.

ConflictException:

A conflict occurred.

NotFoundException:

The target resource cannot be found.

ForbiddenException:

An access permissions issue occurred.

TooManyRequestsException:

Too many service requests were made over the given time period.

LimitExceededException:

A service limit was exceeded.

InternalServerErrorException:

An internal server error occurred.

Examples

Example 1: DescribeEnvironments

$result = $client->describeEnvironments([
    'environmentIds' => [
        '8d9967e2f0624182b74e7690ad69ebEX',
        '349c86d4579e4e7298d500ff57a6b2EX',
    ],
]);

Result syntax:

[
    'environments' => [
        [
            'name' => 'my-demo-environment',
            'type' => 'ec2',
            'arn' => 'arn:aws:cloud9:us-east-2:123456789012:environment:8d9967e2f0624182b74e7690ad69ebEX',
            'description' => 'This is my demonstration environment.',
            'id' => '8d9967e2f0624182b74e7690ad69ebEX',
            'lifecycle' => [
                'status' => 'CREATED',
            ],
            'ownerArn' => 'arn:aws:iam::123456789012:user/MyDemoUser',
        ],
        [
            'name' => 'another-demo-environment',
            'type' => 'ssh',
            'arn' => 'arn:aws:cloud9:us-east-2:123456789012:environment:349c86d4579e4e7298d500ff57a6b2EX',
            'description' => '',
            'id' => '349c86d4579e4e7298d500ff57a6b2EX',
            'lifecycle' => [
                'status' => 'CREATED',
            ],
            'ownerArn' => 'arn:aws:sts::123456789012:assumed-role/AnotherDemoUser/AnotherDemoUser',
        ],
    ],
]

ListEnvironments

$result = $client->listEnvironments([/* ... */]);
$promise = $client->listEnvironmentsAsync([/* ... */]);

Gets a list of Cloud9 development environment identifiers.

Parameter Syntax

$result = $client->listEnvironments([
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
maxResults
Type: int

The maximum number of environments to get identifiers for.

nextToken
Type: string

During a previous call, if there are more than 25 items in the list, only the first 25 items are returned, along with a unique string called a next token. To get the next batch of items in the list, call this operation again, adding the next token to the call. To get all of the items in the list, keep calling this operation with each subsequent next token that is returned, until no more next tokens are returned.

Result Syntax

[
    'environmentIds' => ['<string>', ...],
    'nextToken' => '<string>',
]

Result Details

Members
environmentIds
Type: Array of strings

The list of environment identifiers.

nextToken
Type: string

If there are more than 25 items in the list, only the first 25 items are returned, along with a unique string called a next token. To get the next batch of items in the list, call this operation again, adding the next token to the call.

Errors

BadRequestException:

The target request is invalid.

ConflictException:

A conflict occurred.

NotFoundException:

The target resource cannot be found.

ForbiddenException:

An access permissions issue occurred.

TooManyRequestsException:

Too many service requests were made over the given time period.

LimitExceededException:

A service limit was exceeded.

InternalServerErrorException:

An internal server error occurred.

Examples

Example 1: ListEnvironments

$result = $client->listEnvironments([
]);

Result syntax:

[
    'environmentIds' => [
        '349c86d4579e4e7298d500ff57a6b2EX',
        '45a3da47af0840f2b0c0824f5ee232EX',
    ],
]

ListTagsForResource

$result = $client->listTagsForResource([/* ... */]);
$promise = $client->listTagsForResourceAsync([/* ... */]);

Gets a list of the tags associated with an Cloud9 development environment.

Parameter Syntax

$result = $client->listTagsForResource([
    'ResourceARN' => '<string>', // REQUIRED
]);

Parameter Details

Members
ResourceARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the Cloud9 development environment to get the tags for.

Result Syntax

[
    'Tags' => [
        [
            'Key' => '<string>',
            'Value' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
Tags
Type: Array of Tag structures

The list of tags associated with the Cloud9 development environment.

Errors

NotFoundException:

The target resource cannot be found.

InternalServerErrorException:

An internal server error occurred.

BadRequestException:

The target request is invalid.

TagResource

$result = $client->tagResource([/* ... */]);
$promise = $client->tagResourceAsync([/* ... */]);

Adds tags to an Cloud9 development environment.

Tags that you add to an Cloud9 environment by using this method will NOT be automatically propagated to underlying resources.

Parameter Syntax

$result = $client->tagResource([
    'ResourceARN' => '<string>', // REQUIRED
    'Tags' => [ // REQUIRED
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
ResourceARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the Cloud9 development environment to add tags to.

Tags
Required: Yes
Type: Array of Tag structures

The list of tags to add to the given Cloud9 development environment.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

NotFoundException:

The target resource cannot be found.

InternalServerErrorException:

An internal server error occurred.

BadRequestException:

The target request is invalid.

ConcurrentAccessException:

A concurrent access issue occurred.

UntagResource

$result = $client->untagResource([/* ... */]);
$promise = $client->untagResourceAsync([/* ... */]);

Removes tags from an Cloud9 development environment.

Parameter Syntax

$result = $client->untagResource([
    'ResourceARN' => '<string>', // REQUIRED
    'TagKeys' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
ResourceARN
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the Cloud9 development environment to remove tags from.

TagKeys
Required: Yes
Type: Array of strings

The tag names of the tags to remove from the given Cloud9 development environment.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

NotFoundException:

The target resource cannot be found.

InternalServerErrorException:

An internal server error occurred.

BadRequestException:

The target request is invalid.

ConcurrentAccessException:

A concurrent access issue occurred.

UpdateEnvironment

$result = $client->updateEnvironment([/* ... */]);
$promise = $client->updateEnvironmentAsync([/* ... */]);

Changes the settings of an existing Cloud9 development environment.

Parameter Syntax

$result = $client->updateEnvironment([
    'description' => '<string>',
    'environmentId' => '<string>', // REQUIRED
    'managedCredentialsAction' => 'ENABLE|DISABLE',
    'name' => '<string>',
]);

Parameter Details

Members
description
Type: string

Any new or replacement description for the environment.

environmentId
Required: Yes
Type: string

The ID of the environment to change settings.

managedCredentialsAction
Type: string

Allows the environment owner to turn on or turn off the Amazon Web Services managed temporary credentials for an Cloud9 environment by using one of the following values:

  • ENABLE

  • DISABLE

Only the environment owner can change the status of managed temporary credentials. An AccessDeniedException is thrown if an attempt to turn on or turn off managed temporary credentials is made by an account that's not the environment owner.

name
Type: string

A replacement name for the environment.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

BadRequestException:

The target request is invalid.

ConflictException:

A conflict occurred.

NotFoundException:

The target resource cannot be found.

ForbiddenException:

An access permissions issue occurred.

TooManyRequestsException:

Too many service requests were made over the given time period.

LimitExceededException:

A service limit was exceeded.

InternalServerErrorException:

An internal server error occurred.

Examples

Example 1: UpdateEnvironment

$result = $client->updateEnvironment([
    'name' => 'my-changed-demo-environment',
    'description' => 'This is my changed demonstration environment.',
    'environmentId' => '8d9967e2f0624182b74e7690ad69ebEX',
]);

Result syntax:

[
]

UpdateEnvironmentMembership

$result = $client->updateEnvironmentMembership([/* ... */]);
$promise = $client->updateEnvironmentMembershipAsync([/* ... */]);

Changes the settings of an existing environment member for an Cloud9 development environment.

Parameter Syntax

$result = $client->updateEnvironmentMembership([
    'environmentId' => '<string>', // REQUIRED
    'permissions' => 'read-write|read-only', // REQUIRED
    'userArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
environmentId
Required: Yes
Type: string

The ID of the environment for the environment member whose settings you want to change.

permissions
Required: Yes
Type: string

The replacement type of environment member permissions you want to associate with this environment member. Available values include:

  • read-only: Has read-only access to the environment.

  • read-write: Has read-write access to the environment.

userArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the environment member whose settings you want to change.

Result Syntax

[
    'membership' => [
        'environmentId' => '<string>',
        'lastAccess' => <DateTime>,
        'permissions' => 'owner|read-write|read-only',
        'userArn' => '<string>',
        'userId' => '<string>',
    ],
]

Result Details

Members
membership
Type: EnvironmentMember structure

Information about the environment member whose settings were changed.

Errors

BadRequestException:

The target request is invalid.

ConflictException:

A conflict occurred.

NotFoundException:

The target resource cannot be found.

ForbiddenException:

An access permissions issue occurred.

TooManyRequestsException:

Too many service requests were made over the given time period.

LimitExceededException:

A service limit was exceeded.

InternalServerErrorException:

An internal server error occurred.

Examples

Example 1: UpdateEnvironmentMembership

$result = $client->updateEnvironmentMembership([
    'environmentId' => '8d9967e2f0624182b74e7690ad69ebEX',
    'permissions' => 'read-only',
    'userArn' => 'arn:aws:iam::123456789012:user/AnotherDemoUser',
]);

Result syntax:

[
    'membership' => [
        'environmentId' => '8d9967e2f0624182b74e7690ad69eb31',
        'permissions' => 'read-only',
        'userArn' => 'arn:aws:iam::123456789012:user/AnotherDemoUser',
        'userId' => 'AIDAJ3BA6O2FMJWCWXHEX',
    ],
]

Shapes

BadRequestException

Description

The target request is invalid.

Members

ConcurrentAccessException

Description

A concurrent access issue occurred.

Members

ConflictException

Description

A conflict occurred.

Members

Environment

Description

Information about an Cloud9 development environment.

Members
arn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the environment.

connectionType
Type: string

The connection type used for connecting to an Amazon EC2 environment. CONNECT_SSH is selected by default.

description
Type: string

The description for the environment.

id
Type: string

The ID of the environment.

lifecycle
Type: EnvironmentLifecycle structure

The state of the environment in its creation or deletion lifecycle.

managedCredentialsStatus
Type: string

Describes the status of Amazon Web Services managed temporary credentials for the Cloud9 environment. Available values are:

  • ENABLED_ON_CREATE

  • ENABLED_BY_OWNER

  • DISABLED_BY_DEFAULT

  • DISABLED_BY_OWNER

  • DISABLED_BY_COLLABORATOR

  • PENDING_REMOVAL_BY_COLLABORATOR

  • PENDING_REMOVAL_BY_OWNER

  • FAILED_REMOVAL_BY_COLLABORATOR

  • ENABLED_BY_OWNER

  • DISABLED_BY_DEFAULT

name
Type: string

The name of the environment.

ownerArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the environment owner.

type
Required: Yes
Type: string

The type of environment. Valid values include the following:

  • ec2: An Amazon Elastic Compute Cloud (Amazon EC2) instance connects to the environment.

  • ssh: Your own server connects to the environment.

EnvironmentLifecycle

Description

Information about the current creation or deletion lifecycle state of an Cloud9 development environment.

Members
failureResource
Type: string

If the environment failed to delete, the Amazon Resource Name (ARN) of the related Amazon Web Services resource.

reason
Type: string

Any informational message about the lifecycle state of the environment.

status
Type: string

The current creation or deletion lifecycle state of the environment.

  • CREATING: The environment is in the process of being created.

  • CREATED: The environment was successfully created.

  • CREATE_FAILED: The environment failed to be created.

  • DELETING: The environment is in the process of being deleted.

  • DELETE_FAILED: The environment failed to delete.

EnvironmentMember

Description

Information about an environment member for an Cloud9 development environment.

Members
environmentId
Required: Yes
Type: string

The ID of the environment for the environment member.

lastAccess
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time, expressed in epoch time format, when the environment member last opened the environment.

permissions
Required: Yes
Type: string

The type of environment member permissions associated with this environment member. Available values include:

  • owner: Owns the environment.

  • read-only: Has read-only access to the environment.

  • read-write: Has read-write access to the environment.

userArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the environment member.

userId
Required: Yes
Type: string

The user ID in Identity and Access Management (IAM) of the environment member.

ForbiddenException

Description

An access permissions issue occurred.

Members

InternalServerErrorException

Description

An internal server error occurred.

Members

LimitExceededException

Description

A service limit was exceeded.

Members

NotFoundException

Description

The target resource cannot be found.

Members

Tag

Description

Metadata that is associated with Amazon Web Services resources. In particular, a name-value pair that can be associated with an Cloud9 development environment. There are two types of tags: user tags and system tags. A user tag is created by the user. A system tag is automatically created by Amazon Web Services services. A system tag is prefixed with "aws:" and cannot be modified by the user.

Members
Key
Required: Yes
Type: string

The name part of a tag.

Value
Required: Yes
Type: string

The value part of a tag.

TooManyRequestsException

Description

Too many service requests were made over the given time period.

Members