GetAssociatedPackageGroup - AWS CodeArtifact

GetAssociatedPackageGroup

Returns the most closely associated package group to the specified package. This API does not require that the package exist in any repository in the domain. As such, GetAssociatedPackageGroup can be used to see which package group's origin configuration applies to a package before that package is in a repository. This can be helpful to check if public packages are blocked without ingesting them.

For information package group association and matching, see Package group definition syntax and matching behavior in the CodeArtifact User Guide.

Request Syntax

GET /v1/get-associated-package-group?domain=domain&domain-owner=domainOwner&format=format&namespace=namespace&package=package HTTP/1.1

URI Request Parameters

The request uses the following URI parameters.

domain

The name of the domain that contains the package from which to get the associated package group.

Length Constraints: Minimum length of 2. Maximum length of 50.

Pattern: [a-z][a-z0-9\-]{0,48}[a-z0-9]

Required: Yes

domainOwner

The 12-digit account number of the AWS account that owns the domain. It does not include dashes or spaces.

Length Constraints: Fixed length of 12.

Pattern: [0-9]{12}

format

The format of the package from which to get the associated package group.

Valid Values: npm | pypi | maven | nuget | generic | ruby | swift | cargo

Required: Yes

namespace

The namespace of the package from which to get the associated package group. The package component that specifies its namespace depends on its type. For example:

Note

The namespace is required when getting associated package groups from packages of the following formats:

  • Maven

  • Swift

  • generic

  • The namespace of a Maven package version is its groupId.

  • The namespace of an npm or Swift package version is its scope.

  • The namespace of a generic package is its namespace.

  • Python, NuGet, Ruby, and Cargo package versions do not contain a corresponding component, package versions of those formats do not have a namespace.

Length Constraints: Minimum length of 1. Maximum length of 255.

Pattern: [^#/\s]+

package

The package from which to get the associated package group.

Length Constraints: Minimum length of 1. Maximum length of 255.

Pattern: [^#/\s]+

Required: Yes

Request Body

The request does not have a request body.

Response Syntax

HTTP/1.1 200 Content-type: application/json { "associationType": "string", "packageGroup": { "arn": "string", "contactInfo": "string", "createdTime": number, "description": "string", "domainName": "string", "domainOwner": "string", "originConfiguration": { "restrictions": { "string" : { "effectiveMode": "string", "inheritedFrom": { "arn": "string", "pattern": "string" }, "mode": "string", "repositoriesCount": number } } }, "parent": { "arn": "string", "pattern": "string" }, "pattern": "string" } }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

associationType

Describes the strength of the association between the package and package group. A strong match is also known as an exact match, and a weak match is known as a relative match.

Type: String

Valid Values: STRONG | WEAK

packageGroup

The package group that is associated with the requested package.

Type: PackageGroupDescription object

Errors

For information about the errors that are common to all actions, see Common Errors.

AccessDeniedException

The operation did not succeed because of an unauthorized access attempt.

HTTP Status Code: 403

InternalServerException

The operation did not succeed because of an error that occurred inside AWS CodeArtifact.

HTTP Status Code: 500

ResourceNotFoundException

The operation did not succeed because the resource requested is not found in the service.

HTTP Status Code: 404

ValidationException

The operation did not succeed because a parameter in the request was sent with an invalid value.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: