canonical: https://jentic.com/apis/amazonaws.com/cloud9

# AWS Cloud9

AWS Cloud9 is a cloud-based IDE that runs in the browser and is backed by an Amazon EC2 instance or an SSH-accessible server. The API lets you create, list, describe, update, and delete Cloud9 development environments, manage environment members and their permission levels (READ_ONLY, READ_WRITE, OWNER), tag resources, and read environment status. It is most often used to provision short-lived, pre-configured development environments for new joiners, contractors, or workshop attendees without each person installing a full local toolchain.

## For AI agents

Provision Cloud9 cloud IDE environments on EC2, manage their members and permissions, and tag or delete them when no longer needed.

## Scope

Does not run code, build pipelines, or store source repositories. Use for managing Cloud9 IDE environments and their members only.

## Capabilities

- Create EC2-backed Cloud9 environments with a chosen instance type, subnet, and idle auto-stop window
- Add or remove environment members with READ_ONLY, READ_WRITE, or OWNER permissions
- List and describe Cloud9 environments owned by the account
- Get current status of an environment (creating, ready, error, deleting)
- Update environment settings such as name, description, and managed credentials
- Tag environments for cost allocation and team-level reporting
- Delete an environment and terminate its underlying EC2 instance

## Use cases

### Workshop Environment Provisioning

Spin up identical Cloud9 environments for every workshop attendee minutes before the session starts. Use CreateEnvironmentEC2 for each attendee with a small instance type and a 30-minute idle auto-stop, then CreateEnvironmentMembership to invite them as READ_WRITE members. After the session, DeleteEnvironment cleans up everything in one call so there is no leftover EC2 cost.

Example prompt: Loop attendee emails: CreateEnvironmentEC2 with name=workshop-2026-06-{i}, instanceType=t3.small, automaticStopTimeMinutes=30, then CreateEnvironmentMembership with userArn=<attendee> and permissions=READ_WRITE.

### New Joiner Onboarding

Give a new engineer a pre-configured browser-based IDE on day one without waiting for laptop setup. Create a Cloud9 environment from a template AMI that already has the team's repos cloned, language toolchains installed, and AWS credentials configured. Add the engineer as OWNER so they can manage their own environment.

Example prompt: CreateEnvironmentEC2 with name=onboarding-jane-doe, ownerArn=arn:aws:iam::...:user/jane.doe, instanceType=t3.medium, subnetId=subnet-xxx, then verify status reaches READY via DescribeEnvironmentStatus.

### Contractor Off-Boarding

When a contractor's engagement ends, revoke their Cloud9 access in seconds. List the environments they belong to, call DeleteEnvironmentMembership to remove them from each, or DeleteEnvironment for environments dedicated to their work. Pair with IAM access removal for full off-boarding.

Example prompt: List environments via DescribeEnvironmentMemberships filtered by userArn=<contractor>, then for each call DeleteEnvironmentMembership.

### Agent-Driven IDE Provisioning

Let an internal IT agent take a JIRA ticket like 'provision a Cloud9 environment for the new contractor on Project Atlas' and execute it end-to-end. The agent calls Cloud9 through Jentic to create the environment, add the member, and tag it for billing. AWS credentials never leave the vault and the same playbook runs across multiple AWS accounts in an organisation.

Example prompt: Search Jentic for 'create a Cloud9 EC2 environment', execute it with parameters from the ticket, then 'add a member to a Cloud9 environment' with permissions=READ_WRITE, and tag the environment with Project=Atlas and CostCenter=IT.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /#X-Amz-Target=AWSCloud9WorkspaceManagementService.CreateEnvironmentEC2 | Create an EC2-backed Cloud9 environment |
| POST | /#X-Amz-Target=AWSCloud9WorkspaceManagementService.DescribeEnvironments | Describe one or more environments |
| POST | /#X-Amz-Target=AWSCloud9WorkspaceManagementService.ListEnvironments | List environment IDs |
| POST | /#X-Amz-Target=AWSCloud9WorkspaceManagementService.UpdateEnvironment | Update environment name or description |
| POST | /#X-Amz-Target=AWSCloud9WorkspaceManagementService.DeleteEnvironment | Delete an environment and its EC2 instance |
| POST | /#X-Amz-Target=AWSCloud9WorkspaceManagementService.CreateEnvironmentMembership | Invite a user to an environment |
| POST | /#X-Amz-Target=AWSCloud9WorkspaceManagementService.DescribeEnvironmentMemberships | List members of an environment |
| POST | /#X-Amz-Target=AWSCloud9WorkspaceManagementService.DeleteEnvironmentMembership | Remove a member from an environment |

## Key resources

- **Environments** — EC2-backed or SSH-backed Cloud9 IDE environments with metadata and lifecycle controls.
- **Environment Memberships** — Per-user invitations with READ_ONLY, READ_WRITE, or OWNER permissions.
- **Tags** — Cost allocation and grouping tags applied to environments.

## Why Jentic

- **Setup:** Wiring AWS Cloud9 by hand means holding an access key ID and secret access key, computing an AWS Signature Version 4 signature per request, resolving the correct regional cloud9 host with the right X-Amz-Target action header, and handling retries yourself. Through Jentic you install once, import AWS Cloud9 from the API Directory, store the AWS access key once, and your agent calls it.
- **Permission scoping:** Cloud9 sends the environment and membership identifiers in the request body rather than the URL path, so scope your agent by the operations it needs, such as creating an EC2 environment or listing environments. You choose which operations it may call, so actions like deleting an environment or removing a member are not included unless you add them.
- **Credential handling:** Your AWS access key ID and secret access key are stored once, encrypted, by your own Jentic One instance, and the Signature Version 4 signature is computed at execution time. The raw keys never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create a Cloud9 environment' or 'add a member to an environment', and Jentic returns the matching AWS Cloud9 operation with its input schema so the agent calls the right action without crawling the AWS reference.

## Related APIs

- **Amazon EC2** — Provides the underlying instance Cloud9 environments run on; useful for advanced networking or AMI customisation.
- **AWS CodeCommit** — Source repositories that Cloud9 environments commonly clone for editing.
- **AWS CodeDeploy** — Deploys application code edited in Cloud9 to EC2, Lambda, or ECS, replacing manual SSH-based deploys from the IDE.

## FAQ

### What authentication does the AWS Cloud9 API use?

All requests are signed with AWS Signature Version 4 using an AWS access key ID and secret access key. Through Jentic, those credentials live encrypted in the vault and Jentic performs the signing server-side; the agent only sees a scoped Jentic credential reference.

### Can I provision a Cloud9 environment on a specific instance type?

Yes. Pass instanceType to CreateEnvironmentEC2, along with subnetId and an optional automaticStopTimeMinutes for idle auto-stop. Cloud9 launches the chosen EC2 instance, configures the IDE, and reports status via DescribeEnvironmentStatus.

### What are the rate limits for the AWS Cloud9 API?

Cloud9 applies standard AWS service throttling and returns ThrottlingException when exceeded. Workshop-style provisioning of dozens of environments at once should pace CreateEnvironmentEC2 calls and use exponential backoff.

### How do I add a user to a Cloud9 environment through Jentic?

Search Jentic for 'add a member to a Cloud9 environment', load the CreateEnvironmentMembership schema, and execute it with environmentId, userArn, and permissions set to READ_WRITE or READ_ONLY. The operation maps to CreateEnvironmentMembership and returns the resulting member record.

### Is AWS Cloud9 still being supported?

AWS announced that no new customer access to Cloud9 is granted as of mid-2024 for new accounts, but existing customers can continue to use the service and the API remains operational. New deployments should evaluate alternatives such as AWS CodeCatalyst Dev Environments or self-hosted code-server.

### Is AWS Cloud9 free to use?

Cloud9 itself has no separate charge. You pay for the underlying EC2 instance, EBS volume, and any data transfer the environment uses. The automaticStopTimeMinutes setting is the simplest way to limit cost when environments are idle.

### Can I limit what my agent is allowed to do with the AWS Cloud9 API?

Yes. Because Jentic One is self-hosted, your own rules decide which Cloud9 operations and credentials the agent may use, so you choose the exact actions it can call, such as CreateEnvironmentEC2 and ListEnvironments. Actions like DeleteEnvironment or DeleteEnvironmentMembership stay unavailable to the agent unless you explicitly add them. Since Cloud9 passes environment and membership identifiers in the request body, you scope access at the operation level rather than by URL path.
