
# 更新路由表 - UpdateRouteTable
#### 功能介绍
更新路由表。
#### 调试
您可以在[API Explorer](https://apiexplorer.developer.huaweicloud.com/apiexplorer/doc?product=VPC&version=v2&api=UpdateRouteTable)中调试该接口。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-vpc/vpc_permission_0000.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                    | 访问级别  | 资源类型（\*为必须）   | 条件键                                                                                                                                                                                                                                                                                                                                                                                                         | 别名 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | vpc:routeTables:update | Write | routeTable \* | - vpc:RouteTableId  - vpc:VpcId  - [g:EnterpriseProjectId](https://support.huaweicloud.com/usermanual-iam5/iam_01_1287.html)   | -  | -      |
     
  
 
#### URI
PUT /v1/{project_id}/routetables/{routetable_id}
参数说明请参见[表1]。
 表1参数说明 
| 名称            | 是否必选 | 参数类型   | 说明                                                                           |
|:---|:---|:---|:---|
| project_id    | 是    | String | 项目ID，请参见[获取项目ID](https://support.huaweicloud.com/api-vpc/vpc_api_0011.html)。 |
| routetable_id | 是    | String | 路由表ID，路由表唯一标识。                                                               |
   
#### 请求参数
表2请求参数 
| 名称         | 是否必选 | 参数类型                                                          | 说明                                                      |
|:---|:---|:---|:---|
| routetable | 是    | [routetable] object | 路由表对象，参见[表3]。 |
   
 表3routetable字段说明 
| 名称          | 是否必选 | 参数类型                                                                                 | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| name        | 否    | String                                                                               | - 功能说明：路由表名称。  - 取值范围：1-64个字符，支持数字、字母、中文字符、_(下划线)、-（中划线）、.（点）。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| description | 否    | String                                                                               | - 功能描述：路由的描述信息。  - 取值范围：0-255个字符，不能包含"\<"和"\>"。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| routes      | 否    | [RouteTableRouteAction] object | - 功能说明：路由对象，参见[表4]。  - 约束： - 每个路由表最大关联200条路由。  - 不支持直接修改destination，如需修改，只能使用del先删除对应路由，然后使用add新增路由。    - 动作： - add：新增路由条目，type，destination，nexthop必选。  - mod：修改路由信息，type，destination，nexthop必选。  - del：删除路由条目，destination必选。     |
   
 表4route字段操作说明 
| 参数  | 是否必选 | 参数类型                                                                              | 说明                                                                                                                                        |
|:---|:---|:---|:---|
| add | 否    | Array of [AddRouteTableRoute] objects | 新增路由条目，参见[表5 新增route字段说明]。 type，destination，nexthop必选。 |
| mod | 否    | Array of [ModRouteTableRoute] objects  | 修改路由条目，参见[表6 修改route字段说明]。 type，destination，nexthop必选。  |
| del | 否    | Array of [DelRouteTableRoute] objects    | 删除路由条目，参见[表7 删除route字段说明]。 destination必选。                 |
   
 表5新增route字段说明 
| 名称          | 是否必选 | 参数类型   | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
|:---|:---|:---|:---|
| type        | 是    | String | - 功能说明：路由的类型。  - 取值范围： - ecs：弹性云服务器  - eni：网卡  - vip：虚拟IP  - nat：NAT网关  - peering：对等连接  - vpn：虚拟专用网络  - dc：云专线  - cc：云连接  - egw：VPC终端节点  - er：企业路由器  - subeni：辅助弹性网卡  - local：保留网段，用户下发路由的目的网段不能和local类型路由的目的网段有重叠                                |
| destination | 是    | String | - 功能说明：路由目的网段。  - 约束：合法的IPv4和IPv6 CIDR格式。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| nexthop     | 是    | String | - 功能说明：路由下一跳对象的ID。  - 取值范围： - 当type为ecs时，传入ecs实例ID；  - 当type为eni时，取值为从网卡ID；  - 当type为vip时，取值为vip对应的IP地址；  - 当type为nat时，取值为nat实例对应的ID；  - 当type为peering时，取值为peering对应实例ID；  - 当type为vpn时，取值为vpn实例ID；  - 当type为dc时，取值为dc实例ID;  - 当type为cc时，取值为cc的实例ID；  - 当type为egw时，取值为vpc终端节点的实例ID；  - 当type为er时，取值为企业路由器的实例ID；  - 当type为subeni时，取值为辅助弹性网卡的实例ID；     |
| description | 否    | String | - 功能说明：路由的描述信息。  - 取值范围：0-255个字符，不能包含"\<"和"\>"。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
   
 表6修改route字段说明 
| 参数          | 是否必选 | 参数类型   | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
|:---|:---|:---|:---|
| type        | 是    | String | - 功能说明：路由的类型。  - 取值范围： - ecs：弹性云服务器  - eni：网卡  - vip：虚拟IP  - nat：NAT网关  - peering：对等连接  - vpn：虚拟专用网络  - dc：云专线  - cc：云连接  - egw：VPC终端节点  - er：企业路由器  - subeni：辅助弹性网卡  - local：保留网段，用户下发路由的目的网段不能和local类型路由的目的网段有重叠      |
| destination | 是    | String | - 功能说明：路由目的网段。  - 约束：合法的IPv4和IPv6 CIDR格式。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| nexthop     | 是    | String | - 功能说明：路由下一跳对象的ID。  - 取值范围： - 当type为ecs时，传入ecs实例ID；  - 当type为eni时，取值为从网卡ID；  - 当type为vip时，取值为vip对应的IP地址；  - 当type为nat时，取值为nat实例对应的ID；  - 当type为peering时，取值为peering对应实例ID；  - 当type为vpn时，取值为vpn实例ID；  - 当type为dc时，取值为dc实例ID;  - 当type为cc时，取值为cc的实例ID；  - 当type为egw时，取值为vpc终端节点的实例ID；  - 当type为er时，取值为企业路由器的实例ID；  - 当type为subeni时，取值为辅助弹性网卡的实例ID；     |
| description | 否    | String | - 功能说明：路由的描述信息。  - 取值范围：0-255个字符，不能包含"\<"和"\>"。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
   
 表7删除route字段说明 
| 参数          | 是否必选 | 参数类型   | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|:---|
| type        | 否    | String | - 功能说明：路由的类型。  - 取值范围： - ecs：弹性云服务器  - eni：网卡  - vip：虚拟IP  - nat：NAT网关  - peering：对等连接  - vpn：虚拟专用网络  - dc：云专线  - cc：云连接  - egw：VPC终端节点  - er：企业路由器  - subeni：辅助弹性网卡  - local：保留网段，用户下发路由的目的网段不能和local类型路由的目的网段有重叠         |
| destination | 是    | String | - 功能说明：路由目的网段。  - 约束：合法的IPv4和IPv6 CIDR格式。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| nexthop     | 否    | String | - 功能说明：路由下一跳对象的ID。  - 取值范围： - 当type为ecs时，传入ecs实例ID；  - 当type为eni时，取值为从网卡ID；  - 当type为vip时，取值为vip对应的IP地址；  - 当type为nat时，取值为nat实例对应的ID；  - 当type为peering时，取值为peering对应实例ID；  - 当type为vpn时，取值为vpn实例ID；  - 当type为dc时，取值为dc实例ID;  - 当type为cc时，取值为cc的实例ID；  - 当type为egw时，取值为vpc终端节点的实例ID；  - 当type为er时，取值为企业路由器的实例ID；  - 当type为subeni时，取值为辅助弹性网卡的实例ID；     |
| description | 否    | String | - 功能说明：路由的描述信息。  - 取值范围：0-255个字符，不能包含"\<"和"\>"。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
   
#### 请求示例
- 更新id为3d42a0d4-a980-4613-ae76-a2cddecff054的路由表，新增一条ecs类型的路由，修改一条ecs类型的路由，删除一条目的网段为20.20.10.0/24的路由。
  ```
  PUT https://{Endpoint}/v1/6fbe9263116a4b68818cf1edce16bc4f/routetables/3d42a0d4-a980-4613-ae76-a2cddecff054
  {
      "routetable": {
          "name": "routertable-789",
          "description": "abc",
          "routes": {
              "add": [
                  {
                      "type": "ecs",
                      "destination": "10.10.10.0/24",
                      "nexthop": "7c50463d-d36c-4417-aa85-cc11fa10f341",
                      "description": "abc"
                  }
              ],
              "mod": [
                  {
                      "type": "ecs",
                      "destination": "20.10.10.0/24",
                      "nexthop": "7c50463d-d36c-4417-aa85-cc11fa10f341",
                      "description": "abc"
                  }
              ],
              "del": [
                  {
                      "destination": "20.20.10.0/24"
                  }
              ]
          }
      }
  }
  ```
  
#### 响应参数
表8响应参数 
| 名称         | 参数类型                                                           | 说明                                                       |
|:---|:---|:---|
| routetable | [routetable] object | 路由表对象，参见[表9]。 |
   
 表9routetable字段说明 
| 名称          | 参数类型                                                                  | 说明                                                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|
| id          | String                                                                | - 功能说明：路由表唯一标识。  - 取值范围：标准UUID。                                                                   |
| name        | String                                                                | - 功能说明：路由表名称。  - 取值范围：0-64个字符，支持数字、字母、中文字符、_(下划线)、-（中划线）、.（点）。                              |
| default     | Boolean                                                               | - 功能说明：是否为默认路由表。  - 取值范围：true表示默认路由表；false表示自定义路由表。                                              |
| routes      | Array of [route] objects   | - 功能说明：路由对象列表，参见[表10]。  - 约束：每个路由表最大关联200条路由。                                                                                                                  |
| subnets     | Array of [subnet] objects | - 功能说明：路由表所关联的子网，参见[表11]。  - 约束：只能关联路由表所属VPC下的子网。   |
| tenant_id   | String                                                                | - 功能说明：项目ID。                                                                                                                                                                                                             |
| vpc_id      | String                                                                | - 功能说明：路由表所属VPC的ID。                                                                                                                                                                                                       |
| description | String                                                                | - 路由表的描述信息。  - 取值范围：0-255个字符，不能包含"\<"和"\>"。                                                       |
| created_at  | String                                                                | - 功能说明：资源创建时间，UTC时间。  - 格式：yyyy-MM-ddTHH:mm:ss                                                                                                                                                                   |
| updated_at  | String                                                                | - 功能说明：资源更新时间，UTC时间。  - 格式：yyyy-MM-ddTHH:mm:ss                                                                                                                                                               |
   
 表10route字段说明 
| 名称          | 参数类型   | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|
| type        | String | - 功能说明：路由的类型。  - 取值范围： - ecs：弹性云服务器  - eni：网卡  - vip：虚拟IP  - nat：NAT网关  - peering：对等连接  - vpn：虚拟专用网络  - dc：云专线  - cc：云连接  - egw：VPC终端节点  - er：企业路由器  - subeni：辅助弹性网卡  - local：保留网段，用户下发路由的目的网段不能和local类型路由的目的网段有重叠     |
| destination | String | - 功能说明：路由目的网段。  - 约束：合法的IPv4和IPv6 CIDR格式。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| nexthop     | String | - 功能说明：路由下一跳对象的ID。  - 取值范围： - 当type为ecs时，传入ecs实例ID；  - 当type为eni时，取值为从网卡ID；  - 当type为vip时，取值为vip对应的IP地址；  - 当type为nat时，取值为nat实例对应的ID；  - 当type为peering时，取值为peering对应实例ID；  - 当type为vpn时，取值为vpn实例ID；  - 当type为dc时，取值为dc实例ID;  - 当type为cc时，取值为cc的实例ID；  - 当type为egw时，取值为vpc终端节点的实例ID；  - 当type为er时，取值为企业路由器的实例ID；  - 当type为subeni时，取值为辅助弹性网卡的实例ID；       |
| description | String | - 功能说明：路由的描述信息。  - 取值范围：0-255个字符，不能包含"\<"和"\>"。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
   
 表11subnet字段说明 
| 名称 | 参数类型   | 说明          |
|:---|:---|:---|
| id | String | 路由表关联的子网ID。 |
   
#### 响应示例
```
{
    "routetable": {
        "name": "routertable-789",
        "id": "3d42a0d4-a980-4613-ae76-a2cddecff054",
        "vpc_id": "ab78be2d-782f-42a5-aa72-35879f6890ff",
        "description": "abc",
        "default": false,
        "routes": [
            {
                "type": "ecs",
                "destination": "10.10.10.0/24",
                "nexthop": "7c50463d-d36c-4417-aa85-cc11fa10f341",
                "description": "abc"
            }
        ],
        "subnets": [
            {
                "id": "8d4ce32f-d68a-4c4c-9f18-c68d8a5c7f2f"
            }
        ],
        "tenant_id": "6fbe9263116a4b68818cf1edce16bc4f",
        "created_at": "2022-12-15T02:56:40",
        "updated_at": "2022-12-15T03:03:42"
    }
}
```
#### 状态码
请参见[状态码](https://support.huaweicloud.com/api-vpc/vpc_api_0002.html)。
#### 错误码
请参考[错误码](https://support.huaweicloud.com/api-vpc/vpc_api_0003.html)。
