Amazon ECR Amazon ECR Amazon Elastic Container Registry (ECR) API

The Amazon ECR Amazon Elastic Container Registry (ECR) API API from Amazon ECR — 1 operation(s) for amazon ecr amazon elastic container registry (ecr) api.

Operations 7

POST / Amazon ECR Create Repository #
POST /#DescribeRepositories Amazon ECR Describe Repositories #
POST /#DeleteRepository Amazon ECR Delete Repository #
POST /#PutImage Amazon ECR Put Image #
POST /#BatchGetImage Amazon ECR Batch Get Image #
POST /#ListImages Amazon ECR List Images #
POST /#CreateRepository Create Repository #

Documentation

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/amazon-ecr:amazon-ecr-amazon-ecr-amazon-elastic-container-registry-ecr-api-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

amazon-ecr-amazon-ecr-amazon-elastic-container-registry-ecr-api-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Amazon ECR Amazon Elastic Container Registry (ECR) API
  version: '2015-09-21'
  description: 'Operations tagged Amazon ECR Amazon Elastic Container Registry (ECR) API across 2 of this provider''s published API definitions: amazon-ecr-openapi.yml, amazon-ecr-amazon-ecr-amazon-elastic-container-registry-ecr-api-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.ecr.amazonaws.com
  description: Amazon ECR API endpoint
- url: https://api.ecr.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
tags:
- name: Amazon ECR Amazon Elastic Container Registry (ECR) API
paths:
  /:
    post:
      operationId: createRepository
      summary: Amazon ECR Create Repository
      description: Creates a repository in a registry. If the repository already exists, an exception is thrown.
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              type: object
              required:
              - repositoryName
              properties:
                repositoryName:
                  type: string
                  description: The name to use for the repository.
                tags:
                  type: array
                  items:
                    type: object
                    properties:
                      Key:
                        type: string
                      Value:
                        type: string
                  description: The metadata to apply to the repository.
                imageTagMutability:
                  type: string
                  enum:
                  - MUTABLE
                  - IMMUTABLE
                  description: The tag mutability setting for the repository.
                imageScanningConfiguration:
                  type: object
                  properties:
                    scanOnPush:
                      type: boolean
                  description: The image scanning configuration for the repository.
                encryptionConfiguration:
                  type: object
                  properties:
                    encryptionType:
                      type: string
                      enum:
                      - AES256
                      - KMS
                    kmsKey:
                      type: string
                  description: The encryption configuration for the repository.
            examples:
              createRepositoryRequestExample:
                summary: Default createRepository request
                x-microcks-default: true
                value: {}
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AmazonEC2ContainerRegistry_V20150921.CreateRepository
        example: AmazonEC2ContainerRegistry_V20150921.CreateRepository
      responses:
        '200':
          description: Successful response with the created repository details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateRepositoryResponse'
              examples:
                createRepository200Example:
                  summary: Default createRepository 200 response
                  x-microcks-default: true
                  value:
                    repository: example-string
        '400':
          description: Bad request error.
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - Amazon ECR Amazon Elastic Container Registry (ECR) API
    servers:
    - url: https://api.ecr.amazonaws.com
      description: Amazon ECR API endpoint
  /#DescribeRepositories:
    post:
      operationId: describeRepositories
      summary: Amazon ECR Describe Repositories
      description: Describes image repositories in a registry.
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              type: object
              properties:
                registryId:
                  type: string
                  description: The AWS account ID associated with the registry.
                repositoryNames:
                  type: array
                  items:
                    type: string
                  description: A list of repositories to describe.
                nextToken:
                  type: string
                  description: Pagination token from a previous request.
                maxResults:
                  type: integer
                  description: The maximum number of repository results.
            examples:
              describeRepositoriesRequestExample:
                summary: Default describeRepositories request
                x-microcks-default: true
                value: {}
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AmazonEC2ContainerRegistry_V20150921.DescribeRepositories
        example: AmazonEC2ContainerRegistry_V20150921.DescribeRepositories
      responses:
        '200':
          description: Successful response with repository details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DescribeRepositoriesResponse'
              examples:
                describeRepositories200Example:
                  summary: Default describeRepositories 200 response
                  x-microcks-default: true
                  value:
                    repositories:
                    - example-string
                    nextToken: example-string
      tags:
      - Amazon ECR Amazon Elastic Container Registry (ECR) API
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://api.ecr.amazonaws.com
      description: Amazon ECR API endpoint
  /#DeleteRepository:
    post:
      operationId: deleteRepository
      summary: Amazon ECR Delete Repository
      description: Deletes a repository. If the repository contains images, you must either delete all images or use the force option to delete the repository.
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              type: object
              required:
              - repositoryName
              properties:
                registryId:
                  type: string
                  description: The AWS account ID associated with the registry.
                repositoryName:
                  type: string
                  description: The name of the repository to delete.
                force:
                  type: boolean
                  description: If true, deleting the repository will force deletion of all contained images.
            examples:
              deleteRepositoryRequestExample:
                summary: Default deleteRepository request
                x-microcks-default: true
                value: {}
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AmazonEC2ContainerRegistry_V20150921.DeleteRepository
        example: AmazonEC2ContainerRegistry_V20150921.DeleteRepository
      responses:
        '200':
          description: Successful response with the deleted repository details.
        '400':
          description: Bad request error.
      tags:
      - Amazon ECR Amazon Elastic Container Registry (ECR) API
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://api.ecr.amazonaws.com
      description: Amazon ECR API endpoint
  /#PutImage:
    post:
      operationId: putImage
      summary: Amazon ECR Put Image
      description: Creates or updates the image manifest and tags associated with an image.
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              type: object
              required:
              - repositoryName
              - imageManifest
              properties:
                registryId:
                  type: string
                  description: The AWS account ID associated with the registry.
                repositoryName:
                  type: string
                  description: The name of the repository in which to put the image.
                imageManifest:
                  type: string
                  description: The image manifest corresponding to the image to be uploaded.
                imageManifestMediaType:
                  type: string
                  description: The media type of the image manifest.
                imageTag:
                  type: string
                  description: The tag to associate with the image.
                imageDigest:
                  type: string
                  description: The image digest of the image manifest.
            examples:
              putImageRequestExample:
                summary: Default putImage request
                x-microcks-default: true
                value: {}
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AmazonEC2ContainerRegistry_V20150921.PutImage
        example: AmazonEC2ContainerRegistry_V20150921.PutImage
      responses:
        '200':
          description: Successful response with the image details.
        '400':
          description: Bad request error.
      tags:
      - Amazon ECR Amazon Elastic Container Registry (ECR) API
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://api.ecr.amazonaws.com
      description: Amazon ECR API endpoint
  /#BatchGetImage:
    post:
      operationId: batchGetImage
      summary: Amazon ECR Batch Get Image
      description: Gets detailed information for an image. Images are specified with either an imageTag or imageDigest.
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              type: object
              required:
              - repositoryName
              - imageIds
              properties:
                registryId:
                  type: string
                  description: The AWS account ID associated with the registry.
                repositoryName:
                  type: string
                  description: The repository that contains the images to get.
                imageIds:
                  type: array
                  items:
                    type: object
                    properties:
                      imageDigest:
                        type: string
                      imageTag:
                        type: string
                  description: A list of image ID references to retrieve.
                acceptedMediaTypes:
                  type: array
                  items:
                    type: string
                  description: The accepted media types for the request.
            examples:
              batchGetImageRequestExample:
                summary: Default batchGetImage request
                x-microcks-default: true
                value: {}
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AmazonEC2ContainerRegistry_V20150921.BatchGetImage
        example: AmazonEC2ContainerRegistry_V20150921.BatchGetImage
      responses:
        '200':
          description: Successful response with the image details.
        '400':
          description: Bad request error.
      tags:
      - Amazon ECR Amazon Elastic Container Registry (ECR) API
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://api.ecr.amazonaws.com
      description: Amazon ECR API endpoint
  /#ListImages:
    post:
      operationId: listImages
      summary: Amazon ECR List Images
      description: Lists all the image IDs for the specified repository.
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              type: object
              required:
              - repositoryName
              properties:
                registryId:
                  type: string
                  description: The AWS account ID associated with the registry.
                repositoryName:
                  type: string
                  description: The repository with image IDs to be listed.
                nextToken:
                  type: string
                  description: Pagination token from a previous request.
                maxResults:
                  type: integer
                  description: The maximum number of image results.
                filter:
                  type: object
                  properties:
                    tagStatus:
                      type: string
                      enum:
                      - TAGGED
                      - UNTAGGED
                      - ANY
                  description: The filter key and value to filter on.
            examples:
              listImagesRequestExample:
                summary: Default listImages request
                x-microcks-default: true
                value: {}
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AmazonEC2ContainerRegistry_V20150921.ListImages
        example: AmazonEC2ContainerRegistry_V20150921.ListImages
      responses:
        '200':
          description: Successful response with image IDs.
        '400':
          description: Bad request error.
      tags:
      - Amazon ECR Amazon Elastic Container Registry (ECR) API
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://api.ecr.amazonaws.com
      description: Amazon ECR API endpoint
  /#CreateRepository:
    post:
      operationId: CreateRepository
      summary: Create Repository
      description: Creates a repository. For more information, see Amazon ECR repositories in the Amazon Elastic Container Registry User Guide.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/CreateRepositoryResponse'
              example:
                repository:
                  registryId: 012345678901
                  repositoryName: project-a/nginx-web-app
                  repositoryArn: arn:aws:ecr:us-west-2:012345678901:repository/project-a/nginx-web-app
        '400':
          description: InvalidParameterException; InvalidTagParameterException; KmsException; LimitExceededException; RepositoryAlreadyExistsException; TooManyTagsException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/InvalidParameterException'
        '500':
          description: ServerException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ServerException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AmazonEC2ContainerRegistry_V20150921.CreateRepository
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/CreateRepositoryRequest'
            example:
              repositoryName: project-a/nginx-web-app
      tags:
      - Amazon ECR Amazon Elastic Container Registry (ECR) API
      security:
      - sigv4: []
    servers:
    - url: https://api.ecr.{region}.amazonaws.com
      variables:
        region:
          default: us-east-1
components:
  schemas:
    CreateRepositoryResponse:
      type: object
      properties:
        repository:
          $ref: '#/components/schemas/Repository'
    Repository:
      type: object
      properties:
        repositoryArn:
          type: string
          description: The Amazon Resource Name (ARN) of the repository.
          example: arn:aws:service:us-east-1:123456789012:resource/example
        registryId:
          type: string
          description: The AWS account ID associated with the registry.
          example: example-id-1234
        repositoryName:
          type: string
          description: The name of the repository.
          example: example-resource-name
        repositoryUri:
          type: string
          description: The URI for the repository.
          example: example-string
        createdAt:
          type: string
          format: date-time
          description: The date and time the repository was created.
          example: '2025-03-15T14:30:00Z'
        imageTagMutability:
          type: string
          enum:
          - MUTABLE
          - IMMUTABLE
          description: The tag mutability setting for the repository.
          example: MUTABLE
        imageScanningConfiguration:
          type: object
          properties:
            scanOnPush:
              type: boolean
          description: The image scanning configuration for the repository.
          example:
            scanOnPush: true
        encryptionConfiguration:
          type: object
          properties:
            encryptionType:
              type: string
            kmsKey:
              type: string
          description: The encryption configuration for the repository.
          example:
            encryptionType: standard
            kmsKey: example-string
    DescribeRepositoriesResponse:
      type: object
      properties:
        repositories:
          type: array
          items:
            $ref: '#/components/schemas/Repository'
          example:
          - example-string
        nextToken:
          type: string
          example: example-string
    ServerException:
      type: object
      properties:
        message:
          type: string
          description: The error message associated with the exception.
    CreateRepositoryRequest:
      type: object
      properties:
        registryId:
          type: string
          description: The Amazon Web Services account ID associated with the registry to create the repository. If you do not specify a registry, the default registry is assumed.
        repositoryName:
          type: string
          description: The name to use for the repository. The repository name may be specified on its own (such as nginx-web-app) or it can be prepended with a namespace to group the repository into a category (such as project-a/nginx-web-app). The repository name must start with a letter and can only contain lowercase letters, numbers, hyphens, underscores, and forward slashes.
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
          description: The metadata that you apply to the repository to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters.
        imageTagMutability:
          type: string
          enum:
          - MUTABLE
          - IMMUTABLE
          - IMMUTABLE_WITH_EXCLUSION
          - MUTABLE_WITH_EXCLUSION
          description: The tag mutability setting for the repository. If this parameter is omitted, the default setting of MUTABLE will be used which will allow image tags to be overwritten. If IMMUTABLE is specified, all image tags within the repository will be immutable which will prevent them from being overwritten.
        imageTagMutabilityExclusionFilters:
          type: array
          items:
            $ref: '#/components/schemas/ImageTagMutabilityExclusionFilter'
          description: A list of filters that specify which image tags should be excluded from the repository's image tag mutability setting.
        imageScanningConfiguration:
          $ref: '#/components/schemas/ImageScanningConfiguration'
        encryptionConfiguration:
          $ref: '#/components/schemas/EncryptionConfiguration'
      required:
      - repositoryName
    ImageTagMutabilityExclusionFilter:
      type: object
      properties:
        filterType:
          type: string
          enum:
          - WILDCARD
          description: The type of filter to apply for excluding image tags from mutability settings.
        filter:
          type: string
          description: The filter value used to match image tags for exclusion from mutability settings.
      required:
      - filterType
      - filter
    EncryptionConfiguration:
      type: object
      properties:
        encryptionType:
          type: string
          enum:
          - AES256
          - KMS
          - KMS_DSSE
          description: The encryption type to use. If you use the KMS encryption type, the contents of the repository will be encrypted using server-side encryption with Key Management Service key stored in KMS. When you use KMS to encrypt your data, you can either use the default Amazon Web Services managed KMS key for Amazon ECR, or specify your own KMS key, which you already created. If you use the KMS_DSSE encryption type, the contents of the repository will be encrypted with two layers of encryption using server-side encryption with the KMS Management Service key stored in KMS. Similar to the KMS encryption typ
        kmsKey:
          type: string
          description: If you use the KMS encryption type, specify the KMS key to use for encryption. The alias, key ID, or full ARN of the KMS key can be specified. The key must exist in the same Region as the repository. If no key is specified, the default Amazon Web Services managed KMS key for Amazon ECR will be used.
      required:
      - encryptionType
    ImageScanningConfiguration:
      type: object
      properties:
        scanOnPush:
          type: boolean
          description: The setting that determines whether images are scanned after being pushed to a repository. If set to true, images will be scanned after being pushed. If this parameter is not specified, it will default to false and images will not be scanned unless a scan is manually started with the API_StartImageScan API.
    Tag:
      type: object
      properties:
        Key:
          type: string
          description: One part of a key-value pair that make up a tag. A key is a general label that acts like a category for more specific tag values.
        Value:
          type: string
          description: A value acts as a descriptor within a tag category (key).
      required:
      - Key
      - Value
    InvalidParameterException:
      type: object
      properties:
        message:
          type: string
          description: The error message associated with the exception.
    Repository_2:
      type: object
      properties:
        repositoryArn:
          type: string
          description: The Amazon Resource Name (ARN) that identifies the repository. The ARN contains the arn:aws:ecr namespace, followed by the region of the repository, Amazon Web Services account ID of the repository owner, and repository name. For example, arn:aws:ecr:region:012345678910:repository/repository-name.
        registryId:
          type: string
          description: The Amazon Web Services account ID associated with the registry that contains the repository.
        repositoryName:
          type: string
          description: The name of the repository.
        repositoryUri:
          type: string
          description: The URI for the repository. You can use this URI for container image push and pull operations.
        createdAt:
          type: string
          format: date-time
          description: The date and time, in JavaScript date format, when the repository was created.
        imageTagMutability:
          type: string
          enum:
          - MUTABLE
          - IMMUTABLE
          - IMMUTABLE_WITH_EXCLUSION
          - MUTABLE_WITH_EXCLUSION
          description: The tag mutability setting for the repository.
        imageTagMutabilityExclusionFilters:
          type: array
          items:
            $ref: '#/components/schemas/ImageTagMutabilityExclusionFilter'
          description: A list of filters that specify which image tags are excluded from the repository's image tag mutability setting.
        imageScanningConfiguration:
          $ref: '#/components/schemas/ImageScanningConfiguration'
        encryptionConfiguration:
          $ref: '#/components/schemas/EncryptionConfiguration'
  securitySchemes:
    aws_sigv4:
      type: apiKey
      name: Authorization
      in: header
      description: AWS Signature Version 4 authentication.
    sigv4:
      type: apiKey
      in: header
      name: Authorization
      description: AWS Signature Version 4. The Authorization header carries an AWS4-HMAC-SHA256 signature over the canonical request, with X-Amz-Date (and X-Amz-Security-Token for temporary credentials). Not a bearer token.
      x-aws-sigv4:
        signingName: ecr
x-refined-from:
- amazon-ecr-openapi.yml
- amazon-ecr-amazon-ecr-amazon-elastic-container-registry-ecr-api-api-openapi.yml