Amazon CodeArtifact Codeartifact Operations API
The Codeartifact Operations API from Amazon CodeArtifact — 6 operation(s) for codeartifact operations.
The Codeartifact Operations API from Amazon CodeArtifact — 6 operation(s) for codeartifact operations.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/amazon-codeartifact:amazon-codeartifact-operations-api"
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.
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: 3.2.0
info:
title: CodeArtifact Operations API
version: '2018-09-22'
description: Generated from AWS's published Smithy model for CodeArtifact. 6 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://codeartifact.{region}.amazonaws.com
variables:
region:
default: us-east-1
security:
- sigv4: []
tags:
- name: Operations
paths:
/v1/package-groups:
post:
operationId: ListPackageGroups
summary: List Package Groups
description: Returns a list of package groups in the requested domain.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ListPackageGroupsResult'
'403':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'429':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'400':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ListPackageGroupsRequest'
tags:
- Operations
/v1/package-groups/sub-groups:
post:
operationId: ListSubPackageGroups
summary: List Sub Package Groups
description: Returns a list of direct children of the specified package group. For information package group hierarchy, see Package group definition syntax and matching behavior in the CodeArtifact User Guide.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ListSubPackageGroupsResult'
'403':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'429':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'400':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ListSubPackageGroupsRequest'
tags:
- Operations
/v1/get-associated-package-group:
get:
operationId: GetAssociatedPackageGroup
summary: Get Associated Package Group
description: 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.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/GetAssociatedPackageGroupResult'
'403':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'400':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/GetAssociatedPackageGroupRequest'
tags:
- Operations
/v1/package-group-allowed-repositories:
get:
operationId: ListAllowedRepositoriesForGroup
summary: List Allowed Repositories For Group
description: Lists the repositories in the added repositories list of the specified restriction type for a package group. For more information about restriction types and added repository lists, see Package group origin controls in the CodeArtifact User Guide.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ListAllowedRepositoriesForGroupResult'
'403':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'402':
description: ServiceQuotaExceededException
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceQuotaExceededException'
'429':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'400':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ListAllowedRepositoriesForGroupRequest'
tags:
- Operations
/v1/list-associated-packages:
get:
operationId: ListAssociatedPackages
summary: List Associated Packages
description: Returns a list of packages associated with the requested package group. For information package group association and matching, see Package group definition syntax and matching behavior in the CodeArtifact User Guide.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ListAssociatedPackagesResult'
'403':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'400':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ListAssociatedPackagesRequest'
tags:
- Operations
/v1/package-group-origin-configuration:
put:
operationId: UpdatePackageGroupOriginConfiguration
summary: Update Package Group Origin Configuration
description: Updates the package origin configuration for a package group. The package origin configuration determines how new versions of a package can be added to a repository. You can allow or block direct publishing of new package versions, or ingestion and retaining of new package versions from an external connection or upstream source. For more information about package group origin controls and configuration, see Package group origin controls in the CodeArtifact User Guide.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/UpdatePackageGroupOriginConfigurationResult'
'403':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'402':
description: ServiceQuotaExceededException
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceQuotaExceededException'
'429':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'400':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdatePackageGroupOriginConfigurationRequest'
tags:
- Operations
components:
schemas:
PackageGroupReference:
type: object
properties:
arn:
type: string
description: The ARN of the package group.
pattern:
type: string
description: The pattern of the package group. The pattern determines which packages are associated with the package group, and is also the identifier of the package group.
AssociatedPackage:
type: object
properties:
format:
type: string
enum:
- npm
- pypi
- maven
- nuget
- generic
- ruby
- swift
- cargo
description: A format that specifies the type of the associated package.
namespace:
type: string
description: 'The namespace of the associated package. The package component that specifies its namespace depends on its type. For example: 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.'
package:
type: string
description: The name of the associated package.
associationType:
type: string
enum:
- STRONG
- WEAK
description: Describes the strength of the association between the package and package group. A strong match can be thought of as an exact match, and a weak match can be thought of as a variation match, for example, the package name matches a variation of the package group pattern. For more information about package group pattern matching, including strong and weak matches, see Package group definition syntax and matching behavior in the CodeArtifact User Guide.
GetAssociatedPackageGroupResult:
type: object
properties:
packageGroup:
$ref: '#/components/schemas/PackageGroupDescription'
associationType:
type: string
enum:
- STRONG
- WEAK
description: 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.
PackageGroupSummary:
type: object
properties:
arn:
type: string
description: The ARN of the package group.
pattern:
type: string
description: The pattern of the package group. The pattern determines which packages are associated with the package group.
domainName:
type: string
description: The domain that contains the package group.
domainOwner:
type: string
description: The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces.
createdTime:
type: string
format: date-time
description: A timestamp that represents the date and time the repository was created.
contactInfo:
type: string
description: The contact information of the package group.
description:
type: string
description: The description of the package group.
originConfiguration:
$ref: '#/components/schemas/PackageGroupOriginConfiguration'
parent:
$ref: '#/components/schemas/PackageGroupReference'
ListPackageGroupsRequest:
type: object
properties:
domain:
type: string
description: The domain for which you want to list package groups.
domainOwner:
type: string
description: The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces.
maxResults:
type: integer
description: The maximum number of results to return per page.
nextToken:
type: string
description: The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
prefix:
type: string
description: A prefix for which to search package groups. When included, ListPackageGroups will return only package groups with patterns that match the prefix.
required:
- domain
ResourceNotFoundException:
type: object
properties:
message:
type: string
resourceId:
type: string
description: The ID of the resource.
resourceType:
type: string
enum:
- domain
- repository
- package
- package-version
- asset
description: The type of Amazon Web Services resource.
required:
- message
PackageGroupOriginConfiguration:
type: object
properties:
restrictions:
type: object
additionalProperties:
$ref: '#/components/schemas/PackageGroupOriginRestriction'
description: The origin configuration settings that determine how package versions can enter repositories.
GetAssociatedPackageGroupRequest:
type: object
properties:
domain:
type: string
description: The name of the domain that contains the package from which to get the associated package group.
domainOwner:
type: string
description: The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces.
format:
type: string
enum:
- npm
- pypi
- maven
- nuget
- generic
- ruby
- swift
- cargo
description: The format of the package from which to get the associated package group.
namespace:
type: string
description: '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: 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 na'
package:
type: string
description: The package from which to get the associated package group.
required:
- domain
- format
- package
PackageGroupDescription:
type: object
properties:
arn:
type: string
description: The ARN of the package group.
pattern:
type: string
description: The pattern of the package group. The pattern determines which packages are associated with the package group.
domainName:
type: string
description: The name of the domain that contains the package group.
domainOwner:
type: string
description: The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces.
createdTime:
type: string
format: date-time
description: A timestamp that represents the date and time the package group was created.
contactInfo:
type: string
description: The contact information of the package group.
description:
type: string
description: The description of the package group.
originConfiguration:
$ref: '#/components/schemas/PackageGroupOriginConfiguration'
parent:
$ref: '#/components/schemas/PackageGroupReference'
ListPackageGroupsResult:
type: object
properties:
packageGroups:
type: array
items:
$ref: '#/components/schemas/PackageGroupSummary'
description: The list of package groups in the requested domain.
nextToken:
type: string
description: The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
UpdatePackageGroupOriginConfigurationResult:
type: object
properties:
packageGroup:
$ref: '#/components/schemas/PackageGroupDescription'
allowedRepositoryUpdates:
type: object
additionalProperties:
type: object
additionalProperties:
type: array
items:
type: string
description: Information about the updated allowed repositories after processing the request.
ThrottlingException:
type: object
properties:
message:
type: string
retryAfterSeconds:
type: integer
description: The time period, in seconds, to wait before retrying the request.
required:
- message
PackageGroupAllowedRepository:
type: object
properties:
repositoryName:
type: string
description: The name of the allowed repository.
originRestrictionType:
type: string
enum:
- EXTERNAL_UPSTREAM
- INTERNAL_UPSTREAM
- PUBLISH
description: The origin configuration restriction type of the allowed repository.
ListAssociatedPackagesRequest:
type: object
properties:
domain:
type: string
description: The name of the domain that contains the package group from which to list associated packages.
domainOwner:
type: string
description: The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces.
packageGroup:
type: string
description: The pattern of the package group from which to list associated packages.
maxResults:
type: integer
description: The maximum number of results to return per page.
nextToken:
type: string
description: The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
preview:
type: boolean
description: When this flag is included, ListAssociatedPackages will return a list of packages that would be associated with a package group, even if it does not exist.
required:
- domain
- packageGroup
ValidationException:
type: object
properties:
message:
type: string
reason:
type: string
enum:
- CANNOT_PARSE
- ENCRYPTION_KEY_ERROR
- FIELD_VALIDATION_FAILED
- UNKNOWN_OPERATION
- OTHER
required:
- message
ListAssociatedPackagesResult:
type: object
properties:
packages:
type: array
items:
$ref: '#/components/schemas/AssociatedPackage'
description: The list of packages associated with the requested package group.
nextToken:
type: string
description: The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
ListSubPackageGroupsResult:
type: object
properties:
packageGroups:
type: array
items:
$ref: '#/components/schemas/PackageGroupSummary'
description: A list of sub package groups for the requested package group.
nextToken:
type: string
description: If there are additional results, this is the token for the next set of results.
ServiceQuotaExceededException:
type: object
properties:
message:
type: string
resourceId:
type: string
description: The ID of the resource.
resourceType:
type: string
enum:
- domain
- repository
- package
- package-version
- asset
description: The type of Amazon Web Services resource.
required:
- message
ListAllowedRepositoriesForGroupRequest:
type: object
properties:
domain:
type: string
description: The name of the domain that contains the package group from which to list allowed repositories.
domainOwner:
type: string
description: The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces.
packageGroup:
type: string
description: The pattern of the package group from which to list allowed repositories.
originRestrictionType:
type: string
enum:
- EXTERNAL_UPSTREAM
- INTERNAL_UPSTREAM
- PUBLISH
description: The origin configuration restriction type of which to list allowed repositories.
maxResults:
type: integer
description: The maximum number of results to return per page.
nextToken:
type: string
description: The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
required:
- domain
- packageGroup
- originRestrictionType
AccessDeniedException:
type: object
properties:
message:
type: string
required:
- message
InternalServerException:
type: object
properties:
message:
type: string
required:
- message
ListAllowedRepositoriesForGroupResult:
type: object
properties:
allowedRepositories:
type: array
items:
type: string
description: The list of allowed repositories for the package group and origin configuration restriction type.
nextToken:
type: string
description: The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
UpdatePackageGroupOriginConfigurationRequest:
type: object
properties:
domain:
type: string
description: The name of the domain which contains the package group for which to update the origin configuration.
domainOwner:
type: string
description: The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces.
packageGroup:
type: string
description: The pattern of the package group for which to update the origin configuration.
restrictions:
type: object
additionalProperties:
type: string
enum:
- ALLOW
- ALLOW_SPECIFIC_REPOSITORIES
- BLOCK
- INHERIT
description: The origin configuration settings that determine how package versions can enter repositories.
addAllowedRepositories:
type: array
items:
$ref: '#/components/schemas/PackageGroupAllowedRepository'
description: The repository name and restrictions to add to the allowed repository list of the specified package group.
removeAllowedRepositories:
type: array
items:
$ref: '#/components/schemas/PackageGroupAllowedRepository'
description: The repository name and restrictions to remove from the allowed repository list of the specified package group.
required:
- domain
- packageGroup
PackageGroupOriginRestriction:
type: object
properties:
mode:
type: string
enum:
- ALLOW
- ALLOW_SPECIFIC_REPOSITORIES
- BLOCK
- INHERIT
description: The package group origin restriction setting. If the value of mode is ALLOW, ALLOW_SPECIFIC_REPOSITORIES, or BLOCK, then the value of effectiveMode is the same. Otherwise, when the value is INHERIT, then the value of effectiveMode is the value of mode of the first parent group which does not have a value of INHERIT.
effectiveMode:
type: string
enum:
- ALLOW
- ALLOW_SPECIFIC_REPOSITORIES
- BLOCK
- INHERIT
description: The effective package group origin restriction setting. If the value of mode is ALLOW, ALLOW_SPECIFIC_REPOSITORIES, or BLOCK, then the value of effectiveMode is the same. Otherwise, when the value of mode is INHERIT, then the value of effectiveMode is the value of mode of the first parent group which does not have a value of INHERIT.
inheritedFrom:
$ref: '#/components/schemas/PackageGroupReference'
repositoriesCount:
type: integer
description: The number of repositories in the allowed repository list.
ListSubPackageGroupsRequest:
type: object
properties:
domain:
type: string
description: The name of the domain which contains the package group from which to list sub package groups.
domainOwner:
type: string
description: The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces.
packageGroup:
type: string
description: The pattern of the package group from which to list sub package groups.
maxResults:
type: integer
description: The maximum number of results to return per page.
nextToken:
type: string
description: The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
required:
- domain
- packageGroup
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: codeartifact
x-provenance:
method: harvested
publisher: Amazon Web Services
source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/codeartifact/service/2018-09-22/codeartifact-2018-09-22.json
note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)