Amazon ECR Ecr Pull Through Cache Rule API

The Ecr Pull Through Cache Rule API from Amazon ECR — 5 operation(s) for ecr pull through cache rule.

Operations 5

POST /#CreatePullThroughCacheRule Create Pull Through Cache Rule #
POST /#DeletePullThroughCacheRule Delete Pull Through Cache Rule #
POST /#DescribePullThroughCacheRules Describe Pull Through Cache Rules #
POST /#UpdatePullThroughCacheRule Update Pull Through Cache Rule #
POST /#ValidatePullThroughCacheRule Validate Pull Through Cache Rule #

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-pull-through-cache-rule-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-pull-through-cache-rule-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Amazon Elastic Container Registry Pull Through Cache Rule…
  version: '2015-09-21'
  description: Generated from AWS's published Smithy model for Amazon Elastic Container Registry. 5 operation(s).
  contact:
    name: Amazon Web Services
    url: https://aws.amazon.com/contact-us/
  license:
    name: Apache 2.0
    identifier: Apache-2.0
    url: https://github.com/aws/api-models-aws/blob/main/LICENSE
servers:
- url: https://api.ecr.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
security:
- sigv4: []
tags:
- name: Pull Through Cache Rule
paths:
  /#CreatePullThroughCacheRule:
    post:
      operationId: CreatePullThroughCacheRule
      summary: Create Pull Through Cache Rule
      description: Creates a pull through cache rule. A pull through cache rule provides a way to cache images from an upstream registry source in your Amazon ECR private registry. For more information, see Using pull through cache rules in the Amazon Elastic Container Registry User Guide.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/CreatePullThroughCacheRuleResponse'
        '400':
          description: InvalidParameterException; LimitExceededException; PullThroughCacheRuleAlreadyExistsException; SecretNotFoundException; UnableToAccessSecretException; UnableToDecryptSecretValueException; UnsupportedUpstreamRegistryException; ValidationException
          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.CreatePullThroughCacheRule
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/CreatePullThroughCacheRuleRequest'
      tags:
      - Pull Through Cache Rule
  /#DeletePullThroughCacheRule:
    post:
      operationId: DeletePullThroughCacheRule
      summary: Delete Pull Through Cache Rule
      description: Deletes a pull through cache rule.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/DeletePullThroughCacheRuleResponse'
        '400':
          description: InvalidParameterException; PullThroughCacheRuleNotFoundException; ValidationException
          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.DeletePullThroughCacheRule
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/DeletePullThroughCacheRuleRequest'
      tags:
      - Pull Through Cache Rule
  /#DescribePullThroughCacheRules:
    post:
      operationId: DescribePullThroughCacheRules
      summary: Describe Pull Through Cache Rules
      description: Returns the pull through cache rules for a registry.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/DescribePullThroughCacheRulesResponse'
        '400':
          description: InvalidParameterException; PullThroughCacheRuleNotFoundException; ValidationException
          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.DescribePullThroughCacheRules
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/DescribePullThroughCacheRulesRequest'
      tags:
      - Pull Through Cache Rule
  /#UpdatePullThroughCacheRule:
    post:
      operationId: UpdatePullThroughCacheRule
      summary: Update Pull Through Cache Rule
      description: Updates an existing pull through cache rule.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/UpdatePullThroughCacheRuleResponse'
        '400':
          description: InvalidParameterException; PullThroughCacheRuleNotFoundException; SecretNotFoundException; UnableToAccessSecretException; UnableToDecryptSecretValueException; ValidationException
          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.UpdatePullThroughCacheRule
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/UpdatePullThroughCacheRuleRequest'
      tags:
      - Pull Through Cache Rule
  /#ValidatePullThroughCacheRule:
    post:
      operationId: ValidatePullThroughCacheRule
      summary: Validate Pull Through Cache Rule
      description: Validates an existing pull through cache rule for an upstream registry that requires authentication. This will retrieve the contents of the Amazon Web Services Secrets Manager secret, verify the syntax, and then validate that authentication to the upstream registry is successful.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ValidatePullThroughCacheRuleResponse'
        '400':
          description: InvalidParameterException; PullThroughCacheRuleNotFoundException; ValidationException
          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.ValidatePullThroughCacheRule
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/ValidatePullThroughCacheRuleRequest'
      tags:
      - Pull Through Cache Rule
components:
  schemas:
    ServerException:
      type: object
      properties:
        message:
          type: string
          description: The error message associated with the exception.
    DescribePullThroughCacheRulesRequest:
      type: object
      properties:
        registryId:
          type: string
          description: The Amazon Web Services account ID associated with the registry to return the pull through cache rules for. If you do not specify a registry, the default registry is assumed.
        ecrRepositoryPrefixes:
          type: array
          items:
            type: string
          description: The Amazon ECR repository prefixes associated with the pull through cache rules to return. If no repository prefix value is specified, all pull through cache rules are returned.
        nextToken:
          type: string
          description: The nextToken value returned from a previous paginated DescribePullThroughCacheRulesRequest request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.
        maxResults:
          type: integer
          description: The maximum number of pull through cache rules returned by DescribePullThroughCacheRulesRequest in paginated output. When this parameter is used, DescribePullThroughCacheRulesRequest only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another DescribePullThroughCacheRulesRequest request with the returned nextToken value. This value can be between 1 and 1000. If this parameter is not used, then DescribePullThroughCacheRulesRequest returns up to 100 results and a nextToken value, if applicab
    DescribePullThroughCacheRulesResponse:
      type: object
      properties:
        pullThroughCacheRules:
          type: array
          items:
            $ref: '#/components/schemas/PullThroughCacheRule'
          description: The details of the pull through cache rules.
        nextToken:
          type: string
          description: The nextToken value to include in a future DescribePullThroughCacheRulesRequest request. When the results of a DescribePullThroughCacheRulesRequest request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.
    PullThroughCacheRule:
      type: object
      properties:
        ecrRepositoryPrefix:
          type: string
          description: The Amazon ECR repository prefix associated with the pull through cache rule.
        upstreamRegistryUrl:
          type: string
          description: The upstream registry URL associated with the pull through cache rule.
        createdAt:
          type: string
          format: date-time
          description: The date and time the pull through cache was created.
        registryId:
          type: string
          description: The Amazon Web Services account ID associated with the registry the pull through cache rule is associated with.
        credentialArn:
          type: string
          description: The ARN of the Secrets Manager secret associated with the pull through cache rule.
        customRoleArn:
          type: string
          description: The ARN of the IAM role associated with the pull through cache rule.
        upstreamRepositoryPrefix:
          type: string
          description: The upstream repository prefix associated with the pull through cache rule.
        upstreamRegistry:
          type: string
          enum:
          - ecr
          - ecr-public
          - quay
          - k8s
          - docker-hub
          - github-container-registry
          - azure-container-registry
          - gitlab-container-registry
          - chainguard
          description: The name of the upstream source registry associated with the pull through cache rule.
        updatedAt:
          type: string
          format: date-time
          description: The date and time, in JavaScript date format, when the pull through cache rule was last updated.
    DeletePullThroughCacheRuleResponse:
      type: object
      properties:
        ecrRepositoryPrefix:
          type: string
          description: The Amazon ECR repository prefix associated with the request.
        upstreamRegistryUrl:
          type: string
          description: The upstream registry URL associated with the pull through cache rule.
        createdAt:
          type: string
          format: date-time
          description: The timestamp associated with the pull through cache rule.
        registryId:
          type: string
          description: The registry ID associated with the request.
        credentialArn:
          type: string
          description: The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret associated with the pull through cache rule.
        customRoleArn:
          type: string
          description: The ARN of the IAM role associated with the pull through cache rule.
        upstreamRepositoryPrefix:
          type: string
          description: The upstream repository prefix associated with the pull through cache rule.
    CreatePullThroughCacheRuleRequest:
      type: object
      properties:
        ecrRepositoryPrefix:
          type: string
          description: The repository name prefix to use when caching images from the source registry. There is always an assumed / applied to the end of the prefix. If you specify ecr-public as the prefix, Amazon ECR treats that as ecr-public/.
        upstreamRegistryUrl:
          type: string
          description: The registry URL of the upstream public registry to use as the source for the pull through cache rule. The following is the syntax to use for each supported upstream registry. Amazon ECR (ecr) – .dkr.ecr..amazonaws.com Amazon ECR Public (ecr-public) – public.ecr.aws Docker Hub (docker-hub) – registry-1.docker.io GitHub Container Registry (github-container-registry) – ghcr.io GitLab Container Registry (gitlab-container-registry) – registry.gitlab.com Kubernetes (k8s) – registry.k8s.io Microsoft Azure Container Registry (azure-container-registry) – .azurecr.io Quay (quay) – quay.io
        registryId:
          type: string
          description: The Amazon Web Services account ID associated with the registry to create the pull through cache rule for. If you do not specify a registry, the default registry is assumed.
        upstreamRegistry:
          type: string
          enum:
          - ecr
          - ecr-public
          - quay
          - k8s
          - docker-hub
          - github-container-registry
          - azure-container-registry
          - gitlab-container-registry
          - chainguard
          description: The name of the upstream registry.
        credentialArn:
          type: string
          description: The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret that identifies the credentials to authenticate to the upstream registry.
        customRoleArn:
          type: string
          description: Amazon Resource Name (ARN) of the IAM role to be assumed by Amazon ECR to authenticate to the ECR upstream registry. This role must be in the same account as the registry that you are configuring.
        upstreamRepositoryPrefix:
          type: string
          description: The repository name prefix of the upstream registry to match with the upstream repository name. When this field isn't specified, Amazon ECR will use the ROOT.
      required:
      - ecrRepositoryPrefix
      - upstreamRegistryUrl
    DeletePullThroughCacheRuleRequest:
      type: object
      properties:
        ecrRepositoryPrefix:
          type: string
          description: The Amazon ECR repository prefix associated with the pull through cache rule to delete.
        registryId:
          type: string
          description: The Amazon Web Services account ID associated with the registry that contains the pull through cache rule. If you do not specify a registry, the default registry is assumed.
      required:
      - ecrRepositoryPrefix
    InvalidParameterException:
      type: object
      properties:
        message:
          type: string
          description: The error message associated with the exception.
    CreatePullThroughCacheRuleResponse:
      type: object
      properties:
        ecrRepositoryPrefix:
          type: string
          description: The Amazon ECR repository prefix associated with the pull through cache rule.
        upstreamRegistryUrl:
          type: string
          description: The upstream registry URL associated with the pull through cache rule.
        createdAt:
          type: string
          format: date-time
          description: The date and time, in JavaScript date format, when the pull through cache rule was created.
        registryId:
          type: string
          description: The registry ID associated with the request.
        upstreamRegistry:
          type: string
          enum:
          - ecr
          - ecr-public
          - quay
          - k8s
          - docker-hub
          - github-container-registry
          - azure-container-registry
          - gitlab-container-registry
          - chainguard
          description: The name of the upstream registry associated with the pull through cache rule.
        credentialArn:
          type: string
          description: The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret associated with the pull through cache rule.
        customRoleArn:
          type: string
          description: The ARN of the IAM role associated with the pull through cache rule.
        upstreamRepositoryPrefix:
          type: string
          description: The upstream repository prefix associated with the pull through cache rule.
    UpdatePullThroughCacheRuleRequest:
      type: object
      properties:
        registryId:
          type: string
          description: The Amazon Web Services account ID associated with the registry associated with the pull through cache rule. If you do not specify a registry, the default registry is assumed.
        ecrRepositoryPrefix:
          type: string
          description: The repository name prefix to use when caching images from the source registry.
        credentialArn:
          type: string
          description: The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret that identifies the credentials to authenticate to the upstream registry.
        customRoleArn:
          type: string
          description: Amazon Resource Name (ARN) of the IAM role to be assumed by Amazon ECR to authenticate to the ECR upstream registry. This role must be in the same account as the registry that you are configuring.
      required:
      - ecrRepositoryPrefix
    ValidatePullThroughCacheRuleResponse:
      type: object
      properties:
        ecrRepositoryPrefix:
          type: string
          description: The Amazon ECR repository prefix associated with the pull through cache rule.
        registryId:
          type: string
          description: The registry ID associated with the request.
        upstreamRegistryUrl:
          type: string
          description: The upstream registry URL associated with the pull through cache rule.
        credentialArn:
          type: string
          description: The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret associated with the pull through cache rule.
        customRoleArn:
          type: string
          description: The ARN of the IAM role associated with the pull through cache rule.
        upstreamRepositoryPrefix:
          type: string
          description: The upstream repository prefix associated with the pull through cache rule.
        isValid:
          type: boolean
          description: Whether or not the pull through cache rule was validated. If true, Amazon ECR was able to reach the upstream registry and authentication was successful. If false, there was an issue and validation failed. The failure reason indicates the cause.
        failure:
          type: string
          description: The reason the validation failed. For more details about possible causes and how to address them, see Using pull through cache rules in the Amazon Elastic Container Registry User Guide.
    UpdatePullThroughCacheRuleResponse:
      type: object
      properties:
        ecrRepositoryPrefix:
          type: string
          description: The Amazon ECR repository prefix associated with the pull through cache rule.
        registryId:
          type: string
          description: The registry ID associated with the request.
        updatedAt:
          type: string
          format: date-time
          description: The date and time, in JavaScript date format, when the pull through cache rule was updated.
        credentialArn:
          type: string
          description: The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret associated with the pull through cache rule.
        customRoleArn:
          type: string
          description: The ARN of the IAM role associated with the pull through cache rule.
        upstreamRepositoryPrefix:
          type: string
          description: The upstream repository prefix associated with the pull through cache rule.
    ValidatePullThroughCacheRuleRequest:
      type: object
      properties:
        ecrRepositoryPrefix:
          type: string
          description: The repository name prefix associated with the pull through cache rule.
        registryId:
          type: string
          description: The registry ID associated with the pull through cache rule. If you do not specify a registry, the default registry is assumed.
      required:
      - ecrRepositoryPrefix
  securitySchemes:
    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-provenance:
  method: harvested
  publisher: Amazon Web Services
  source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/ecr/service/2015-09-21/ecr-2015-09-21.json
  note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)