
# 更新网关 - UpdateCoreIngress
#### 功能介绍
该接口用于根据ingress_id更新Ingress的配置信息。（异步接口）
**适用场景**：
修改Ingress的描述信息。
启用或禁用公网访问。
**异步任务确认方式**：
调用更新接口后，通过查询Ingress详情接口（GET /v1/core/ingresses/{ingress_id}）查询status字段，当status变为ACTIVE时表示更新成功，变为FAILED时表示更新失败。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-agentarts/agentarts_07_0003.html)。
#### 授权信息
账号根用户具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备如下身份策略权限，更多的权限说明请参见[权限和授权项](https://support.huaweicloud.com/api-agentarts/Permission.html)。
| 授权项                          | 访问级别  | 资源类型（\*为必须） | 条件键                                | 别名 | 依赖的授权项                       |
|:---|:---|:---|:---|:---|:---|
| agentarts::updateCoreIngress | Write | instance \* | -                                  | -  | agentnetwork:instance:update |
| agentarts::updateCoreIngress | Write | -           | agentarts:AllowIngressPublicAccess | -  | agentnetwork:instance:update |
   
#### URI
PUT /v1/core/ingresses/{ingress_id}
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|:---|
| ingress_id | 是    | String | **参数解释**： Ingress ID，用于唯一标识一个Ingress实例。获取方式：通过创建网关接口返回的id字段获取，或通过查询网关列表接口获取。 **约束限制**: 不涉及。 **取值范围**： 匹配标准的UUID格式，符合正则条件\[a-fA-F0-9\]{8}-\[a-fA-F0-9\]{4}-\[a-fA-F0-9\]{4}-\[a-fA-F0-9\]{4}-\[a-fA-F0-9\]{12}。 **默认取值**: 不涉及。 |
   
#### 请求参数
表2请求Body参数 
| 参数                    | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| description           | 否    | String  | **参数解释**： Ingress描述信息，用于补充说明Ingress的用途或备注。 **约束限制**： 不涉及。 **取值范围**： 长度为 0 - 255 个字符。 **默认取值**： 不涉及。               |
| enable_public_network | 否    | Boolean | **参数解释**： 是否启用公网访问，启用后将自动分配公网访问地址，禁用后将释放公网访问地址。 **约束限制**： 不涉及。 **取值范围**： true：启用公网访问，false：禁用公网访问。 **默认取值**： 不涉及。 |
   
#### 响应参数
**状态码：202**
表3响应Body参数 
| 参数                    | 参数类型    | 描述                                                                                                                                                                                                                        |
|:---|:---|:---|
| id                    | String  | **参数解释**: Ingress ID，用于唯一标识一个Ingress实例。 **取值范围**： 匹配标准的UUID格式（8-4-4-4-12的十六进制数字串，由连字符分隔）。                  |
| name                  | String  | **参数解释**: Ingress名称，同一账号下名称不可重复。 **取值范围**： 以字母开头，长度为 2 - 48 个字符，可包含小写字母、数字和中划线。                            |
| description           | String  | **参数解释**: Ingress描述。 **取值范围**： 长度为 0 - 255 个字符。                                                            |
| status                | String  | **参数解释**: Ingress状态。 **取值范围**： PENDING：操作进行中；ACTIVE：已就绪；FAILED：操作失败；DELETE_FAILED：删除失败；UPDATE_FAILED：更新失败。 |
| enable_public_network | Boolean | **参数解释**: 是否启用公网访问。 **取值范围**： true：启用公网访问；false：不启用公网访问。                                                   |
| public_domain_name    | String  | **参数解释**: 公网域名，创建完成后自动赋值，仅当enable_public_network为true时有值。 **取值范围**： 长度为 1 - 512 个字符。                       |
| created_at            | String  | **参数解释**: 资源创建时间，UTC时间格式，格式为YYYY-MM-DDTHH:mm:ssZ，由系统自动生成。 **取值范围**： UTC时间格式，格式为YYYY-MM-DDTHH:mm:ssZ。       |
| updated_at            | String  | **参数解释**: 资源最后更新时间，UTC时间格式，格式为YYYY-MM-DDTHH:mm:ssZ，由系统自动生成。 **取值范围**： UTC时间格式，格式为YYYY-MM-DDTHH:mm:ssZ。     |
   
**状态码：400**
表4响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                                                                  |
|:---|:---|:---|
| error_code | String | **参数解释**： 错误码。枚举值说明：AgentArts.03000400表示客户端请求参数错误。 **取值范围**： 固定值：AgentArts.03000400。 |
| error_msg  | String | **参数解释**： 错误详细信息。 **取值范围**： 长度为1-512个字符。                                             |
   
**状态码：401**
表5响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                                                        |
|:---|:---|:---|
| error_code | String | **参数解释**: 错误码。枚举值说明：AgentArts.03000401表示未授权（认证令牌缺失、无效或已过期）。 **取值范围**: 不涉及。 |
| error_msg  | String | **参数解释**： 错误详细信息。 **取值范围**： 长度为 1 - 512 个字符。                               |
   
**状态码：403**
表6响应Body参数 
| 参数                          | 参数类型                                                                                   | 描述                                                                                                                                                                                                      |
|:---|:---|:---|
| error_code                  | String                                                                                 | **参数解释**： 错误码。枚举值说明：AgentArts.03000403表示禁止访问（认证后权限不足）。 **取值范围**： 固定值：AgentArts.03000403。 |
| error_msg                   | String                                                                                 | **参数解释**： 错误详细信息。 **取值范围**： 长度为 1 - 512 个字符。                                             |
| coded_authorization_message | String                                                                                 | **参数解释**： IAM5 当OpenAPI无权限时报错信息。 **取值范围**： 长度为 1 - 1024 个字符。                             |
| details                     | Array of [CoreRunErrorDetail] objects | **参数解释**： 依赖的下游服务错误信息列表。 **取值范围**： 最小数量 0，最大数量 10。                                       |
   
 表7CoreRunErrorDetail 
| 参数         | 参数类型   | 描述                                                                                                                                                         |
|:---|:---|:---|
| error_code | String | **参数解释**： 错误码。 **取值范围**： 长度为 18 个字符。        |
| error_msg  | String | **参数解释**： 错误信息。 **取值范围**： 长度为 1 - 1024 个字符。 |
   
**状态码：404**
表8响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                                                              |
|:---|:---|:---|
| error_code | String | **参数解释**： 错误码。枚举值说明：AgentArts.03000404表示资源不存在。 **取值范围**： 固定值：AgentArts.03000404。 |
| error_msg  | String | **参数解释**： 错误详细信息。 **取值范围**： 长度为 1 - 512 个字符。                                     |
   
**状态码：409**
表9响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                                                             |
|:---|:---|:---|
| error_code | String | **参数解释**： 错误码。枚举值说明：AgentArts.03000409表示资源冲突。 **取值范围**： 固定值：AgentArts.03000409。 |
| error_msg  | String | **参数解释**： 错误详细信息。 **取值范围**： 长度为 1 - 512 个字符。                                    |
   
**状态码：429**
表10响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                                                                     |
|:---|:---|:---|
| error_code | String | **参数解释**： 错误码。枚举值说明：AgentArts.03000429表示请求过于频繁（触发限流）。 **取值范围**： 固定值：AgentArts.03000429。 |
| error_msg  | String | **参数解释**： 错误详细信息。 **取值范围**： 长度为 1 - 512 个字符。                                            |
   
**状态码：500**
表11响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                                                                |
|:---|:---|:---|
| error_code | String | **参数解释**： 错误码。枚举值说明：AgentArts.03000500表示服务器内部错误。 **取值范围**： 固定值：AgentArts.03000500。 |
| error_msg  | String | **参数解释**： 错误详细信息。 **取值范围**： 长度为 1 - 512 个字符。                                       |
   
#### 请求示例
```
PUT https://{Endpoint}/v1/core/ingresses/{ingress_id}
```
#### 响应示例
**状态码：202**
更新成功，返回Ingress信息。
```
{
  "id" : "a3bad420-33b8-4e26-e99b-bdf67aa8e72b",
  "name" : "test-ingress",
  "description" : "updated description",
  "status" : "PENDING",
  "enable_public_network" : false,
  "public_domain_name" : "www.public.com",
  "created_at" : "2023-01-01T01:01:01Z",
  "updated_at" : "2023-01-02T02:02:02Z"
}
```
#### 状态码
| 状态码 | 描述                       |
|:---|:---|
| 202 | 更新成功，返回Ingress信息。        |
| 400 | 请求参数错误。                  |
| 401 | 未授权（认证令牌缺失、无效或已过期）。      |
| 403 | 禁止访问（认证后权限不足、配额不足）。      |
| 404 | 资源不存在（指定的ingress_id未找到）。 |
| 409 | 资源冲突。                    |
| 429 | 请求过于频繁（触发限流）。            |
| 500 | 服务器内部错误。                 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-agentarts/ErrorCode.html)。
