batchDeleteRecipeVersion method

Future<BatchDeleteRecipeVersionResponse> batchDeleteRecipeVersion({
  1. required String name,
  2. required List<String> recipeVersions,
})

Deletes one or more versions of a recipe at a time.

The entire request will be rejected if:

  • The recipe does not exist.
  • There is an invalid version identifier in the list of versions.
  • The version list is empty.
  • The version list size exceeds 50.
  • The version list contains duplicate entries.
The request will complete successfully, but with partial failures, if:
  • A version does not exist.
  • A version is being used by a job.
  • You specify LATEST_WORKING, but it's being used by a project.
  • The version fails to be deleted.
The LATEST_WORKING version will only be deleted if the recipe has no other versions. If you try to delete LATEST_WORKING while other versions exist (or if they can't be deleted), then LATEST_WORKING will be listed as partial failure in the response.

May throw ConflictException. May throw ResourceNotFoundException. May throw ValidationException.

Parameter name : The name of the recipe whose versions are to be deleted.

Parameter recipeVersions : An array of version identifiers, for the recipe versions to be deleted. You can specify numeric versions (X.Y) or LATEST_WORKING. LATEST_PUBLISHED is not supported.

Implementation

Future<BatchDeleteRecipeVersionResponse> batchDeleteRecipeVersion({
  required String name,
  required List<String> recipeVersions,
}) async {
  final $payload = <String, dynamic>{
    'RecipeVersions': recipeVersions,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri:
        '/recipes/${Uri.encodeComponent(name)}/batchDeleteRecipeVersion',
    exceptionFnMap: _exceptionFns,
  );
  return BatchDeleteRecipeVersionResponse.fromJson(response);
}