The CodeArtifact 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:
• AssetSummary (p. 122)
• DomainDescription (p. 123)
• DomainSummary (p. 125)
• LicenseInfo (p. 127)
• PackageDependency (p. 128)
• PackageSummary (p. 130)
• PackageVersionDescription (p. 132)
• PackageVersionError (p. 135)
• PackageVersionSummary (p. 136)
• RepositoryDescription (p. 137)
• RepositoryExternalConnectionInfo (p. 139)
• RepositorySummary (p. 140)
• ResourcePolicy (p. 142)
• SuccessfulPackageVersionInfo (p. 143)
• Tag (p. 144)
• UpstreamRepository (p. 145)
• UpstreamRepositoryInfo (p. 146)
AssetSummary
AssetSummary
Contains details about a package version asset.
Contents
hashes
The hashes of the asset.
Type: String to string map
Valid Keys: MD5 | SHA-1 | SHA-256 | SHA-512
Value Length Constraints: Minimum length of 32. Maximum length of 512.
Value Pattern: [0-9a-f]+
Required: No name
The name of the asset.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 255.
Pattern: \P{C}+
Required: Yes size
The size of the asset.
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++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
DomainDescription
DomainDescription
Information about a domain. A domain is a container for repositories. When you create a domain, it is empty until you add one or more repositories.
Contents
arn
The Amazon Resource Name (ARN) of the domain.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 1011.
Pattern: \S+
Required: No assetSizeBytes
The total size of all assets in the domain.
Type: Long Required: No createdTime
A timestamp that represents the date and time the domain was created.
Type: Timestamp Required: No encryptionKey
The ARN of an AWS Key Management Service (AWS KMS) key associated with a domain.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 1011.
Pattern: \S+
Required: No name
The name of the domain.
Type: String
Length Constraints: Minimum length of 2. Maximum length of 50.
Pattern: [a-z][a-z0-9\-]{0,48}[a-z0-9]
Required: No owner
The AWS account ID that owns the domain.
Type: String
See Also
Length Constraints: Fixed length of 12.
Pattern: [0-9]{12}
Required: No repositoryCount
The number of repositories in the domain.
Type: Integer Required: No s3BucketArn
The Amazon Resource Name (ARN) of the Amazon S3 bucket that is used to store package assets in the domain.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 1011.
Pattern: \S+
Required: No status
The current status of a domain. The valid values are
• Active
• Deleted Type: String
Valid Values: Active | Deleted 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
DomainSummary
DomainSummary
Information about a domain, including its name, Amazon Resource Name (ARN), and status. The ListDomains operation returns a list of DomainSummary objects.
Contents
arn
The ARN of the domain.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 1011.
Pattern: \S+
Required: No createdTime
A timestamp that contains the date and time the domain was created.
Type: Timestamp Required: No encryptionKey
The key used to encrypt the domain.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 1011.
Pattern: \S+
Required: No name
The name of the domain.
Type: String
Length Constraints: Minimum length of 2. Maximum length of 50.
Pattern: [a-z][a-z0-9\-]{0,48}[a-z0-9]
Required: No owner
The 12-digit account number of the AWS account that owns the domain. It does not include dashes or spaces.
Type: String
Length Constraints: Fixed length of 12.
Pattern: [0-9]{12}
Required: No
See Also
status
A string that contains the status of the domain. The valid values are:
• Active
• Deleted Type: String
Valid Values: Active | Deleted 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
LicenseInfo
LicenseInfo
Details of the license data.
Contents
name
Name of the license.
Type: String Required: No url
The URL for license data.
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
PackageDependency
PackageDependency
Details about a package dependency.
Contents
dependencyType
The type of a package dependency. The possible values depend on the package type. Example types are compile, runtime, and test for Maven packages, and dev, prod, and optional for npm packages.
Type: String Required: No namespace
The namespace of the package. The package component that specifies its namespace depends on its type. For example:
• The namespace of a Maven package is its groupId.
• The namespace of an npm package is its scope.
• A Python package does not contain a corresponding component, so Python packages do not have a namespace.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 255.
Pattern: [^!#/\s]+
Required: No package
The name of the package that this package depends on.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 255.
Pattern: [^!#/\s]+
Required: No versionRequirement
The required version, or version range, of the package that this package depends on. The version format is specific to the package type. For example, the following are possible valid required versions: 1.2.3, ^2.3.4, or 4.x.
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
PackageSummary
PackageSummary
Details about a package, including its format, namespace, and name. The ListPackages operation returns a list of PackageSummary objects.
Contents
format
The format of the package. Valid values are:
• maven
• npm
• nuget
• pypi Type: String
Valid Values: npm | pypi | maven | nuget Required: No
namespace
The namespace of the package. The package component that specifies its namespace depends on its type. For example:
• The namespace of a Maven package is its groupId.
• The namespace of an npm package is its scope.
• A Python package does not contain a corresponding component, so Python packages do not have a namespace.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 255.
Pattern: [^!#/\s]+
Required: No package
The name of the package.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 255.
Pattern: [^!#/\s]+
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
PackageVersionDescription
PackageVersionDescription
Details about a package version.
Contents
displayName
The name of the package that is displayed. The displayName varies depending on the package version's format. For example, if an npm package is named ui, is in the namespace vue, and has the format npm, then the displayName is @vue/ui.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 255.
Required: No format
The format of the package version. The valid package formats are:
• npm: A Node Package Manager (npm) package.
• pypi: A Python Package Index (PyPI) package.
• maven: A Maven package that contains compiled code in a distributable format, such as a JAR file.
• nuget: A NuGet package.
Type: String
Valid Values: npm | pypi | maven | nuget Required: No
homePage
The homepage associated with the package.
Type: String Required: No licenses
Information about licenses associated with the package version.
Type: Array of LicenseInfo (p. 127) objects Required: No
namespace
The namespace of the package. The package component that specifies its namespace depends on its type. For example:
• The namespace of a Maven package is its groupId.
• The namespace of an npm package is its scope.
• A Python package does not contain a corresponding component, so Python packages do not have a namespace.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 255.
Contents
Pattern: [^!#/\s]+
Required: No packageName
The name of the requested package.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 255.
Pattern: [^!#/\s]+
Required: No publishedTime
A timestamp that contains the date and time the package version was published.
Type: Timestamp Required: No revision
The revision of the package version.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 50.
Pattern: \S+
Required: No sourceCodeRepository
The repository for the source code in the package version, or the source code used to build it.
Type: String Required: No status
A string that contains the status of the package version. It can be one of the following:
• Published
Valid Values: Published | Unfinished | Unlisted | Archived | Disposed | Deleted Required: No
summary
A summary of the package version. The summary is extracted from the package. The information in and detail level of the summary depends on the package version's format.
Type: String
See Also
Required: No version
The version of the package.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 255.
Pattern: [^!#/\s]+
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
PackageVersionError
PackageVersionError
An error associated with package.
Contents
errorCode
The error code associated with the error. Valid error codes are:
• ALREADY_EXISTS
• MISMATCHED_REVISION
• MISMATCHED_STATUS
• NOT_ALLOWED
• NOT_FOUND
• SKIPPED Type: String
Valid Values: ALREADY_EXISTS | MISMATCHED_REVISION | MISMATCHED_STATUS | NOT_ALLOWED | NOT_FOUND | SKIPPED
Required: No errorMessage
The error message associated with the error.
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
PackageVersionSummary
PackageVersionSummary
Details about a package version, including its status, version, and revision. The ListPackageVersions operation returns a list of PackageVersionSummary objects.
Contents
revision
The revision associated with a package version.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 50.
Pattern: \S+
Required: No status
A string that contains the status of the package version. It can be one of the following:
• Published
• Unfinished
• Unlisted
• Archived
• Disposed Type: String
Valid Values: Published | Unfinished | Unlisted | Archived | Disposed | Deleted Required: Yes
version
Information about a package version.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 255.
Pattern: [^!#/\s]+
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
• AWS SDK for Ruby V3
RepositoryDescription
RepositoryDescription
The details of a repository stored in AWS CodeArtifact. A CodeArtifact repository contains a set of package versions, each of which maps to a set of assets. Repositories are polyglot—a single repository can contain packages of any supported type. Each repository exposes endpoints for fetching and
publishing packages using tools like the npm CLI, the Maven CLI (mvn), and pip. You can create up to 100 repositories per AWS account.
Contents
administratorAccount
The 12-digit account number of the AWS account that manages the repository.
Type: String
Length Constraints: Fixed length of 12.
Pattern: [0-9]{12}
Required: No arn
The Amazon Resource Name (ARN) of the repository.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 1011.
Pattern: \S+
Required: No description
A text description of the repository.
Type: String
Length Constraints: Maximum length of 1000.
Pattern: \P{C}*
Required: No domainName
The name of the domain that contains the repository.
Type: String
Length Constraints: Minimum length of 2. Maximum length of 50.
Pattern: [a-z][a-z0-9\-]{0,48}[a-z0-9]
Required: No domainOwner
The 12-digit account number of the AWS account that owns the domain that contains the repository.
It does not include dashes or spaces.
See Also
Type: String
Length Constraints: Fixed length of 12.
Pattern: [0-9]{12}
Required: No externalConnections
An array of external connections associated with the repository.
Type: Array of RepositoryExternalConnectionInfo (p. 139) objects Required: No
name
The name of the repository.
Type: String
Length Constraints: Minimum length of 2. Maximum length of 100.
Pattern: [A-Za-z0-9][A-Za-z0-9._\-]{1,99}
Required: No upstreams
A list of upstream repositories to associate with the repository. The order of the upstream
repositories in the list determines their priority order when AWS CodeArtifact looks for a requested package version. For more information, see Working with upstream repositories.
Type: Array of UpstreamRepositoryInfo (p. 146) objects 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
RepositoryExternalConnectionInfo
RepositoryExternalConnectionInfo
Contains information about the external connection of a repository.
Contents
externalConnectionName
The name of the external connection associated with a repository.
Type: String
Pattern: [A-Za-z0-9][A-Za-z0-9._\-:]{1,99}
Required: No packageFormat
The package format associated with a repository's external connection. The valid package formats are:
• npm: A Node Package Manager (npm) package.
• pypi: A Python Package Index (PyPI) package.
• maven: A Maven package that contains compiled code in a distributable format, such as a JAR file.
• nuget: A NuGet package.
Type: String
Valid Values: npm | pypi | maven | nuget Required: No
status
The status of the external connection of a repository. There is one valid value, Available.
Type: String
Valid Values: Available 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
RepositorySummary
RepositorySummary
Details about a repository, including its Amazon Resource Name (ARN), description, and domain information. The ListRepositories operation returns a list of RepositorySummary objects.
Contents
administratorAccount
The AWS account ID that manages the repository.
Type: String
Length Constraints: Fixed length of 12.
Pattern: [0-9]{12}
Required: No arn
The ARN of the repository.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 1011.
Pattern: \S+
Required: No description
The description of the repository.
Type: String
Length Constraints: Maximum length of 1000.
Pattern: \P{C}*
Required: No domainName
The name of the domain that contains the repository.
Type: String
Length Constraints: Minimum length of 2. Maximum length of 50.
Pattern: [a-z][a-z0-9\-]{0,48}[a-z0-9]
Required: No domainOwner
The 12-digit account number of the AWS account that owns the domain. It does not include dashes or spaces.
Type: String
Length Constraints: Fixed length of 12.
See Also
Pattern: [0-9]{12}
Required: No name
The name of the repository.
Type: String
Length Constraints: Minimum length of 2. Maximum length of 100.
Pattern: [A-Za-z0-9][A-Za-z0-9._\-]{1,99}
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
ResourcePolicy
ResourcePolicy
An AWS CodeArtifact resource policy that contains a resource ARN, document details, and a revision.
Contents
document
The resource policy formatted in JSON.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 5120.
Required: No resourceArn
The ARN of the resource associated with the resource policy Type: String
Length Constraints: Minimum length of 1. Maximum length of 1011.
Pattern: \S+
Required: No revision
The current revision of the resource policy.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 100.
Pattern: \S+
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
SuccessfulPackageVersionInfo
SuccessfulPackageVersionInfo
Contains the revision and status of a package version.
Contents
revision
The revision of a package version.
Type: String Required: No status
The status of a package version. Valid statuses are:
• Published
• Unfinished
• Unlisted
• Archived
• Disposed Type: String
Valid Values: Published | Unfinished | Unlisted | Archived | Disposed | Deleted 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
A tag is a key-value pair that can be used to manage, search for, or filter resources in AWS CodeArtifact.
Contents
key
The tag key.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Required: Yes value
The tag value.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 256.
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
• AWS SDK for Ruby V3
UpstreamRepository
UpstreamRepository
Information about an upstream repository. A list of UpstreamRepository objects is an input parameter to CreateRepository and UpdateRepository.
Contents
repositoryName
The name of an upstream repository.
Type: String
Length Constraints: Minimum length of 2. Maximum length of 100.
Pattern: [A-Za-z0-9][A-Za-z0-9._\-]{1,99}
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
• AWS SDK for Ruby V3
UpstreamRepositoryInfo
UpstreamRepositoryInfo
Information about an upstream repository.
Contents
repositoryName
The name of an upstream repository.
Type: String
Length Constraints: Minimum length of 2. Maximum length of 100.
Pattern: [A-Za-z0-9][A-Za-z0-9._\-]{1,99}
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