AWS Fargate Clusters API

Operations for managing ECS clusters that host Fargate tasks and services, including cluster creation, configuration, and capacity provider association.

Documentation

Specifications

Other Resources

🔗
API Operations
https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_Operations.html
🔗
Pricing
https://aws.amazon.com/fargate/pricing/
🔗
Developer Guide
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html
🔗
CLI Reference
https://docs.aws.amazon.com/cli/latest/reference/ecs/
🔗
SDKs
https://aws.amazon.com/tools/
🔗
Platform Versions
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform-fargate.html
🔗
ChangeLog
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform-versions-changelog.html
🔗
Service Quotas
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-quotas.html
🔗
Security
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/security-fargate.html
🔗
Monitoring
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/monitoring-fargate-usage.html
🔗
Container Insights
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cloudwatch-container-insights.html
🔗
Best Practices
https://docs.aws.amazon.com/AmazonECS/latest/bestpracticesguide/intro.html
🔗
Windows Containers
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/windows-considerations.html
🔗
ECS Exec
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-exec.html
🔗
Fargate Profiles
https://docs.aws.amazon.com/eks/latest/userguide/fargate-profile.html
🔗
Pod Configuration
https://docs.aws.amazon.com/eks/latest/userguide/fargate-pod-configuration.html
🔗
Pod Execution Role
https://docs.aws.amazon.com/eks/latest/userguide/pod-execution-role.html
🔗
CLI Reference
https://docs.aws.amazon.com/cli/latest/reference/eks/create-fargate-profile.html
🔗
APIsJSON
https://raw.githubusercontent.com/api-evangelist/fargate/refs/heads/main/apis.yml

OpenAPI Specification

fargate-clusters-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: AWS Fargate Amazon ECS API (Fargate) Clusters API
  description: The Amazon ECS API provides programmatic access to manage Fargate tasks and services through Amazon Elastic Container Service. AWS Fargate is a serverless compute engine for containers that removes the need to provision and manage servers. This specification covers the core ECS API operations relevant to Fargate workloads, including registering task definitions with Fargate compatibility, running tasks on Fargate infrastructure, and managing services with the Fargate launch type. All operations use the JSON-RPC style with POST requests and an X-Amz-Target header specifying the action.
  version: '2014-11-13'
  contact:
    name: Amazon Web Services
    url: https://aws.amazon.com/fargate/
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  termsOfService: https://aws.amazon.com/service-terms/
servers:
- url: https://ecs.{region}.amazonaws.com
  description: Amazon ECS regional endpoint
  variables:
    region:
      default: us-east-1
      description: AWS region
      enum:
      - us-east-1
      - us-east-2
      - us-west-1
      - us-west-2
      - eu-west-1
      - eu-west-2
      - eu-west-3
      - eu-central-1
      - eu-north-1
      - ap-southeast-1
      - ap-southeast-2
      - ap-northeast-1
      - ap-northeast-2
      - ap-south-1
      - sa-east-1
      - ca-central-1
security:
- aws_sig_v4: []
tags:
- name: Clusters
  description: Operations for managing ECS clusters that host Fargate tasks and services, including cluster creation, configuration, and capacity provider association.
  externalDocs:
    url: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateCluster.html
paths:
  /#X-Amz-Target=AmazonEC2ContainerServiceV20141113.CreateCluster:
    post:
      operationId: createCluster
      summary: AWS Fargate Create an ECS cluster
      description: Creates a new Amazon ECS cluster. By default, your account receives a default cluster when you launch your first container instance. You can create additional clusters to group Fargate tasks and services. A cluster can be configured with capacity providers including FARGATE and FARGATE_SPOT for serverless compute.
      tags:
      - Clusters
      externalDocs:
        url: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateCluster.html
      parameters:
      - $ref: '#/components/parameters/X-Amz-Target'
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/CreateClusterRequest'
      responses:
        '200':
          description: Cluster created successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  cluster:
                    $ref: '#/components/schemas/Cluster'
        '400':
          $ref: '#/components/responses/ClientError'
        '500':
          $ref: '#/components/responses/ServerError'
  /#X-Amz-Target=AmazonEC2ContainerServiceV20141113.DescribeClusters:
    post:
      operationId: describeClusters
      summary: AWS Fargate Describe one or more clusters
      description: Describes one or more of your clusters. Returns information about the cluster including its status, capacity providers, default capacity provider strategy, active services count, running tasks count, and configuration settings.
      tags:
      - Clusters
      externalDocs:
        url: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeClusters.html
      parameters:
      - $ref: '#/components/parameters/X-Amz-Target'
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              type: object
              properties:
                clusters:
                  type: array
                  description: A list of up to 100 cluster names or full ARNs to describe.
                  items:
                    type: string
                  maxItems: 100
                include:
                  type: array
                  description: Additional information to include in the response.
                  items:
                    type: string
                    enum:
                    - ATTACHMENTS
                    - CONFIGURATIONS
                    - SETTINGS
                    - STATISTICS
                    - TAGS
      responses:
        '200':
          description: Clusters described successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  clusters:
                    type: array
                    items:
                      $ref: '#/components/schemas/Cluster'
                  failures:
                    type: array
                    items:
                      $ref: '#/components/schemas/Failure'
        '400':
          $ref: '#/components/responses/ClientError'
        '500':
          $ref: '#/components/responses/ServerError'
components:
  schemas:
    Failure:
      type: object
      description: A failed resource from a batch operation.
      properties:
        arn:
          type: string
          description: The ARN of the failed resource.
        reason:
          type: string
          description: The reason for the failure.
        detail:
          type: string
          description: The details of the failure.
    CreateClusterRequest:
      type: object
      description: Request to create an ECS cluster for Fargate workloads.
      properties:
        clusterName:
          type: string
          description: The name of the cluster. Up to 255 characters.
          maxLength: 255
        capacityProviders:
          type: array
          description: The capacity providers to associate with the cluster. Use FARGATE and FARGATE_SPOT for serverless compute.
          items:
            type: string
        defaultCapacityProviderStrategy:
          type: array
          description: The default capacity provider strategy. Tasks launched without specifying a capacity provider or launch type will use this strategy.
          items:
            $ref: '#/components/schemas/CapacityProviderStrategyItem'
        settings:
          type: array
          description: Cluster settings, such as enabling Container Insights.
          items:
            type: object
            properties:
              name:
                type: string
                enum:
                - containerInsights
              value:
                type: string
                enum:
                - enabled
                - disabled
        tags:
          type: array
          description: Tags to apply to the cluster.
          items:
            $ref: '#/components/schemas/Tag'
    CapacityProviderStrategyItem:
      type: object
      description: A capacity provider strategy item specifying a capacity provider and its weight and base values. Use FARGATE or FARGATE_SPOT for serverless compute.
      required:
      - capacityProvider
      properties:
        capacityProvider:
          type: string
          description: The short name of the capacity provider. Valid Fargate values are FARGATE and FARGATE_SPOT.
        weight:
          type: integer
          description: The relative percentage of the total number of tasks that should use the specified capacity provider.
          minimum: 0
          maximum: 1000
        base:
          type: integer
          description: The number of tasks, at minimum, to run on the specified capacity provider. Only one capacity provider in a strategy can have a base defined.
          minimum: 0
          maximum: 100000
    ErrorResponse:
      type: object
      properties:
        __type:
          type: string
          description: The error type identifier.
        message:
          type: string
          description: A human-readable error message.
    Cluster:
      type: object
      description: An ECS cluster that can host Fargate tasks and services.
      properties:
        clusterArn:
          type: string
          description: The ARN of the cluster.
        clusterName:
          type: string
          description: The name of the cluster.
        status:
          type: string
          description: The status of the cluster.
        capacityProviders:
          type: array
          description: The capacity providers associated with the cluster. Includes FARGATE and FARGATE_SPOT for serverless compute.
          items:
            type: string
        defaultCapacityProviderStrategy:
          type: array
          description: The default capacity provider strategy for the cluster.
          items:
            $ref: '#/components/schemas/CapacityProviderStrategyItem'
        registeredContainerInstancesCount:
          type: integer
          description: The number of container instances registered with the cluster.
        runningTasksCount:
          type: integer
          description: The number of tasks currently running on the cluster.
        pendingTasksCount:
          type: integer
          description: The number of tasks in a pending state on the cluster.
        activeServicesCount:
          type: integer
          description: The number of active services on the cluster.
        settings:
          type: array
          description: The cluster settings, such as Container Insights.
          items:
            type: object
            properties:
              name:
                type: string
              value:
                type: string
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
    Tag:
      type: object
      description: A key-value pair used to tag an Amazon ECS resource.
      properties:
        key:
          type: string
          description: The tag key. Tag keys are case-sensitive and must be unique.
          maxLength: 128
        value:
          type: string
          description: The tag value.
          maxLength: 256
  parameters:
    X-Amz-Target:
      name: X-Amz-Target
      in: header
      required: true
      schema:
        type: string
      description: The ECS API action target header used for JSON-RPC style routing.
  responses:
    ServerError:
      description: Server error. An internal service error occurred.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    ClientError:
      description: Client error. The request was invalid, contained incorrect parameters, or the caller does not have required permissions.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    aws_sig_v4:
      type: apiKey
      name: Authorization
      in: header
      description: AWS Signature Version 4 authentication. Requests must be signed using AWS access credentials.
externalDocs:
  description: AWS Fargate Developer Guide
  url: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS_Fargate.html