canonical: https://jentic.com/apis/amazonaws.com/aws-opsworks-cm

# AWS OpsWorks CM

Jentic publishes the only available OpenAPI specification for AWS OpsWorks CM, keeping it validated and agent-ready. OpsWorks CM is AWS's managed configuration-management service for Chef Automate and Puppet Enterprise - it provisions and operates managed Chef or Puppet master servers, schedules automated backups, registers nodes against the master, and rotates engine credentials. The 19 endpoints cover Server CRUD, Node association/disassociation, Backup management, AccountAttributes for service quotas, and the EngineAttributes flow that returns Chef starter kits or Puppet master credentials.

## For AI agents

Provision and operate managed Chef Automate or Puppet Enterprise master servers - create servers, register nodes, manage backups, and rotate engine credentials.

## Scope

Does not handle cookbook authoring, manifest catalogues, or in-master Chef/Puppet runs - use for managed Chef Automate or Puppet Enterprise server, node, and backup lifecycle only.

## Capabilities

- Provision a managed Chef Automate or Puppet Enterprise master server with engine version and instance type
- Register and disassociate nodes against the master so they receive cookbook or manifest runs
- Schedule and trigger on-demand backups of the master server with configurable retention
- Restore a server from a backup to recover after configuration loss or accidental deletion
- Rotate engine credentials (Chef pivotal key, Puppet admin password) without rebuilding the server
- List service quota AccountAttributes (server count, backup count) before provisioning new resources
- Tag servers and backups for cost allocation and IAM scoping

## Use cases

### Run a Managed Chef Automate Master

Operations teams that have standardised on Chef but want to offload master server maintenance can use OpsWorks CM. CreateServer provisions a Chef Automate master with a chosen engine version, instance type, backup retention and maintenance window, and returns EngineAttributes including a starter kit and admin credentials. The agent can then call AssociateNode to register EC2 instances against the master so each node pulls cookbooks on a regular schedule.

Example prompt: Call CreateServer with Engine=ChefAutomate, EngineVersion=2, InstanceType=m5.large, ServiceRoleArn and InstanceProfileArn, then poll DescribeServers until Status=HEALTHY

### Operate a Puppet Enterprise Estate

Teams running Puppet Enterprise can let OpsWorks CM manage the master server, with daily automated backups and AWS-handled patching. CreateServer with Engine=Puppet returns a master URL and admin password; AssociateNode binds individual EC2 nodes to the master. The agent can pair this with PuppetDB queries running on the same master to manage configuration drift across an estate.

Example prompt: Call CreateServer with Engine=Puppet, then AssociateNode with NodeName, EngineAttributes including PUPPET_NODE_CSR for certificate signing

### Disaster Recovery via Server Backups

OpsWorks CM-managed servers store all configuration in S3 backups (cookbook revisions, node certificates, internal config). CreateBackup triggers an on-demand backup; RestoreServer rebuilds a server from a backup id, optionally to a different instance type. An agent can run a scheduled validation that creates a backup, restores it into a sandbox server, and verifies node convergence before retiring the validation server.

Example prompt: Call CreateBackup on the production server, then RestoreServer with the returned BackupId into a non-production server name to verify the backup is usable

### AI Agent Integration for Configuration Management Operations

Through Jentic, an SRE agent can manage Chef Automate or Puppet Enterprise masters as a structured tool - provision, attach nodes, back up, restore, rotate credentials. Jentic returns each OpsWorks CM operation's input schema and brokers AWS credentials, so day-2 operations on managed configuration servers can run as LLM tool calls rather than bespoke scripts.

Example prompt: Resolve the intent 'create a Chef Automate server' via Jentic search, load CreateServer, and execute it with Engine=ChefAutomate, InstanceType, ServiceRoleArn and InstanceProfileArn

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /#X-Amz-Target=OpsWorksCM_V2016_11_01.CreateServer | Provision a Chef Automate or Puppet Enterprise master server |
| POST | /#X-Amz-Target=OpsWorksCM_V2016_11_01.AssociateNode | Register a node against the master |
| POST | /#X-Amz-Target=OpsWorksCM_V2016_11_01.DisassociateNode | Disassociate a node from the master |
| POST | /#X-Amz-Target=OpsWorksCM_V2016_11_01.CreateBackup | Trigger an on-demand backup |
| POST | /#X-Amz-Target=OpsWorksCM_V2016_11_01.RestoreServer | Restore a server from a backup |
| POST | /#X-Amz-Target=OpsWorksCM_V2016_11_01.DeleteServer | Delete a managed server |
| POST | /#X-Amz-Target=OpsWorksCM_V2016_11_01.DeleteBackup | Delete a stored backup |

## Key resources

- **Servers** — Provision, describe, update, and delete managed Chef Automate or Puppet Enterprise master servers
- **Nodes** — Associate and disassociate nodes against a master so they receive Chef cookbook or Puppet manifest runs
- **Backups** — Schedule, trigger, list, and restore from server backups
- **Account Attributes** — Service quotas - maximum servers, maximum manual backups, retained backups
- **Tags** — Tag servers and backups for cost allocation and IAM scoping

## Why Jentic

- **Setup:** Wiring OpsWorks CM by hand means implementing AWS SigV4 signing, targeting the regional host such as opsworks-cm.eu-west-1.amazonaws.com, polling DescribeServers through CREATING states, and threading EngineAttributes back out safely. Through Jentic you install once, import AWS OpsWorks CM from the API Directory, store the AWS access key once, and your agent calls it.
- **Permission scoping:** OpsWorks CM carries the ServerName and BackupId in the request body rather than the URL path, so scoping is by operation, not by path prefix. Limit the agent to the operations it needs, such as CreateServer and CreateBackup, so ones like DeleteServer or DeleteBackup are not included unless you add them.
- **Credential handling:** Your AWS access key is stored once, encrypted, by your own Jentic One instance and used to sign each OpsWorks CM request with SigV4 at execution time, and engine credentials returned in EngineAttributes stay out of the agent context. The raw secret never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create a Chef Automate server' or 'create an OpsWorks CM backup', and Jentic returns the matching OpsWorks CM operation such as CreateServer with its input schema so the agent calls the right endpoint without browsing the AWS reference.

## Related APIs

- **AWS OpsWorks Stacks** — OpsWorks Stacks is the older AWS-managed Chef abstraction at the stack/layer level rather than a managed master server
- **Amazon EC2** — EC2 hosts the nodes you associate against the OpsWorks CM master server
- **AWS CodeDeploy** — CodeDeploy is the AWS-recommended modern alternative for application deployment
- **Amazon EC2 Auto Scaling** — Auto Scaling adjusts the node count that connects to the OpsWorks CM master

## FAQ

### Why is there no official OpenAPI spec for AWS OpsWorks CM?

AWS does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call AWS OpsWorks CM via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the AWS OpsWorks CM API use?

The control plane is signed with AWS Signature Version 4 using IAM access keys. The Chef Automate or Puppet Enterprise master itself uses engine-specific credentials (pivotal key for Chef, admin password for Puppet) returned in the EngineAttributes of CreateServer. Through Jentic, AWS credentials live in your Jentic One instance and sign each control-plane call on the agent's behalf.

### Can I run both Chef Automate and Puppet Enterprise with this API?

Yes. CreateServer accepts an Engine of ChefAutomate or Puppet, with engine-specific EngineAttributes for each. The same Backup, Restore, AssociateNode and DisassociateNode endpoints work across both engines, with the engine-specific node bootstrapping handled via the EngineAttributes payload.

### What are the rate limits for OpsWorks CM?

AWS applies per-account control-plane throttling. Server provisioning takes several minutes; DescribeServers returns Status=CREATING, HEALTHY, FAILED, etc. and should be polled rather than retrying the create call. Service quotas are surfaced via DescribeAccountAttributes.

### How do I trigger a backup through Jentic?

Use the Jentic search query 'create an OpsWorks CM backup', load CreateBackup, and execute it with the ServerName and an optional Description. Jentic signs the request with SigV4 against your stored AWS credentials and returns the BackupId, which the agent can later pass to RestoreServer if needed.

### How do I retrieve the Chef starter kit after creating a server?

The starter kit URL is returned in the EngineAttributes of the CreateServer response and can be re-fetched with DescribeServers. The kit contains the pivotal key, knife configuration and a sample cookbook so an operator can begin uploading cookbooks immediately.

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

Yes. Because you run Jentic One yourself, your own rules decide which OpsWorks CM operations and AWS credentials the agent may use. OpsWorks CM carries the ServerName and BackupId in the request body rather than the URL path, so scoping is by operation, not by path prefix: you can allow only the calls the agent needs, such as CreateServer and CreateBackup, while leaving destructive ones like DeleteServer and DeleteBackup out unless you explicitly add them.
