---
updatedAt: 2025-11-12T01:01:00.000Z
agentTools:
  projectIndex: https://public.docs.kivera.io/llms.txt
---

# ECR-PUBLIC

<Embed url="https://docs.aws.amazon.com/" title="AWS documentation" provider="docs.aws.amazon.com" href="https://docs.aws.amazon.com/" />

# BatchCheckLayerAvailability

```erlang
valid {
    input.Body.registryId == STRING
    input.Body.repositoryName == STRING
    input.Body.layerDigests[_] == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# BatchDeleteImage

```erlang
valid {
    input.Body.registryId == STRING
    input.Body.repositoryName == STRING
    input.Body.imageIds[_].imageDigest == STRING
    input.Body.imageIds[_].imageTag == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CompleteLayerUpload

```erlang
valid {
    input.Body.registryId == STRING
    input.Body.repositoryName == STRING
    input.Body.uploadId == STRING
    input.Body.layerDigests[_] == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# CreateRepository

```erlang
valid {
    input.Body.repositoryName == STRING
    input.Body.catalogData.description == STRING
    input.Body.catalogData.architectures[_] == STRING
    input.Body.catalogData.operatingSystems[_] == STRING
    input.Body.catalogData.logoImageBlob == BLOB
    input.Body.catalogData.aboutText == STRING
    input.Body.catalogData.usageText == STRING
    input.Body.tags[_].Key == STRING
    input.Body.tags[_].Value == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DeleteRepository

```erlang
valid {
    input.Body.registryId == STRING
    input.Body.repositoryName == STRING
    input.Body.force == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DeleteRepositoryPolicy

```erlang
valid {
    input.Body.registryId == STRING
    input.Body.repositoryName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DescribeImageTags

```erlang
valid {
    input.Body.registryId == STRING
    input.Body.repositoryName == STRING
    input.Body.nextToken == STRING
    input.Body.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DescribeImages

```erlang
valid {
    input.Body.registryId == STRING
    input.Body.repositoryName == STRING
    input.Body.imageIds[_].imageDigest == STRING
    input.Body.imageIds[_].imageTag == STRING
    input.Body.nextToken == STRING
    input.Body.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DescribeRegistries

```erlang
valid {
    input.Body.nextToken == STRING
    input.Body.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# DescribeRepositories

```erlang
valid {
    input.Body.registryId == STRING
    input.Body.repositoryNames[_] == STRING
    input.Body.nextToken == STRING
    input.Body.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetAuthorizationToken

```erlang
valid {
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetRegistryCatalogData

```erlang
valid {
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetRepositoryCatalogData

```erlang
valid {
    input.Body.registryId == STRING
    input.Body.repositoryName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# GetRepositoryPolicy

```erlang
valid {
    input.Body.registryId == STRING
    input.Body.repositoryName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# InitiateLayerUpload

```erlang
valid {
    input.Body.registryId == STRING
    input.Body.repositoryName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# ListTagsForResource

```erlang
valid {
    input.Body.resourceArn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# PutImage

```erlang
valid {
    input.Body.registryId == STRING
    input.Body.repositoryName == STRING
    input.Body.imageManifest == STRING
    input.Body.imageManifestMediaType == STRING
    input.Body.imageTag == STRING
    input.Body.imageDigest == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# PutRegistryCatalogData

```erlang
valid {
    input.Body.displayName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# PutRepositoryCatalogData

```erlang
valid {
    input.Body.registryId == STRING
    input.Body.repositoryName == STRING
    input.Body.catalogData.description == STRING
    input.Body.catalogData.architectures[_] == STRING
    input.Body.catalogData.operatingSystems[_] == STRING
    input.Body.catalogData.logoImageBlob == BLOB
    input.Body.catalogData.aboutText == STRING
    input.Body.catalogData.usageText == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# SetRepositoryPolicy

```erlang
valid {
    input.Body.registryId == STRING
    input.Body.repositoryName == STRING
    input.Body.policyText == STRING
    input.Body.force == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# TagResource

```erlang
valid {
    input.Body.resourceArn == STRING
    input.Body.tags[_].Key == STRING
    input.Body.tags[_].Value == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# UntagResource

```erlang
valid {
    input.Body.resourceArn == STRING
    input.Body.tagKeys[_] == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```

# UploadLayerPart

```erlang
valid {
    input.Body.registryId == STRING
    input.Body.repositoryName == STRING
    input.Body.uploadId == STRING
    input.Body.partFirstByte == LONG
    input.Body.partLastByte == LONG
    input.Body.layerPartBlob == BLOB
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}
```