deletePackage method

Future<DeletePackageResult> deletePackage({
  1. required String domain,
  2. required PackageFormat format,
  3. required String package,
  4. required String repository,
  5. String? domainOwner,
  6. String? namespace,
})

Deletes a package and all associated package versions. A deleted package cannot be restored. To delete one or more package versions, use the DeletePackageVersions API.

May throw AccessDeniedException. May throw ConflictException. May throw InternalServerException. May throw ResourceNotFoundException. May throw ThrottlingException. May throw ValidationException.

Parameter domain : The name of the domain that contains the package to delete.

Parameter format : The format of the requested package to delete.

Parameter package : The name of the package to delete.

Parameter repository : The name of the repository that contains the package to delete.

Parameter domainOwner : The 12-digit account number of the Amazon Web Services account that owns the domain. It does not include dashes or spaces.

Parameter namespace : The namespace of the package to delete. The package component that specifies its namespace depends on its type. For example:

  • 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.

Implementation

Future<DeletePackageResult> deletePackage({
  required String domain,
  required PackageFormat format,
  required String package,
  required String repository,
  String? domainOwner,
  String? namespace,
}) async {
  final $query = <String, List<String>>{
    'domain': [domain],
    'format': [format.value],
    'package': [package],
    'repository': [repository],
    if (domainOwner != null) 'domain-owner': [domainOwner],
    if (namespace != null) 'namespace': [namespace],
  };
  final response = await _protocol.send(
    payload: null,
    method: 'DELETE',
    requestUri: '/v1/package',
    queryParams: $query,
    exceptionFnMap: _exceptionFns,
  );
  return DeletePackageResult.fromJson(response);
}