---
title: "Update Cluster"
method: PUT
path: "/ocean/aws/ecs/cluster/{oceanClusterId}"
tags: ["Ocean ECS"]
---

# Update Cluster

`PUT /ocean/aws/ecs/cluster/{oceanClusterId}`

All Ocean parameters are updatable, excluding Region and ID. This API supports partial updates, so specific fields can be updated separately.

## Parameters

- `#/paths/~1ocean~1aws~1ecs~1cluster~1%7BoceanClusterId%7D/get/parameters/1` — unresolved $ref
- `#/paths/~1azure~1costs/get/parameters/0` — unresolved $ref
- `#/paths/~1aws~1ec2~1group~1%7BgroupId%7D/put/parameters/2` — unresolved $ref

## Request body

- object
  - `cluster` object, required
    - `id` string — Ocean cluster identifier.
    - `name` string — Add a name for the Ocean cluster.
    - `clusterName` string — ECS cluster name.
    - `autoScaler` AutoScaler — unresolved $ref
    - `capacity` Capacity — unresolved $ref
    - `strategy` Strategy — unresolved $ref
    - `compute` object
      - `subnetIds` string[] — A comma-separated list of subnet identifiers for the Ocean cluster. Subnet identifiers should be configured with auto-assign public IP.
      - `instanceTypes` object — The type of instances that may or may not be a part of the Ocean cluster.
        - `filters` Filters — unresolved $ref
        - `whitelist` string[] — Instance types allowed in the Ocean cluster. Cannot be configured if a deny list is configured.
        - `blacklist` string[] — Instance types to avoid launching in the Ocean cluster. Cannot be configured if a permit list is configured.
      - `launchSpecification` object — The default specification for container instances in the cluster. Used as a template for custom Virtual Node Groups to inherit values which are not explicitly defined in them, and as a default VNG when no other VNGs exist or match the workload’s requirements.
        - `associatePublicIpAddress` boolean — Configure public IP address allocation.
        - `associateIpv6Address` boolean — Configure IPv6 address allocation.
        - `imageId` string
        - `securityGroupIds` string[] — One or more security group identifiers.
        - `iamInstanceProfile` object — The instance profile iamRole.
          - `arn` string — The iamRole ARN.
        - `blockDeviceMappings` BlockDeviceMappings — unresolved $ref
        - `instanceMetadataOptions` InstanceMetadataOptions — unresolved $ref
        - `userData` string, byte — The base 64 encoded MIME user data to make available to the instances.
        - `useAsTemplateOnly` boolean — The configuration specified on the Ocean object will function only as a template for virtual node groups.
        - `monitoring` boolean — Enable detailed monitoring for cluster.
        - `ebsOptimized` boolean — Enable EBS optimization for the cluster. A flag will enable optimized capacity for high bandwidth connectivity to the EB service for non EBS optimized instance types. For instances that are EBS optimized, this flag will be ignored.
        - `tags` object[] — List of kay-value pairs of tags.
          - `tagKey` string — Set the tag key.
          - `tagValue` string — Set the tag value.
      - `optimizeImages` object
        - `shouldOptimizeEcsAmi` boolean
        - `performAt` string — Must be one of the following values: never, always, timeWindow. If performAt = timeWindow, the time window array should contain at least one time window.
        - `timeWindows` string[] — Restrict to time window regex.
    - `scheduling` Scheduling — unresolved $ref
    - `logging` Logging — unresolved $ref
    - `createdAt` string, date-time — A timestamp of the Ocean creation.
    - `updatedAt` string, date-time — A timestamp of the latest Ocean update.

## Other responses

- `200` — unresolved $ref
- `400` — Bad Request

---

[API](https://skmtc.net/spot/apis/spot-by-flexera-api.md) · [All operations](https://skmtc.net/spot/apis/spot-by-flexera-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/spot/spot-by-flexera-api/revisions/72813baf8d47/schema)
