

# 删除配置包
<a name="configuration-bundles-delete"></a>

删除配置包及其所有版本。删除是异步的 — API 会立即返回`DELETING`状态信息，服务会在后台删除捆绑包及其版本历史记录。

您无法删除正在进行的 A/B 测试所引用的分发包。请先停止 A/B 测试。

## 代码示例
<a name="delete-bundle-examples"></a>

**Example**  
从您的项目配置中移除该捆绑包，然后部署以传播删除内容：  

```
agentcore remove config-bundle

agentcore deploy
```
CLI 会提示您选择要删除的捆绑包。  
要以非交互方式删除特定的捆绑包（例如，在脚本中），请使用传递捆绑包名称`--name`并使用以下命令跳过确认提示：`-y`  

```
agentcore remove config-bundle --name MyBundle -y

agentcore deploy
```

```
import boto3

client = boto3.client("bedrock-agentcore-control", region_name="us-west-2")

response = client.delete_configuration_bundle(
    bundleId="myAgentConfig-a1b2c3d4e5"
)

print(f"Bundle ID: {response['bundleId']}")
print(f"Status: {response['status']}")  # DELETING
```

## 请求参数
<a name="delete-bundle-params"></a>


| 参数 | Type | 必需 | 描述 | 
| --- | --- | --- | --- | 
|  `bundleId`  | 字符串 | 是 | 要删除的配置包的 ID。作为路径参数传递。 | 

## 响应
<a name="delete-bundle-response"></a>

API 返回 HTTP 202（已接受），表示删除已排队。


| 字段 | Type | 说明 | 
| --- | --- | --- | 
|  `bundleId`  | 字符串 | 要删除的捆绑包的 ID。 | 
|  `status`  | 字符串 | 捆绑包的状态。返回 `DELETING`。 | 

## 删除行为
<a name="delete-bundle-behavior"></a>
+ 该操作是**等效**的——对已经删除的捆绑包调用 delete 会返回相同的响应而不会出现错误。
+ 所有分支中的所有版本都将随捆绑包一起删除。
+ 删除完成后，捆绑包 ID 和名称即可重复使用。
+ 如果正在进行的 A/B 测试引用了该捆绑包，则删除操作将失败，并显示为`ConflictException`。请先停止 A/B 测试。

## 错误
<a name="delete-bundle-errors"></a>


| 错误 | HTTP 状态 | 说明 | 
| --- | --- | --- | 
|  `ValidationException`  | 400 | 请求参数无效。 | 
|  `ResourceNotFoundException`  | 404 | 指定的`bundleId`不存在。 | 
|  `ConflictException`  | 409 | 该捆绑包正由其他资源（例如，正在进行的 A/B 测试）使用，无法删除。 | 
|  `AccessDeniedException`  | 403 | 权限不足。验证 IAM 策略是否包含`bedrock-agentcore:DeleteConfigurationBundle`。 | 
|  `ThrottlingException`  | 429 | 超出请求速率。使用指数回退进行重试。 | 
|  `InternalServerException`  | 500 | Service-side 错误。重试请求。 | 