The Amazon Elastic Container Registry Public API contains several data types that various actions use.
This section describes each data type in detail.
Note
The order of each element in a data type structure is not guaranteed. Applications should not assume a particular order.
The following data types are supported:
• AuthorizationData (p. 71)
• Image (p. 72)
• ImageDetail (p. 74)
• ImageFailure (p. 76)
• ImageIdentifier (p. 77)
• ImageTagDetail (p. 78)
• Layer (p. 79)
• LayerFailure (p. 80)
• ReferencedImageDetail (p. 81)
• Registry (p. 83)
• RegistryAlias (p. 85)
• RegistryCatalogData (p. 87)
• Repository (p. 88)
• RepositoryCatalogData (p. 90)
• RepositoryCatalogDataInput (p. 92)
• Tag (p. 94)
AuthorizationData
AuthorizationData
An authorization token data object that corresponds to a public registry.
Contents
authorizationToken
A base64-encoded string that contains authorization data for a public Amazon ECR registry. When the string is decoded, it's presented in the format user:password for public registry authentication using docker login.
Type: String Pattern: ^\S+$
Required: No expiresAt
The Unix time in seconds and milliseconds when the authorization token expires. Authorization tokens are valid for 12 hours.
Type: Timestamp Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
Image
Image
An object that represents an Amazon ECR image.
Contents
imageId
An object that contains the image tag and image digest associated with an image.
Type: ImageIdentifier (p. 77) object Required: No
imageManifest
The image manifest that's associated with the image.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 4194304.
Required: No
imageManifestMediaType
The manifest media type of the image.
Type: String Required: No registryId
The AWS account ID that's associated with the registry containing the image.
Type: String
Length Constraints: Minimum length of 2. Maximum length of 50.
Required: No repositoryName
The name of the repository that's associated with the image.
Type: String
Length Constraints: Minimum length of 2. Maximum length of 205.
Pattern: (?:[a-z0-9]+(?:[._-][a-z0-9]+)*/)*[a-z0-9]+(?:[._-][a-z0-9]+)*
Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
See Also
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ImageDetail
ImageDetail
An object that describes an image that's returned by a DescribeImages (p. 22) operation.
Contents
artifactMediaType
The artifact media type of the image.
Type: String Required: No imageDigest
The sha256 digest of the image manifest.
Type: String Required: No
imageManifestMediaType
The media type of the image manifest.
Type: String Required: No imagePushedAt
The date and time, expressed in standard JavaScript date format, that the current image was pushed to the repository at.
Type: Timestamp Required: No imageSizeInBytes
The size, in bytes, of the image in the repository.
If the image is a manifest list, this is the max size of all manifests in the list.
NoteBeginning with Docker version 1.9, the Docker client compresses image layers before pushing them to a V2 Docker registry. The output of the docker images command shows the uncompressed image size, so it might return a larger image size than the image sizes that are returned by DescribeImages (p. 22).
Type: Long Required: No imageTags
The list of tags that's associated with this image.
Type: Array of strings
Length Constraints: Minimum length of 1. Maximum length of 300.
Required: No
See Also
registryId
The AWS account ID that's associated with the public registry where this image belongs.
Type: String
Pattern: [0-9]{12}
Required: No repositoryName
The name of the repository where this image belongs.
Type: String
Length Constraints: Minimum length of 2. Maximum length of 205.
Pattern: (?:[a-z0-9]+(?:[._-][a-z0-9]+)*/)*[a-z0-9]+(?:[._-][a-z0-9]+)*
Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ImageFailure
ImageFailure
An object that represents an Amazon ECR image failure.
Contents
failureCode
The code that's associated with the failure.
Type: String
Valid Values: InvalidImageDigest | InvalidImageTag | ImageTagDoesNotMatchDigest
| ImageNotFound | MissingDigestAndTag | ImageReferencedByManifestList | KmsError
Required: No failureReason
The reason for the failure.
Type: String Required: No imageId
The image ID that's associated with the failure.
Type: ImageIdentifier (p. 77) object Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ImageIdentifier
ImageIdentifier
An object with identifying information for an Amazon ECR image.
Contents
imageDigest
The sha256 digest of the image manifest.
Type: String Required: No imageTag
The tag that's used for the image.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 300.
Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ImageTagDetail
ImageTagDetail
An object that represents the image tag details for an image.
Contents
createdAt
The time stamp that indicates when the image tag was created.
Type: Timestamp Required: No imageDetail
An object that describes the details of an image.
Type: ReferencedImageDetail (p. 81) object Required: No
imageTag
The tag that's associated with the image.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 300.
Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
Layer
Layer
An object that represents an Amazon ECR image layer.
Contents
layerAvailability
The availability status of the image layer.
Type: String
Valid Values: AVAILABLE | UNAVAILABLE Required: No
layerDigest
The sha256 digest of the image layer.
Type: String
Pattern: [a-zA-Z0-9-_+.]+:[a-fA-F0-9]+
Required: No layerSize
The size, in bytes, of the image layer.
Type: Long Required: No mediaType
The media type of the layer, such as application/
vnd.docker.image.rootfs.diff.tar.gzip or application/
vnd.oci.image.layer.v1.tar+gzip.
Type: String Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
LayerFailure
LayerFailure
An object that represents an Amazon ECR image layer failure.
Contents
failureCode
The failure code that's associated with the failure.
Type: String
Valid Values: InvalidLayerDigest | MissingLayerDigest Required: No
failureReason
The reason for the failure.
Type: String Required: No layerDigest
The layer digest that's associated with the failure.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 1000.
Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ReferencedImageDetail
ReferencedImageDetail
An object that describes the image tag details that are returned by a DescribeImageTags (p. 26) action.
Contents
artifactMediaType
The artifact media type of the image.
Type: String Required: No imageDigest
The sha256 digest of the image manifest.
Type: String Required: No
imageManifestMediaType
The media type of the image manifest.
Type: String Required: No imagePushedAt
The date and time, expressed in standard JavaScript date format, which the current image tag was pushed to the repository at.
Type: Timestamp Required: No imageSizeInBytes
The size, in bytes, of the image in the repository.
If the image is a manifest list, this is the max size of all manifests in the list.
NoteBeginning with Docker version 1.9, the Docker client compresses image layers before pushing them to a V2 Docker registry. The output of the docker images command shows the uncompressed image size, so it might return a larger image size than the image sizes that are returned by DescribeImages (p. 22).
Type: Long Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
See Also
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
Registry
Registry
The details of a public registry.
Contents
aliases
An array of objects that represents the aliases for a public registry.
Type: Array of RegistryAlias (p. 85) objects Required: Yes
registryArn
The Amazon Resource Name (ARN) of the public registry.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 2048.
Required: Yes registryId
The AWS account ID that's associated with the registry. If you do not specify a registry, the default public registry is assumed.
Type: String
Pattern: [0-9]{12}
Required: Yes registryUri
The URI of a public registry. The URI contains a universal prefix and the registry alias.
Type: String Required: Yes verified
Indicates whether the account is a verified AWS Marketplace vendor. If an account is verified, each public repository receives a verified account badge on the Amazon ECR Public Gallery.
Type: Boolean Required: Yes
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
See Also
• AWS SDK for Ruby V3
RegistryAlias
RegistryAlias
An object representing the aliases for a public registry. A public registry is given an alias when it's created. However, a custom alias can be set using the Amazon ECR console. For more information, see Registries in the Amazon Elastic Container Registry User Guide.
Contents
defaultRegistryAlias
Indicates whether the registry alias is the default alias for the registry. When the first public repository is created, your public registry is assigned a default registry alias.
Type: Boolean Required: Yes name
The name of the registry alias.
Type: String
Length Constraints: Minimum length of 2. Maximum length of 50.
Pattern: [a-z][a-z0-9]+(?:[._-][a-z0-9]+)*
Required: Yes primaryRegistryAlias
Indicates whether the registry alias is the primary alias for the registry. If true, the alias is the primary registry alias and is displayed in both the repository URL and the image URI used in the docker pull commands on the Amazon ECR Public Gallery.
NoteA registry alias that isn't the primary registry alias can be used in the repository URI in a docker pull command.
Type: Boolean Required: Yes status
The status of the registry alias.
Type: String
Valid Values: ACTIVE | PENDING | REJECTED Required: Yes
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
See Also
• AWS SDK for Java V2
• AWS SDK for Ruby V3
RegistryCatalogData
RegistryCatalogData
The metadata for a public registry.
Contents
displayName
The display name for a public registry. This appears on the Amazon ECR Public Gallery.
Important
Only accounts that have the verified account badge can have a registry display name.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 100.
Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
Repository
Repository
An object representing a repository.
Contents
createdAt
The date and time, in JavaScript date format, when the repository was created.
Type: Timestamp Required: No registryId
The AWS account ID that's associated with the public registry that contains the repository.
Type: String
Pattern: [0-9]{12}
Required: No repositoryArn
The Amazon Resource Name (ARN) that identifies the repository. The ARN contains the arn:aws:ecr namespace, followed by the region of the repository, AWS account ID of the repository owner, repository namespace, and repository name. For example, arn:aws:ecr:region:012345678910:repository/test.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 2048.
Required: No repositoryName
The name of the repository.
Type: String
Length Constraints: Minimum length of 2. Maximum length of 205.
Pattern: (?:[a-z0-9]+(?:[._-][a-z0-9]+)*/)*[a-z0-9]+(?:[._-][a-z0-9]+)*
Required: No repositoryUri
The URI for the repository. You can use this URI for container image push and pull operations.
Type: String Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
See Also
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
RepositoryCatalogData
RepositoryCatalogData
The catalog data for a repository. This data is publicly visible in the Amazon ECR Public Gallery.
Contents
aboutText
The longform description of the contents of the repository. This text appears in the repository details on the Amazon ECR Public Gallery.
Type: String
Length Constraints: Maximum length of 25600.
Required: No architectures
The architecture tags that are associated with the repository.
Note
Only supported operating system tags appear publicly in the Amazon ECR Public Gallery.
For more information, see RepositoryCatalogDataInput (p. 92).
Type: Array of strings
Array Members: Maximum number of 50 items.
Length Constraints: Minimum length of 1. Maximum length of 50.
Required: No description
The short description of the repository.
Type: String
Length Constraints: Maximum length of 1024.
Required: No logoUrl
The URL that contains the logo that's associated with the repository.
Type: String
Length Constraints: Maximum length of 2048.
Required: No marketplaceCertified
Indicates whether the repository is certified by AWS Marketplace.
Type: Boolean Required: No operatingSystems
The operating system tags that are associated with the repository.
See Also
NoteOnly supported operating system tags appear publicly in the Amazon ECR Public Gallery.
For more information, see RepositoryCatalogDataInput (p. 92).
Type: Array of strings
Array Members: Maximum number of 50 items.
Length Constraints: Minimum length of 1. Maximum length of 50.
Required: No usageText
The longform usage details of the contents of the repository. The usage text provides context for users of the repository.
Type: String
Length Constraints: Maximum length of 25600.
Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
RepositoryCatalogDataInput
RepositoryCatalogDataInput
An object that contains the catalog data for a repository. This data is publicly visible in the Amazon ECR Public Gallery.
Contents
aboutText
A detailed description of the contents of the repository. It's publicly visible in the Amazon ECR Public Gallery. The text must be in markdown format.
Type: String
Length Constraints: Maximum length of 25600.
Required: No architectures
The system architecture that the images in the repository are compatible with. On the Amazon ECR Public Gallery, the following supported architectures appear as badges on the repository and are used as search filters.
NoteIf an unsupported tag is added to your repository catalog data, it's associated with the repository and can be retrieved using the API but isn't discoverable in the Amazon ECR Public Gallery.
• ARM
• ARM 64
• x86
• x86-64
Type: Array of strings
Array Members: Maximum number of 50 items.
Length Constraints: Minimum length of 1. Maximum length of 50.
Required: No description
A short description of the contents of the repository. This text appears in both the image details and also when searching for repositories on the Amazon ECR Public Gallery.
Type: String
Length Constraints: Maximum length of 1024.
Required: No logoImageBlob
The base64-encoded repository logo payload.
Note
The repository logo is only publicly visible in the Amazon ECR Public Gallery for verified accounts.
Type: Base64-encoded binary data object
See Also
Length Constraints: Minimum length of 0. Maximum length of 512000.
Required: No operatingSystems
The operating systems that the images in the repository are compatible with. On the Amazon ECR Public Gallery, the following supported operating systems appear as badges on the repository and are used as search filters.
NoteIf an unsupported tag is added to your repository catalog data, it's associated with the repository and can be retrieved using the API but isn't discoverable in the Amazon ECR Public Gallery.
• Linux
• Windows
Type: Array of strings
Array Members: Maximum number of 50 items.
Length Constraints: Minimum length of 1. Maximum length of 50.
Required: No usageText
Detailed information about how to use the contents of the repository. It's publicly visible in the Amazon ECR Public Gallery. The usage text provides context, support information, and additional usage details for users of the repository. The text must be in markdown format.
Type: String
Length Constraints: Maximum length of 25600.
Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
Tag
Tag
The metadata that you apply to a resource to help you categorize and organize them. Each tag consists of a key and an optional value. You define both. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters.
Contents
Key
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.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Required: No Value
The optional part of a key-value pair that make up a tag. A value acts as a descriptor within a tag category (key).
Type: String
Length Constraints: Minimum length of 0. Maximum length of 256.
Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3