alibabacloud-vpc20160428 6.11.9__py3-none-any.whl → 6.12.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- alibabacloud_vpc20160428/__init__.py +1 -1
- alibabacloud_vpc20160428/client.py +180 -12
- alibabacloud_vpc20160428/models.py +530 -90
- {alibabacloud_vpc20160428-6.11.9.dist-info → alibabacloud_vpc20160428-6.12.0.dist-info}/METADATA +2 -2
- alibabacloud_vpc20160428-6.12.0.dist-info/RECORD +8 -0
- alibabacloud_vpc20160428-6.11.9.dist-info/RECORD +0 -8
- {alibabacloud_vpc20160428-6.11.9.dist-info → alibabacloud_vpc20160428-6.12.0.dist-info}/LICENSE +0 -0
- {alibabacloud_vpc20160428-6.11.9.dist-info → alibabacloud_vpc20160428-6.12.0.dist-info}/WHEEL +0 -0
- {alibabacloud_vpc20160428-6.11.9.dist-info → alibabacloud_vpc20160428-6.12.0.dist-info}/top_level.txt +0 -0
|
@@ -4819,17 +4819,20 @@ class AssociateVpcCidrBlockRequest(TeaModel):
|
|
|
4819
4819
|
secondary_cidr_mask: int = None,
|
|
4820
4820
|
vpc_id: str = None,
|
|
4821
4821
|
):
|
|
4822
|
-
# The IPv6 CIDR block to
|
|
4822
|
+
# The IPv6 CIDR block that you want to add to the VPC.
|
|
4823
4823
|
#
|
|
4824
|
-
# > You
|
|
4824
|
+
# > You can specify only one of **SecondaryCidrBlock** and **Ipv6CidrBlock**.
|
|
4825
4825
|
self.ipv_6cidr_block = ipv_6cidr_block
|
|
4826
4826
|
# The version of the IP address. Valid values:
|
|
4827
4827
|
#
|
|
4828
4828
|
# * **IPV4**: the IPv4 address.
|
|
4829
4829
|
# * **IPV6**: the IPv6 address. If you set **IpVersion** to **IPV6** and do not specify **SecondaryCidrBlock**, you can add a secondary IPv6 CIDR block to the VPC.
|
|
4830
4830
|
self.ip_version = ip_version
|
|
4831
|
-
# The ID of the
|
|
4831
|
+
# The ID of the IPAM pool.
|
|
4832
4832
|
self.ipam_pool_id = ipam_pool_id
|
|
4833
|
+
# Add an IPv6 CIDR block from the IPAM pool to the VPC by entering a mask.
|
|
4834
|
+
#
|
|
4835
|
+
# > To add an IPv6 CIDR block to a VPC, specify at least one of the IPv6CidrBlock and Ipv6CidrMask parameters.
|
|
4833
4836
|
self.ipv_6cidr_mask = ipv_6cidr_mask
|
|
4834
4837
|
# The type of the IPv6 CIDR block. Valid values:
|
|
4835
4838
|
#
|
|
@@ -4860,10 +4863,9 @@ class AssociateVpcCidrBlockRequest(TeaModel):
|
|
|
4860
4863
|
#
|
|
4861
4864
|
# > You must and can specify only one of **SecondaryCidrBlock** and **Ipv6CidrBlock**.
|
|
4862
4865
|
self.secondary_cidr_block = secondary_cidr_block
|
|
4863
|
-
# Add
|
|
4866
|
+
# Add an IPv4 CIDR block from the IPAM pool to the VPC by specifying a mask.
|
|
4864
4867
|
#
|
|
4865
|
-
# >
|
|
4866
|
-
# > To add a secondary CIDR block to the VPC using the specified IPAM pool, you must specify at least one of the parameters, SecondaryCidrBlock or SecondaryCidrMask.
|
|
4868
|
+
# > If you use an IPAM pool, you must specify at least one of SecondaryCidrBlock and SecondaryCidrMask.
|
|
4867
4869
|
self.secondary_cidr_mask = secondary_cidr_mask
|
|
4868
4870
|
# The ID of the VPC to which you want to add a secondary CIDR block.
|
|
4869
4871
|
#
|
|
@@ -13146,7 +13148,9 @@ class CreateNatGatewayRequest(TeaModel):
|
|
|
13146
13148
|
icmp_reply_enabled: bool = None,
|
|
13147
13149
|
instance_charge_type: str = None,
|
|
13148
13150
|
internet_charge_type: str = None,
|
|
13151
|
+
ipv_4prefix: str = None,
|
|
13149
13152
|
name: str = None,
|
|
13153
|
+
nat_ip: str = None,
|
|
13150
13154
|
nat_type: str = None,
|
|
13151
13155
|
network_type: str = None,
|
|
13152
13156
|
owner_account: str = None,
|
|
@@ -13199,12 +13203,14 @@ class CreateNatGatewayRequest(TeaModel):
|
|
|
13199
13203
|
self.instance_charge_type = instance_charge_type
|
|
13200
13204
|
# The metering method of the NAT gateway. Set the value to **PayByLcu**, which specifies the pay-by-CU metering method.
|
|
13201
13205
|
self.internet_charge_type = internet_charge_type
|
|
13206
|
+
self.ipv_4prefix = ipv_4prefix
|
|
13202
13207
|
# The name of the NAT gateway.
|
|
13203
13208
|
#
|
|
13204
13209
|
# The name must be 2 to 128 characters in length and can contain letters, digits, underscores (_), and hyphens (-). The name must start with a letter.
|
|
13205
13210
|
#
|
|
13206
13211
|
# If this parameter is not set, the system assigns a default name to the NAT gateway.
|
|
13207
13212
|
self.name = name
|
|
13213
|
+
self.nat_ip = nat_ip
|
|
13208
13214
|
# The type of NAT gateway. Set the value to **Enhanced**, which specifies enhanced NAT gateway.
|
|
13209
13215
|
self.nat_type = nat_type
|
|
13210
13216
|
# The network type of the NAT gateway. Valid values:
|
|
@@ -13280,8 +13286,12 @@ class CreateNatGatewayRequest(TeaModel):
|
|
|
13280
13286
|
result['InstanceChargeType'] = self.instance_charge_type
|
|
13281
13287
|
if self.internet_charge_type is not None:
|
|
13282
13288
|
result['InternetChargeType'] = self.internet_charge_type
|
|
13289
|
+
if self.ipv_4prefix is not None:
|
|
13290
|
+
result['Ipv4Prefix'] = self.ipv_4prefix
|
|
13283
13291
|
if self.name is not None:
|
|
13284
13292
|
result['Name'] = self.name
|
|
13293
|
+
if self.nat_ip is not None:
|
|
13294
|
+
result['NatIp'] = self.nat_ip
|
|
13285
13295
|
if self.nat_type is not None:
|
|
13286
13296
|
result['NatType'] = self.nat_type
|
|
13287
13297
|
if self.network_type is not None:
|
|
@@ -13335,8 +13345,12 @@ class CreateNatGatewayRequest(TeaModel):
|
|
|
13335
13345
|
self.instance_charge_type = m.get('InstanceChargeType')
|
|
13336
13346
|
if m.get('InternetChargeType') is not None:
|
|
13337
13347
|
self.internet_charge_type = m.get('InternetChargeType')
|
|
13348
|
+
if m.get('Ipv4Prefix') is not None:
|
|
13349
|
+
self.ipv_4prefix = m.get('Ipv4Prefix')
|
|
13338
13350
|
if m.get('Name') is not None:
|
|
13339
13351
|
self.name = m.get('Name')
|
|
13352
|
+
if m.get('NatIp') is not None:
|
|
13353
|
+
self.nat_ip = m.get('NatIp')
|
|
13340
13354
|
if m.get('NatType') is not None:
|
|
13341
13355
|
self.nat_type = m.get('NatType')
|
|
13342
13356
|
if m.get('NetworkType') is not None:
|
|
@@ -13418,7 +13432,9 @@ class CreateNatGatewayShrinkRequest(TeaModel):
|
|
|
13418
13432
|
icmp_reply_enabled: bool = None,
|
|
13419
13433
|
instance_charge_type: str = None,
|
|
13420
13434
|
internet_charge_type: str = None,
|
|
13435
|
+
ipv_4prefix: str = None,
|
|
13421
13436
|
name: str = None,
|
|
13437
|
+
nat_ip: str = None,
|
|
13422
13438
|
nat_type: str = None,
|
|
13423
13439
|
network_type: str = None,
|
|
13424
13440
|
owner_account: str = None,
|
|
@@ -13471,12 +13487,14 @@ class CreateNatGatewayShrinkRequest(TeaModel):
|
|
|
13471
13487
|
self.instance_charge_type = instance_charge_type
|
|
13472
13488
|
# The metering method of the NAT gateway. Set the value to **PayByLcu**, which specifies the pay-by-CU metering method.
|
|
13473
13489
|
self.internet_charge_type = internet_charge_type
|
|
13490
|
+
self.ipv_4prefix = ipv_4prefix
|
|
13474
13491
|
# The name of the NAT gateway.
|
|
13475
13492
|
#
|
|
13476
13493
|
# The name must be 2 to 128 characters in length and can contain letters, digits, underscores (_), and hyphens (-). The name must start with a letter.
|
|
13477
13494
|
#
|
|
13478
13495
|
# If this parameter is not set, the system assigns a default name to the NAT gateway.
|
|
13479
13496
|
self.name = name
|
|
13497
|
+
self.nat_ip = nat_ip
|
|
13480
13498
|
# The type of NAT gateway. Set the value to **Enhanced**, which specifies enhanced NAT gateway.
|
|
13481
13499
|
self.nat_type = nat_type
|
|
13482
13500
|
# The network type of the NAT gateway. Valid values:
|
|
@@ -13550,8 +13568,12 @@ class CreateNatGatewayShrinkRequest(TeaModel):
|
|
|
13550
13568
|
result['InstanceChargeType'] = self.instance_charge_type
|
|
13551
13569
|
if self.internet_charge_type is not None:
|
|
13552
13570
|
result['InternetChargeType'] = self.internet_charge_type
|
|
13571
|
+
if self.ipv_4prefix is not None:
|
|
13572
|
+
result['Ipv4Prefix'] = self.ipv_4prefix
|
|
13553
13573
|
if self.name is not None:
|
|
13554
13574
|
result['Name'] = self.name
|
|
13575
|
+
if self.nat_ip is not None:
|
|
13576
|
+
result['NatIp'] = self.nat_ip
|
|
13555
13577
|
if self.nat_type is not None:
|
|
13556
13578
|
result['NatType'] = self.nat_type
|
|
13557
13579
|
if self.network_type is not None:
|
|
@@ -13604,8 +13626,12 @@ class CreateNatGatewayShrinkRequest(TeaModel):
|
|
|
13604
13626
|
self.instance_charge_type = m.get('InstanceChargeType')
|
|
13605
13627
|
if m.get('InternetChargeType') is not None:
|
|
13606
13628
|
self.internet_charge_type = m.get('InternetChargeType')
|
|
13629
|
+
if m.get('Ipv4Prefix') is not None:
|
|
13630
|
+
self.ipv_4prefix = m.get('Ipv4Prefix')
|
|
13607
13631
|
if m.get('Name') is not None:
|
|
13608
13632
|
self.name = m.get('Name')
|
|
13633
|
+
if m.get('NatIp') is not None:
|
|
13634
|
+
self.nat_ip = m.get('NatIp')
|
|
13609
13635
|
if m.get('NatType') is not None:
|
|
13610
13636
|
self.nat_type = m.get('NatType')
|
|
13611
13637
|
if m.get('NetworkType') is not None:
|
|
@@ -13831,6 +13857,8 @@ class CreateNatIpRequest(TeaModel):
|
|
|
13831
13857
|
self,
|
|
13832
13858
|
client_token: str = None,
|
|
13833
13859
|
dry_run: bool = None,
|
|
13860
|
+
ipv_4prefix: str = None,
|
|
13861
|
+
ipv_4prefix_count: int = None,
|
|
13834
13862
|
nat_gateway_id: str = None,
|
|
13835
13863
|
nat_ip: str = None,
|
|
13836
13864
|
nat_ip_cidr: str = None,
|
|
@@ -13853,6 +13881,8 @@ class CreateNatIpRequest(TeaModel):
|
|
|
13853
13881
|
# * **true**: performs only a dry run. The system checks the request for potential issues, including missing parameter values, incorrect request syntax, and service limits. If the request fails the dry run, an error message is returned. If the request passes the dry run, the `DryRunOperation` error code is returned.
|
|
13854
13882
|
# * **false** (default): performs a dry run and performs the actual request. If the request passes the dry run, a 2xx HTTP status code is returned and the operation is performed.
|
|
13855
13883
|
self.dry_run = dry_run
|
|
13884
|
+
self.ipv_4prefix = ipv_4prefix
|
|
13885
|
+
self.ipv_4prefix_count = ipv_4prefix_count
|
|
13856
13886
|
# The ID of the Virtual Private Cloud (VPC) NAT gateway for which you want to create the NAT IP address.
|
|
13857
13887
|
#
|
|
13858
13888
|
# This parameter is required.
|
|
@@ -13897,6 +13927,10 @@ class CreateNatIpRequest(TeaModel):
|
|
|
13897
13927
|
result['ClientToken'] = self.client_token
|
|
13898
13928
|
if self.dry_run is not None:
|
|
13899
13929
|
result['DryRun'] = self.dry_run
|
|
13930
|
+
if self.ipv_4prefix is not None:
|
|
13931
|
+
result['Ipv4Prefix'] = self.ipv_4prefix
|
|
13932
|
+
if self.ipv_4prefix_count is not None:
|
|
13933
|
+
result['Ipv4PrefixCount'] = self.ipv_4prefix_count
|
|
13900
13934
|
if self.nat_gateway_id is not None:
|
|
13901
13935
|
result['NatGatewayId'] = self.nat_gateway_id
|
|
13902
13936
|
if self.nat_ip is not None:
|
|
@@ -13925,6 +13959,10 @@ class CreateNatIpRequest(TeaModel):
|
|
|
13925
13959
|
self.client_token = m.get('ClientToken')
|
|
13926
13960
|
if m.get('DryRun') is not None:
|
|
13927
13961
|
self.dry_run = m.get('DryRun')
|
|
13962
|
+
if m.get('Ipv4Prefix') is not None:
|
|
13963
|
+
self.ipv_4prefix = m.get('Ipv4Prefix')
|
|
13964
|
+
if m.get('Ipv4PrefixCount') is not None:
|
|
13965
|
+
self.ipv_4prefix_count = m.get('Ipv4PrefixCount')
|
|
13928
13966
|
if m.get('NatGatewayId') is not None:
|
|
13929
13967
|
self.nat_gateway_id = m.get('NatGatewayId')
|
|
13930
13968
|
if m.get('NatIp') is not None:
|
|
@@ -13951,10 +13989,12 @@ class CreateNatIpRequest(TeaModel):
|
|
|
13951
13989
|
class CreateNatIpResponseBody(TeaModel):
|
|
13952
13990
|
def __init__(
|
|
13953
13991
|
self,
|
|
13992
|
+
ipv_4prefix: str = None,
|
|
13954
13993
|
nat_ip: str = None,
|
|
13955
13994
|
nat_ip_id: str = None,
|
|
13956
13995
|
request_id: str = None,
|
|
13957
13996
|
):
|
|
13997
|
+
self.ipv_4prefix = ipv_4prefix
|
|
13958
13998
|
# The NAT IP address.
|
|
13959
13999
|
self.nat_ip = nat_ip
|
|
13960
14000
|
# The ID of the NAT IP address.
|
|
@@ -13971,6 +14011,8 @@ class CreateNatIpResponseBody(TeaModel):
|
|
|
13971
14011
|
return _map
|
|
13972
14012
|
|
|
13973
14013
|
result = dict()
|
|
14014
|
+
if self.ipv_4prefix is not None:
|
|
14015
|
+
result['Ipv4Prefix'] = self.ipv_4prefix
|
|
13974
14016
|
if self.nat_ip is not None:
|
|
13975
14017
|
result['NatIp'] = self.nat_ip
|
|
13976
14018
|
if self.nat_ip_id is not None:
|
|
@@ -13981,6 +14023,8 @@ class CreateNatIpResponseBody(TeaModel):
|
|
|
13981
14023
|
|
|
13982
14024
|
def from_map(self, m: dict = None):
|
|
13983
14025
|
m = m or dict()
|
|
14026
|
+
if m.get('Ipv4Prefix') is not None:
|
|
14027
|
+
self.ipv_4prefix = m.get('Ipv4Prefix')
|
|
13984
14028
|
if m.get('NatIp') is not None:
|
|
13985
14029
|
self.nat_ip = m.get('NatIp')
|
|
13986
14030
|
if m.get('NatIpId') is not None:
|
|
@@ -20858,7 +20902,9 @@ class CreateVpcRequest(TeaModel):
|
|
|
20858
20902
|
self.ipv_4ipam_pool_id = ipv_4ipam_pool_id
|
|
20859
20903
|
# The IPv6 CIDR block of the VPC. If you enable IPv6 for a VPC, the system allocates an IPv6 CIDR block. To specify an IPv6 CIDR block, you must call the [AllocateVpcIpv6Cidr](https://help.aliyun.com/document_detail/448916.html) operation to reserve the specified IPv6 CIDR block.
|
|
20860
20904
|
self.ipv_6cidr_block = ipv_6cidr_block
|
|
20905
|
+
# Add an IPv6 CIDR block from the IPAM pool to the VPC by entering a mask.
|
|
20861
20906
|
self.ipv_6cidr_mask = ipv_6cidr_mask
|
|
20907
|
+
# The ID of the IP Address Manager (IPAM) pool of the IPv6 type.
|
|
20862
20908
|
self.ipv_6ipam_pool_id = ipv_6ipam_pool_id
|
|
20863
20909
|
# The type of the IPv6 CIDR block of the VPC. Valid values:
|
|
20864
20910
|
#
|
|
@@ -27346,6 +27392,9 @@ class DeleteIpv4GatewayRequest(TeaModel):
|
|
|
27346
27392
|
# * **true**: performs only a dry run, without performing the actual request. The system checks the request for potential issues, including missing parameter values, incorrect request syntax, and service limits. If the request fails the dry run, an error message is returned. If the request passes the dry run, the `DryRunOperation` error code is returned.
|
|
27347
27393
|
# * **false** (default): performs a dry run and performs the actual request. If the request passes the dry run, a 2xx HTTP status code is returned and the operation is performed.
|
|
27348
27394
|
self.dry_run = dry_run
|
|
27395
|
+
# Select the public network mode of the VPC after deleting the IPv4 gateway. The values are:
|
|
27396
|
+
# - **private**: Default value, after deleting the IPv4 gateway, the VPC will become a pure private VPC without public network access capability.
|
|
27397
|
+
# - **public**: After deleting the IPv4 gateway, the VPC\\"s public network access is no longer centrally controlled by the IPv4 gateway, and instances with public IPs bound can access the public network by default.
|
|
27349
27398
|
self.internet_mode = internet_mode
|
|
27350
27399
|
# The ID of the IPv4 gateway that you want to delete.
|
|
27351
27400
|
#
|
|
@@ -28097,6 +28146,8 @@ class DeleteNatIpRequest(TeaModel):
|
|
|
28097
28146
|
self,
|
|
28098
28147
|
client_token: str = None,
|
|
28099
28148
|
dry_run: bool = None,
|
|
28149
|
+
ipv_4prefix: str = None,
|
|
28150
|
+
nat_gateway_id: str = None,
|
|
28100
28151
|
nat_ip_id: str = None,
|
|
28101
28152
|
owner_account: str = None,
|
|
28102
28153
|
owner_id: int = None,
|
|
@@ -28115,9 +28166,9 @@ class DeleteNatIpRequest(TeaModel):
|
|
|
28115
28166
|
# * **true**: performs only a dry run. The system checks the request for potential issues, including missing parameter values, incorrect request syntax, and service limits. If the request fails the dry run, an error message is returned. If the request passes the dry run, the `DryRunOperation` error code is returned.
|
|
28116
28167
|
# * **false** (default): performs a dry run and performs the actual request. If the request passes the dry run, a 2xx HTTP status code is returned and the operation is performed.
|
|
28117
28168
|
self.dry_run = dry_run
|
|
28169
|
+
self.ipv_4prefix = ipv_4prefix
|
|
28170
|
+
self.nat_gateway_id = nat_gateway_id
|
|
28118
28171
|
# The ID of the NAT IP address that you want to delete.
|
|
28119
|
-
#
|
|
28120
|
-
# This parameter is required.
|
|
28121
28172
|
self.nat_ip_id = nat_ip_id
|
|
28122
28173
|
self.owner_account = owner_account
|
|
28123
28174
|
self.owner_id = owner_id
|
|
@@ -28143,6 +28194,10 @@ class DeleteNatIpRequest(TeaModel):
|
|
|
28143
28194
|
result['ClientToken'] = self.client_token
|
|
28144
28195
|
if self.dry_run is not None:
|
|
28145
28196
|
result['DryRun'] = self.dry_run
|
|
28197
|
+
if self.ipv_4prefix is not None:
|
|
28198
|
+
result['Ipv4Prefix'] = self.ipv_4prefix
|
|
28199
|
+
if self.nat_gateway_id is not None:
|
|
28200
|
+
result['NatGatewayId'] = self.nat_gateway_id
|
|
28146
28201
|
if self.nat_ip_id is not None:
|
|
28147
28202
|
result['NatIpId'] = self.nat_ip_id
|
|
28148
28203
|
if self.owner_account is not None:
|
|
@@ -28163,6 +28218,10 @@ class DeleteNatIpRequest(TeaModel):
|
|
|
28163
28218
|
self.client_token = m.get('ClientToken')
|
|
28164
28219
|
if m.get('DryRun') is not None:
|
|
28165
28220
|
self.dry_run = m.get('DryRun')
|
|
28221
|
+
if m.get('Ipv4Prefix') is not None:
|
|
28222
|
+
self.ipv_4prefix = m.get('Ipv4Prefix')
|
|
28223
|
+
if m.get('NatGatewayId') is not None:
|
|
28224
|
+
self.nat_gateway_id = m.get('NatGatewayId')
|
|
28166
28225
|
if m.get('NatIpId') is not None:
|
|
28167
28226
|
self.nat_ip_id = m.get('NatIpId')
|
|
28168
28227
|
if m.get('OwnerAccount') is not None:
|
|
@@ -29092,6 +29151,10 @@ class DeleteRouteEntriesRequest(TeaModel):
|
|
|
29092
29151
|
resource_owner_id: int = None,
|
|
29093
29152
|
route_entries: List[DeleteRouteEntriesRequestRouteEntries] = None,
|
|
29094
29153
|
):
|
|
29154
|
+
# Specifies whether to perform a dry run, without performing the actual request. Valid values:
|
|
29155
|
+
#
|
|
29156
|
+
# * **true**: performs only a dry run. The system checks the request for potential issues, including missing parameter values, incorrect request syntax, and service limits. If the request fails the dry run, an error message is returned. If the request passes the dry run, the `DryRunOperation` error code is returned.
|
|
29157
|
+
# * **false** (default): performs a dry run and performs the actual request. If the request passes the dry run, a 2xx HTTP status code is returned and the operation is performed.
|
|
29095
29158
|
self.dry_run = dry_run
|
|
29096
29159
|
self.owner_account = owner_account
|
|
29097
29160
|
self.owner_id = owner_id
|
|
@@ -29364,6 +29427,11 @@ class DeleteRouteEntryRequest(TeaModel):
|
|
|
29364
29427
|
):
|
|
29365
29428
|
# The destination CIDR block of the route. Only IPv4 CIDR blocks, IPv6 CIDR blocks, and prefix lists are supported.
|
|
29366
29429
|
self.destination_cidr_block = destination_cidr_block
|
|
29430
|
+
# Specifies whether to perform only a dry run, without performing the actual request. Valid values:
|
|
29431
|
+
#
|
|
29432
|
+
# **true**: sends a request without deleting the route entry. The system checks the request for potential issues, including invalid AccessKey pairs, unauthorized RAM users, and missing parameter values. If the request fails the dry run, an error message is returned. If the request passes the dry run, the `DryRunOperation` error code is returned.
|
|
29433
|
+
#
|
|
29434
|
+
# **false** (default): performs a dry run and the actual request. If the request passes the check, a 2xx HTTP status code is returned and the route entry is deleted.
|
|
29367
29435
|
self.dry_run = dry_run
|
|
29368
29436
|
# The ID of the next hop.
|
|
29369
29437
|
#
|
|
@@ -36766,7 +36834,8 @@ class DescribeEipAddressesResponseBodyEipAddressesEipAddressOperationLocksLockRe
|
|
|
36766
36834
|
# The reason why the EIP is locked. Valid values:
|
|
36767
36835
|
#
|
|
36768
36836
|
# * **financial**: The EIP is locked due to overdue payments.
|
|
36769
|
-
# * **security**: The
|
|
36837
|
+
# * **security**: The instance is locked for security purposes.
|
|
36838
|
+
# * **sharedPool**: The shared IP address pool is locked due to overdue payments.
|
|
36770
36839
|
self.lock_reason = lock_reason
|
|
36771
36840
|
|
|
36772
36841
|
def validate(self):
|
|
@@ -36984,10 +37053,11 @@ class DescribeEipAddressesResponseBodyEipAddressesEipAddress(TeaModel):
|
|
|
36984
37053
|
# * **CloudBox** Only cloud box users can select this type.
|
|
36985
37054
|
# * **Default** (default)
|
|
36986
37055
|
self.biz_type = biz_type
|
|
36987
|
-
# The service
|
|
37056
|
+
# The service status of the EIP. Valid values:
|
|
36988
37057
|
#
|
|
36989
37058
|
# * **Normal**\
|
|
36990
|
-
# * **
|
|
37059
|
+
# * **OperationLock**\
|
|
37060
|
+
# * **Unactivated**\
|
|
36991
37061
|
self.business_status = business_status
|
|
36992
37062
|
# The billing method of the EIP. Valid values:
|
|
36993
37063
|
#
|
|
@@ -40256,13 +40326,13 @@ class DescribeFlowLogsRequestTags(TeaModel):
|
|
|
40256
40326
|
key: str = None,
|
|
40257
40327
|
value: str = None,
|
|
40258
40328
|
):
|
|
40259
|
-
# The key of tag
|
|
40329
|
+
# The key of the tag. Up to 20 tag keys are supported. If you need to pass this value, it cannot be an empty string.
|
|
40260
40330
|
#
|
|
40261
|
-
#
|
|
40331
|
+
# A tag key can have up to 128 characters and cannot start with `aliyun` or `acs:`. It also cannot contain `http://` or `https://`.
|
|
40262
40332
|
self.key = key
|
|
40263
|
-
# The value of tag
|
|
40333
|
+
# The value of the tag. Up to 20 tag values are supported. If you need to pass this value, it can be an empty string.
|
|
40264
40334
|
#
|
|
40265
|
-
#
|
|
40335
|
+
# A tag value can have up to 128 characters and cannot start with `aliyun` or `acs:`. It also cannot contain `http://` or `https://`.
|
|
40266
40336
|
self.value = value
|
|
40267
40337
|
|
|
40268
40338
|
def validate(self):
|
|
@@ -40314,57 +40384,54 @@ class DescribeFlowLogsRequest(TeaModel):
|
|
|
40314
40384
|
):
|
|
40315
40385
|
# The description of the flow log.
|
|
40316
40386
|
#
|
|
40317
|
-
# The description must be 1 to 256 characters
|
|
40387
|
+
# The description must be 1 to 256 characters long and cannot start with `http://` or `https://`.
|
|
40318
40388
|
self.description = description
|
|
40319
40389
|
# The ID of the flow log.
|
|
40320
40390
|
self.flow_log_id = flow_log_id
|
|
40321
40391
|
# The name of the flow log.
|
|
40322
40392
|
#
|
|
40323
|
-
# The name must be 1 to 128 characters
|
|
40393
|
+
# The name must be 1 to 128 characters long and cannot start with `http://` or `https://`.
|
|
40324
40394
|
self.flow_log_name = flow_log_name
|
|
40325
|
-
# The Logstore that stores the captured traffic
|
|
40395
|
+
# The Logstore that stores the captured traffic.
|
|
40326
40396
|
self.log_store_name = log_store_name
|
|
40327
40397
|
self.owner_account = owner_account
|
|
40328
40398
|
self.owner_id = owner_id
|
|
40329
|
-
# The number
|
|
40399
|
+
# The page number, with a default value of **1**.
|
|
40330
40400
|
self.page_number = page_number
|
|
40331
|
-
# The number of
|
|
40401
|
+
# The number of items per page in a paginated query, with a maximum value of **50** and a default value of **20**.
|
|
40332
40402
|
self.page_size = page_size
|
|
40333
|
-
# The
|
|
40403
|
+
# The Project that manages the captured traffic.
|
|
40334
40404
|
self.project_name = project_name
|
|
40335
40405
|
# The region ID of the flow log.
|
|
40336
40406
|
#
|
|
40337
|
-
# You can
|
|
40407
|
+
# You can obtain the region ID by calling the [DescribeRegions](https://help.aliyun.com/document_detail/36063.html) interface.
|
|
40338
40408
|
#
|
|
40339
40409
|
# This parameter is required.
|
|
40340
40410
|
self.region_id = region_id
|
|
40341
|
-
# The
|
|
40411
|
+
# The resource group ID of the flow log.
|
|
40342
40412
|
self.resource_group_id = resource_group_id
|
|
40343
|
-
# The ID of the
|
|
40413
|
+
# The resource ID of the traffic to capture.
|
|
40344
40414
|
self.resource_id = resource_id
|
|
40345
40415
|
self.resource_owner_account = resource_owner_account
|
|
40346
40416
|
self.resource_owner_id = resource_owner_id
|
|
40347
|
-
# The type of
|
|
40348
|
-
#
|
|
40349
|
-
#
|
|
40350
|
-
#
|
|
40351
|
-
# * **VPC**: all ENIs in a virtual private cloud (VPC)
|
|
40417
|
+
# The resource type of the traffic to capture. Values:
|
|
40418
|
+
# - **NetworkInterface**: Elastic Network Interface (ENI).
|
|
40419
|
+
# - **VSwitch**: All ENIs within a VSwitch.
|
|
40420
|
+
# - **VPC**: All ENIs within a VPC.
|
|
40352
40421
|
self.resource_type = resource_type
|
|
40353
|
-
# The status of the flow log.
|
|
40354
|
-
#
|
|
40355
|
-
#
|
|
40356
|
-
#
|
|
40357
|
-
# * **Inactive**\
|
|
40422
|
+
# The status of the flow log. Values:
|
|
40423
|
+
# - **Active**: The flow log is in an active state.
|
|
40424
|
+
# - **Activating**: The flow log is being created.
|
|
40425
|
+
# - **Inactive**: The flow log is in an inactive state.
|
|
40358
40426
|
self.status = status
|
|
40359
40427
|
# The list of tags.
|
|
40360
40428
|
self.tags = tags
|
|
40361
|
-
# The type of traffic
|
|
40362
|
-
#
|
|
40363
|
-
#
|
|
40364
|
-
#
|
|
40365
|
-
# * **Drop**: traffic that is denied by access control
|
|
40429
|
+
# The type of traffic to collect. Values:
|
|
40430
|
+
# - **All**: All traffic.
|
|
40431
|
+
# - **Allow**: Traffic allowed by access control.
|
|
40432
|
+
# - **Drop**: Traffic denied by access control.
|
|
40366
40433
|
self.traffic_type = traffic_type
|
|
40367
|
-
# The ID of the VPC
|
|
40434
|
+
# The ID of the VPC for which you want to view the flow log.
|
|
40368
40435
|
self.vpc_id = vpc_id
|
|
40369
40436
|
|
|
40370
40437
|
def validate(self):
|
|
@@ -40473,9 +40540,9 @@ class DescribeFlowLogsResponseBodyFlowLogsFlowLogTagsTag(TeaModel):
|
|
|
40473
40540
|
key: str = None,
|
|
40474
40541
|
value: str = None,
|
|
40475
40542
|
):
|
|
40476
|
-
#
|
|
40543
|
+
# Tag key.
|
|
40477
40544
|
self.key = key
|
|
40478
|
-
#
|
|
40545
|
+
# Tag value.
|
|
40479
40546
|
self.value = value
|
|
40480
40547
|
|
|
40481
40548
|
def validate(self):
|
|
@@ -40590,73 +40657,70 @@ class DescribeFlowLogsResponseBodyFlowLogsFlowLog(TeaModel):
|
|
|
40590
40657
|
):
|
|
40591
40658
|
# The sampling interval of the flow log. Unit: minutes.
|
|
40592
40659
|
self.aggregation_interval = aggregation_interval
|
|
40593
|
-
# The business status
|
|
40660
|
+
# The business status. Values:
|
|
40594
40661
|
#
|
|
40595
|
-
#
|
|
40596
|
-
#
|
|
40662
|
+
# - **Normal**: Normal status.
|
|
40663
|
+
# - **FinancialLocked**: Locked due to unpaid bills.
|
|
40597
40664
|
self.business_status = business_status
|
|
40598
|
-
# The time
|
|
40665
|
+
# The creation time of the flow log.
|
|
40599
40666
|
self.creation_time = creation_time
|
|
40600
40667
|
# The description of the flow log.
|
|
40601
40668
|
self.description = description
|
|
40602
|
-
#
|
|
40603
|
-
#
|
|
40604
|
-
#
|
|
40605
|
-
#
|
|
40606
|
-
# * **UnknownError**: An internal error occurred. Try again later.
|
|
40669
|
+
# When log delivery fails, you can troubleshoot based on the error messages. Possible error messages include:
|
|
40670
|
+
# - **UnavaliableTarget**: The Logstore of the Log Service SLS is unavailable and cannot receive logs. It is recommended to check if the corresponding Logstore actually exists and is accessible.
|
|
40671
|
+
# - **ProjectNotExist**: The Project of the Log Service SLS does not exist. It is suggested to delete the original flow log and create a new one pointing to an existing Project.
|
|
40672
|
+
# - **UnknownError**: An internal error has occurred. Please try again later.
|
|
40607
40673
|
self.flow_log_deliver_error_message = flow_log_deliver_error_message
|
|
40608
|
-
#
|
|
40609
|
-
# - **SUCCESS
|
|
40610
|
-
# - **FAILED
|
|
40674
|
+
# The delivery status of the flow log, with values:
|
|
40675
|
+
# - **SUCCESS**: Delivery succeeded.
|
|
40676
|
+
# - **FAILED**: Delivery failed.
|
|
40611
40677
|
self.flow_log_deliver_status = flow_log_deliver_status
|
|
40612
40678
|
# The ID of the flow log.
|
|
40613
40679
|
self.flow_log_id = flow_log_id
|
|
40614
40680
|
# The name of the flow log.
|
|
40615
40681
|
self.flow_log_name = flow_log_name
|
|
40682
|
+
# The type of IP address for collecting flow log traffic.
|
|
40616
40683
|
self.ip_version = ip_version
|
|
40617
|
-
# The Logstore
|
|
40684
|
+
# The Logstore where the captured traffic is stored.
|
|
40618
40685
|
self.log_store_name = log_store_name
|
|
40619
|
-
# The
|
|
40686
|
+
# The Project that manages the captured traffic.
|
|
40620
40687
|
self.project_name = project_name
|
|
40621
|
-
# The region ID
|
|
40688
|
+
# The region ID to which the flow log belongs.
|
|
40622
40689
|
self.region_id = region_id
|
|
40623
40690
|
# The ID of the resource group to which the flow log belongs.
|
|
40624
40691
|
self.resource_group_id = resource_group_id
|
|
40625
|
-
# The ID of the
|
|
40692
|
+
# The resource ID of the traffic captured by the flow log.
|
|
40626
40693
|
self.resource_id = resource_id
|
|
40627
|
-
# The type of the
|
|
40694
|
+
# The resource type of the traffic captured by the flow log:
|
|
40628
40695
|
#
|
|
40629
|
-
#
|
|
40630
|
-
#
|
|
40631
|
-
#
|
|
40696
|
+
# - **NetworkInterface**: Elastic network interface.
|
|
40697
|
+
# - **VSwitch**: All elastic network interfaces within a VSwitch.
|
|
40698
|
+
# - **VPC**: All elastic network interfaces within a VPC.
|
|
40632
40699
|
self.resource_type = resource_type
|
|
40633
40700
|
# The hosting type of the cloud service.
|
|
40634
|
-
#
|
|
40635
|
-
#
|
|
40636
|
-
#
|
|
40637
|
-
#
|
|
40638
|
-
# > A flow log that is created in the SLS console can be displayed in the VPC list. However, you cannot modify, start, stop, or delete the flow log in the VPC console. If you want to manage the flow log, you can log on to the [SLS console](https://sls.console.aliyun.com) and perform required operations.
|
|
40701
|
+
# - It can be empty, indicating that the flow log was created by the user.
|
|
40702
|
+
# - When not empty, the only supported value is: **sls**, indicating that the flow log was created through the Log Service console.
|
|
40703
|
+
# > Flow log instances created through the Log Service console can be displayed in the VPC list, but they cannot be modified, started, stopped, or deleted within the VPC. If you need to perform these operations on the flow log, you can log in to the [Log Service console](https://sls.console.aliyun.com) to modify, start, stop, or delete it.
|
|
40639
40704
|
self.service_type = service_type
|
|
40640
|
-
# The status of the flow log.
|
|
40705
|
+
# The status of the flow log. Values:
|
|
40706
|
+
# - **Active**: The flow log is in an active state.
|
|
40641
40707
|
#
|
|
40642
|
-
#
|
|
40643
|
-
#
|
|
40644
|
-
#
|
|
40708
|
+
# - **Activating**: The flow log is being created.
|
|
40709
|
+
#
|
|
40710
|
+
# - **Inactive**: The flow log is in an inactive state.
|
|
40645
40711
|
self.status = status
|
|
40646
|
-
#
|
|
40712
|
+
# List of tags
|
|
40647
40713
|
self.tags = tags
|
|
40648
|
-
# The
|
|
40649
|
-
#
|
|
40650
|
-
# * **all** (default value): all traffic
|
|
40651
|
-
# * **internetGateway**: Internet traffic
|
|
40714
|
+
# The path of the captured traffic. Values:
|
|
40652
40715
|
#
|
|
40653
|
-
#
|
|
40716
|
+
# - **all**: Indicates full collection.
|
|
40717
|
+
# - **internetGateway**: Indicates public network traffic collection.
|
|
40654
40718
|
self.traffic_path = traffic_path
|
|
40655
|
-
# The type of traffic
|
|
40719
|
+
# The type of traffic captured by the flow log. Values:
|
|
40656
40720
|
#
|
|
40657
|
-
#
|
|
40658
|
-
#
|
|
40659
|
-
#
|
|
40721
|
+
# - **All**: All traffic.
|
|
40722
|
+
# - **Allow**: Traffic allowed by access control.
|
|
40723
|
+
# - **Drop**: Traffic denied by access control.
|
|
40660
40724
|
self.traffic_type = traffic_type
|
|
40661
40725
|
|
|
40662
40726
|
def validate(self):
|
|
@@ -40805,20 +40869,19 @@ class DescribeFlowLogsResponseBody(TeaModel):
|
|
|
40805
40869
|
success: str = None,
|
|
40806
40870
|
total_count: str = None,
|
|
40807
40871
|
):
|
|
40808
|
-
#
|
|
40872
|
+
# List of flow logs.
|
|
40809
40873
|
self.flow_logs = flow_logs
|
|
40810
|
-
# The number
|
|
40874
|
+
# The page number.
|
|
40811
40875
|
self.page_number = page_number
|
|
40812
|
-
# The number of
|
|
40876
|
+
# The number of items per page in a paginated query.
|
|
40813
40877
|
self.page_size = page_size
|
|
40814
40878
|
# The request ID.
|
|
40815
40879
|
self.request_id = request_id
|
|
40816
|
-
# Indicates whether the
|
|
40817
|
-
#
|
|
40818
|
-
#
|
|
40819
|
-
# * **false**\
|
|
40880
|
+
# Indicates whether the call was successful. Values:
|
|
40881
|
+
# - **true**: The call was successful.
|
|
40882
|
+
# - **false**: The call failed.
|
|
40820
40883
|
self.success = success
|
|
40821
|
-
# The number of
|
|
40884
|
+
# The number of entries in the queried flow log list.
|
|
40822
40885
|
self.total_count = total_count
|
|
40823
40886
|
|
|
40824
40887
|
def validate(self):
|
|
@@ -46997,6 +47060,68 @@ class DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayIpLists(TeaModel):
|
|
|
46997
47060
|
return self
|
|
46998
47061
|
|
|
46999
47062
|
|
|
47063
|
+
class DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayIpPrefixListIpPrefixList(TeaModel):
|
|
47064
|
+
def __init__(
|
|
47065
|
+
self,
|
|
47066
|
+
ip_prefix: str = None,
|
|
47067
|
+
):
|
|
47068
|
+
self.ip_prefix = ip_prefix
|
|
47069
|
+
|
|
47070
|
+
def validate(self):
|
|
47071
|
+
pass
|
|
47072
|
+
|
|
47073
|
+
def to_map(self):
|
|
47074
|
+
_map = super().to_map()
|
|
47075
|
+
if _map is not None:
|
|
47076
|
+
return _map
|
|
47077
|
+
|
|
47078
|
+
result = dict()
|
|
47079
|
+
if self.ip_prefix is not None:
|
|
47080
|
+
result['IpPrefix'] = self.ip_prefix
|
|
47081
|
+
return result
|
|
47082
|
+
|
|
47083
|
+
def from_map(self, m: dict = None):
|
|
47084
|
+
m = m or dict()
|
|
47085
|
+
if m.get('IpPrefix') is not None:
|
|
47086
|
+
self.ip_prefix = m.get('IpPrefix')
|
|
47087
|
+
return self
|
|
47088
|
+
|
|
47089
|
+
|
|
47090
|
+
class DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayIpPrefixList(TeaModel):
|
|
47091
|
+
def __init__(
|
|
47092
|
+
self,
|
|
47093
|
+
ip_prefix_list: List[DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayIpPrefixListIpPrefixList] = None,
|
|
47094
|
+
):
|
|
47095
|
+
self.ip_prefix_list = ip_prefix_list
|
|
47096
|
+
|
|
47097
|
+
def validate(self):
|
|
47098
|
+
if self.ip_prefix_list:
|
|
47099
|
+
for k in self.ip_prefix_list:
|
|
47100
|
+
if k:
|
|
47101
|
+
k.validate()
|
|
47102
|
+
|
|
47103
|
+
def to_map(self):
|
|
47104
|
+
_map = super().to_map()
|
|
47105
|
+
if _map is not None:
|
|
47106
|
+
return _map
|
|
47107
|
+
|
|
47108
|
+
result = dict()
|
|
47109
|
+
result['IpPrefixList'] = []
|
|
47110
|
+
if self.ip_prefix_list is not None:
|
|
47111
|
+
for k in self.ip_prefix_list:
|
|
47112
|
+
result['IpPrefixList'].append(k.to_map() if k else None)
|
|
47113
|
+
return result
|
|
47114
|
+
|
|
47115
|
+
def from_map(self, m: dict = None):
|
|
47116
|
+
m = m or dict()
|
|
47117
|
+
self.ip_prefix_list = []
|
|
47118
|
+
if m.get('IpPrefixList') is not None:
|
|
47119
|
+
for k in m.get('IpPrefixList'):
|
|
47120
|
+
temp_model = DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayIpPrefixListIpPrefixList()
|
|
47121
|
+
self.ip_prefix_list.append(temp_model.from_map(k))
|
|
47122
|
+
return self
|
|
47123
|
+
|
|
47124
|
+
|
|
47000
47125
|
class DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayNatGatewayPrivateInfo(TeaModel):
|
|
47001
47126
|
def __init__(
|
|
47002
47127
|
self,
|
|
@@ -47193,6 +47318,7 @@ class DescribeNatGatewaysResponseBodyNatGatewaysNatGateway(TeaModel):
|
|
|
47193
47318
|
instance_charge_type: str = None,
|
|
47194
47319
|
internet_charge_type: str = None,
|
|
47195
47320
|
ip_lists: DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayIpLists = None,
|
|
47321
|
+
ip_prefix_list: DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayIpPrefixList = None,
|
|
47196
47322
|
name: str = None,
|
|
47197
47323
|
nat_gateway_id: str = None,
|
|
47198
47324
|
nat_gateway_private_info: DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayNatGatewayPrivateInfo = None,
|
|
@@ -47262,6 +47388,7 @@ class DescribeNatGatewaysResponseBodyNatGatewaysNatGateway(TeaModel):
|
|
|
47262
47388
|
self.internet_charge_type = internet_charge_type
|
|
47263
47389
|
# The list of elastic IP addresses (EIPs) that are associated with the Internet NAT gateway.
|
|
47264
47390
|
self.ip_lists = ip_lists
|
|
47391
|
+
self.ip_prefix_list = ip_prefix_list
|
|
47265
47392
|
# The name of the NAT gateway.
|
|
47266
47393
|
self.name = name
|
|
47267
47394
|
# The ID of the NAT gateway.
|
|
@@ -47324,6 +47451,8 @@ class DescribeNatGatewaysResponseBodyNatGatewaysNatGateway(TeaModel):
|
|
|
47324
47451
|
self.full_nat_table_ids.validate()
|
|
47325
47452
|
if self.ip_lists:
|
|
47326
47453
|
self.ip_lists.validate()
|
|
47454
|
+
if self.ip_prefix_list:
|
|
47455
|
+
self.ip_prefix_list.validate()
|
|
47327
47456
|
if self.nat_gateway_private_info:
|
|
47328
47457
|
self.nat_gateway_private_info.validate()
|
|
47329
47458
|
if self.snat_table_ids:
|
|
@@ -47369,6 +47498,8 @@ class DescribeNatGatewaysResponseBodyNatGatewaysNatGateway(TeaModel):
|
|
|
47369
47498
|
result['InternetChargeType'] = self.internet_charge_type
|
|
47370
47499
|
if self.ip_lists is not None:
|
|
47371
47500
|
result['IpLists'] = self.ip_lists.to_map()
|
|
47501
|
+
if self.ip_prefix_list is not None:
|
|
47502
|
+
result['IpPrefixList'] = self.ip_prefix_list.to_map()
|
|
47372
47503
|
if self.name is not None:
|
|
47373
47504
|
result['Name'] = self.name
|
|
47374
47505
|
if self.nat_gateway_id is not None:
|
|
@@ -47439,6 +47570,9 @@ class DescribeNatGatewaysResponseBodyNatGatewaysNatGateway(TeaModel):
|
|
|
47439
47570
|
if m.get('IpLists') is not None:
|
|
47440
47571
|
temp_model = DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayIpLists()
|
|
47441
47572
|
self.ip_lists = temp_model.from_map(m['IpLists'])
|
|
47573
|
+
if m.get('IpPrefixList') is not None:
|
|
47574
|
+
temp_model = DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayIpPrefixList()
|
|
47575
|
+
self.ip_prefix_list = temp_model.from_map(m['IpPrefixList'])
|
|
47442
47576
|
if m.get('Name') is not None:
|
|
47443
47577
|
self.name = m.get('Name')
|
|
47444
47578
|
if m.get('NatGatewayId') is not None:
|
|
@@ -56365,6 +56499,7 @@ class DescribeTagsRequest(TeaModel):
|
|
|
56365
56499
|
#
|
|
56366
56500
|
# This parameter is required.
|
|
56367
56501
|
self.region_id = region_id
|
|
56502
|
+
# The resource IDs.
|
|
56368
56503
|
self.resource_id = resource_id
|
|
56369
56504
|
self.resource_owner_account = resource_owner_account
|
|
56370
56505
|
self.resource_owner_id = resource_owner_id
|
|
@@ -56378,6 +56513,7 @@ class DescribeTagsRequest(TeaModel):
|
|
|
56378
56513
|
# * **NATGATEWAY**: NAT gateway
|
|
56379
56514
|
# * **COMMONBANDWIDTHPACKAGE**: EIP bandwidth plan
|
|
56380
56515
|
self.resource_type = resource_type
|
|
56516
|
+
# The tags.
|
|
56381
56517
|
self.tag = tag
|
|
56382
56518
|
|
|
56383
56519
|
def validate(self):
|
|
@@ -56723,7 +56859,7 @@ class DescribeVRoutersResponseBodyVRoutersVRouter(TeaModel):
|
|
|
56723
56859
|
self.description = description
|
|
56724
56860
|
# The region to which the vRouter belongs.
|
|
56725
56861
|
self.region_id = region_id
|
|
56726
|
-
# The
|
|
56862
|
+
# The IDs of the route tables.
|
|
56727
56863
|
self.route_table_ids = route_table_ids
|
|
56728
56864
|
# The ID of the vRouter.
|
|
56729
56865
|
self.vrouter_id = vrouter_id
|
|
@@ -60889,6 +61025,304 @@ class DescribeVpcAttributeResponse(TeaModel):
|
|
|
60889
61025
|
return self
|
|
60890
61026
|
|
|
60891
61027
|
|
|
61028
|
+
class DescribeVpcGrantRulesToEcrRequestTags(TeaModel):
|
|
61029
|
+
def __init__(
|
|
61030
|
+
self,
|
|
61031
|
+
key: str = None,
|
|
61032
|
+
value: str = None,
|
|
61033
|
+
):
|
|
61034
|
+
self.key = key
|
|
61035
|
+
self.value = value
|
|
61036
|
+
|
|
61037
|
+
def validate(self):
|
|
61038
|
+
pass
|
|
61039
|
+
|
|
61040
|
+
def to_map(self):
|
|
61041
|
+
_map = super().to_map()
|
|
61042
|
+
if _map is not None:
|
|
61043
|
+
return _map
|
|
61044
|
+
|
|
61045
|
+
result = dict()
|
|
61046
|
+
if self.key is not None:
|
|
61047
|
+
result['Key'] = self.key
|
|
61048
|
+
if self.value is not None:
|
|
61049
|
+
result['Value'] = self.value
|
|
61050
|
+
return result
|
|
61051
|
+
|
|
61052
|
+
def from_map(self, m: dict = None):
|
|
61053
|
+
m = m or dict()
|
|
61054
|
+
if m.get('Key') is not None:
|
|
61055
|
+
self.key = m.get('Key')
|
|
61056
|
+
if m.get('Value') is not None:
|
|
61057
|
+
self.value = m.get('Value')
|
|
61058
|
+
return self
|
|
61059
|
+
|
|
61060
|
+
|
|
61061
|
+
class DescribeVpcGrantRulesToEcrRequest(TeaModel):
|
|
61062
|
+
def __init__(
|
|
61063
|
+
self,
|
|
61064
|
+
ecr_instance_id: str = None,
|
|
61065
|
+
ecr_owner_id: int = None,
|
|
61066
|
+
instance_id: str = None,
|
|
61067
|
+
instance_type: str = None,
|
|
61068
|
+
max_results: int = None,
|
|
61069
|
+
next_token: str = None,
|
|
61070
|
+
owner_account: str = None,
|
|
61071
|
+
owner_id: int = None,
|
|
61072
|
+
region_id: str = None,
|
|
61073
|
+
resource_group_id: str = None,
|
|
61074
|
+
resource_owner_account: str = None,
|
|
61075
|
+
resource_owner_id: int = None,
|
|
61076
|
+
tags: List[DescribeVpcGrantRulesToEcrRequestTags] = None,
|
|
61077
|
+
):
|
|
61078
|
+
self.ecr_instance_id = ecr_instance_id
|
|
61079
|
+
self.ecr_owner_id = ecr_owner_id
|
|
61080
|
+
self.instance_id = instance_id
|
|
61081
|
+
self.instance_type = instance_type
|
|
61082
|
+
self.max_results = max_results
|
|
61083
|
+
self.next_token = next_token
|
|
61084
|
+
self.owner_account = owner_account
|
|
61085
|
+
self.owner_id = owner_id
|
|
61086
|
+
# This parameter is required.
|
|
61087
|
+
self.region_id = region_id
|
|
61088
|
+
self.resource_group_id = resource_group_id
|
|
61089
|
+
self.resource_owner_account = resource_owner_account
|
|
61090
|
+
self.resource_owner_id = resource_owner_id
|
|
61091
|
+
self.tags = tags
|
|
61092
|
+
|
|
61093
|
+
def validate(self):
|
|
61094
|
+
if self.tags:
|
|
61095
|
+
for k in self.tags:
|
|
61096
|
+
if k:
|
|
61097
|
+
k.validate()
|
|
61098
|
+
|
|
61099
|
+
def to_map(self):
|
|
61100
|
+
_map = super().to_map()
|
|
61101
|
+
if _map is not None:
|
|
61102
|
+
return _map
|
|
61103
|
+
|
|
61104
|
+
result = dict()
|
|
61105
|
+
if self.ecr_instance_id is not None:
|
|
61106
|
+
result['EcrInstanceId'] = self.ecr_instance_id
|
|
61107
|
+
if self.ecr_owner_id is not None:
|
|
61108
|
+
result['EcrOwnerId'] = self.ecr_owner_id
|
|
61109
|
+
if self.instance_id is not None:
|
|
61110
|
+
result['InstanceId'] = self.instance_id
|
|
61111
|
+
if self.instance_type is not None:
|
|
61112
|
+
result['InstanceType'] = self.instance_type
|
|
61113
|
+
if self.max_results is not None:
|
|
61114
|
+
result['MaxResults'] = self.max_results
|
|
61115
|
+
if self.next_token is not None:
|
|
61116
|
+
result['NextToken'] = self.next_token
|
|
61117
|
+
if self.owner_account is not None:
|
|
61118
|
+
result['OwnerAccount'] = self.owner_account
|
|
61119
|
+
if self.owner_id is not None:
|
|
61120
|
+
result['OwnerId'] = self.owner_id
|
|
61121
|
+
if self.region_id is not None:
|
|
61122
|
+
result['RegionId'] = self.region_id
|
|
61123
|
+
if self.resource_group_id is not None:
|
|
61124
|
+
result['ResourceGroupId'] = self.resource_group_id
|
|
61125
|
+
if self.resource_owner_account is not None:
|
|
61126
|
+
result['ResourceOwnerAccount'] = self.resource_owner_account
|
|
61127
|
+
if self.resource_owner_id is not None:
|
|
61128
|
+
result['ResourceOwnerId'] = self.resource_owner_id
|
|
61129
|
+
result['Tags'] = []
|
|
61130
|
+
if self.tags is not None:
|
|
61131
|
+
for k in self.tags:
|
|
61132
|
+
result['Tags'].append(k.to_map() if k else None)
|
|
61133
|
+
return result
|
|
61134
|
+
|
|
61135
|
+
def from_map(self, m: dict = None):
|
|
61136
|
+
m = m or dict()
|
|
61137
|
+
if m.get('EcrInstanceId') is not None:
|
|
61138
|
+
self.ecr_instance_id = m.get('EcrInstanceId')
|
|
61139
|
+
if m.get('EcrOwnerId') is not None:
|
|
61140
|
+
self.ecr_owner_id = m.get('EcrOwnerId')
|
|
61141
|
+
if m.get('InstanceId') is not None:
|
|
61142
|
+
self.instance_id = m.get('InstanceId')
|
|
61143
|
+
if m.get('InstanceType') is not None:
|
|
61144
|
+
self.instance_type = m.get('InstanceType')
|
|
61145
|
+
if m.get('MaxResults') is not None:
|
|
61146
|
+
self.max_results = m.get('MaxResults')
|
|
61147
|
+
if m.get('NextToken') is not None:
|
|
61148
|
+
self.next_token = m.get('NextToken')
|
|
61149
|
+
if m.get('OwnerAccount') is not None:
|
|
61150
|
+
self.owner_account = m.get('OwnerAccount')
|
|
61151
|
+
if m.get('OwnerId') is not None:
|
|
61152
|
+
self.owner_id = m.get('OwnerId')
|
|
61153
|
+
if m.get('RegionId') is not None:
|
|
61154
|
+
self.region_id = m.get('RegionId')
|
|
61155
|
+
if m.get('ResourceGroupId') is not None:
|
|
61156
|
+
self.resource_group_id = m.get('ResourceGroupId')
|
|
61157
|
+
if m.get('ResourceOwnerAccount') is not None:
|
|
61158
|
+
self.resource_owner_account = m.get('ResourceOwnerAccount')
|
|
61159
|
+
if m.get('ResourceOwnerId') is not None:
|
|
61160
|
+
self.resource_owner_id = m.get('ResourceOwnerId')
|
|
61161
|
+
self.tags = []
|
|
61162
|
+
if m.get('Tags') is not None:
|
|
61163
|
+
for k in m.get('Tags'):
|
|
61164
|
+
temp_model = DescribeVpcGrantRulesToEcrRequestTags()
|
|
61165
|
+
self.tags.append(temp_model.from_map(k))
|
|
61166
|
+
return self
|
|
61167
|
+
|
|
61168
|
+
|
|
61169
|
+
class DescribeVpcGrantRulesToEcrResponseBodyGrantRuleModels(TeaModel):
|
|
61170
|
+
def __init__(
|
|
61171
|
+
self,
|
|
61172
|
+
creation_time: str = None,
|
|
61173
|
+
ecr_id: str = None,
|
|
61174
|
+
ecr_owner_id: int = None,
|
|
61175
|
+
instance_id: str = None,
|
|
61176
|
+
instance_uid: int = None,
|
|
61177
|
+
region_no: str = None,
|
|
61178
|
+
type: str = None,
|
|
61179
|
+
):
|
|
61180
|
+
self.creation_time = creation_time
|
|
61181
|
+
self.ecr_id = ecr_id
|
|
61182
|
+
self.ecr_owner_id = ecr_owner_id
|
|
61183
|
+
self.instance_id = instance_id
|
|
61184
|
+
self.instance_uid = instance_uid
|
|
61185
|
+
self.region_no = region_no
|
|
61186
|
+
self.type = type
|
|
61187
|
+
|
|
61188
|
+
def validate(self):
|
|
61189
|
+
pass
|
|
61190
|
+
|
|
61191
|
+
def to_map(self):
|
|
61192
|
+
_map = super().to_map()
|
|
61193
|
+
if _map is not None:
|
|
61194
|
+
return _map
|
|
61195
|
+
|
|
61196
|
+
result = dict()
|
|
61197
|
+
if self.creation_time is not None:
|
|
61198
|
+
result['CreationTime'] = self.creation_time
|
|
61199
|
+
if self.ecr_id is not None:
|
|
61200
|
+
result['EcrId'] = self.ecr_id
|
|
61201
|
+
if self.ecr_owner_id is not None:
|
|
61202
|
+
result['EcrOwnerId'] = self.ecr_owner_id
|
|
61203
|
+
if self.instance_id is not None:
|
|
61204
|
+
result['InstanceId'] = self.instance_id
|
|
61205
|
+
if self.instance_uid is not None:
|
|
61206
|
+
result['InstanceUid'] = self.instance_uid
|
|
61207
|
+
if self.region_no is not None:
|
|
61208
|
+
result['RegionNo'] = self.region_no
|
|
61209
|
+
if self.type is not None:
|
|
61210
|
+
result['Type'] = self.type
|
|
61211
|
+
return result
|
|
61212
|
+
|
|
61213
|
+
def from_map(self, m: dict = None):
|
|
61214
|
+
m = m or dict()
|
|
61215
|
+
if m.get('CreationTime') is not None:
|
|
61216
|
+
self.creation_time = m.get('CreationTime')
|
|
61217
|
+
if m.get('EcrId') is not None:
|
|
61218
|
+
self.ecr_id = m.get('EcrId')
|
|
61219
|
+
if m.get('EcrOwnerId') is not None:
|
|
61220
|
+
self.ecr_owner_id = m.get('EcrOwnerId')
|
|
61221
|
+
if m.get('InstanceId') is not None:
|
|
61222
|
+
self.instance_id = m.get('InstanceId')
|
|
61223
|
+
if m.get('InstanceUid') is not None:
|
|
61224
|
+
self.instance_uid = m.get('InstanceUid')
|
|
61225
|
+
if m.get('RegionNo') is not None:
|
|
61226
|
+
self.region_no = m.get('RegionNo')
|
|
61227
|
+
if m.get('Type') is not None:
|
|
61228
|
+
self.type = m.get('Type')
|
|
61229
|
+
return self
|
|
61230
|
+
|
|
61231
|
+
|
|
61232
|
+
class DescribeVpcGrantRulesToEcrResponseBody(TeaModel):
|
|
61233
|
+
def __init__(
|
|
61234
|
+
self,
|
|
61235
|
+
grant_rule_models: List[DescribeVpcGrantRulesToEcrResponseBodyGrantRuleModels] = None,
|
|
61236
|
+
next_token: str = None,
|
|
61237
|
+
request_id: str = None,
|
|
61238
|
+
total_count: str = None,
|
|
61239
|
+
):
|
|
61240
|
+
self.grant_rule_models = grant_rule_models
|
|
61241
|
+
self.next_token = next_token
|
|
61242
|
+
self.request_id = request_id
|
|
61243
|
+
self.total_count = total_count
|
|
61244
|
+
|
|
61245
|
+
def validate(self):
|
|
61246
|
+
if self.grant_rule_models:
|
|
61247
|
+
for k in self.grant_rule_models:
|
|
61248
|
+
if k:
|
|
61249
|
+
k.validate()
|
|
61250
|
+
|
|
61251
|
+
def to_map(self):
|
|
61252
|
+
_map = super().to_map()
|
|
61253
|
+
if _map is not None:
|
|
61254
|
+
return _map
|
|
61255
|
+
|
|
61256
|
+
result = dict()
|
|
61257
|
+
result['GrantRuleModels'] = []
|
|
61258
|
+
if self.grant_rule_models is not None:
|
|
61259
|
+
for k in self.grant_rule_models:
|
|
61260
|
+
result['GrantRuleModels'].append(k.to_map() if k else None)
|
|
61261
|
+
if self.next_token is not None:
|
|
61262
|
+
result['NextToken'] = self.next_token
|
|
61263
|
+
if self.request_id is not None:
|
|
61264
|
+
result['RequestId'] = self.request_id
|
|
61265
|
+
if self.total_count is not None:
|
|
61266
|
+
result['TotalCount'] = self.total_count
|
|
61267
|
+
return result
|
|
61268
|
+
|
|
61269
|
+
def from_map(self, m: dict = None):
|
|
61270
|
+
m = m or dict()
|
|
61271
|
+
self.grant_rule_models = []
|
|
61272
|
+
if m.get('GrantRuleModels') is not None:
|
|
61273
|
+
for k in m.get('GrantRuleModels'):
|
|
61274
|
+
temp_model = DescribeVpcGrantRulesToEcrResponseBodyGrantRuleModels()
|
|
61275
|
+
self.grant_rule_models.append(temp_model.from_map(k))
|
|
61276
|
+
if m.get('NextToken') is not None:
|
|
61277
|
+
self.next_token = m.get('NextToken')
|
|
61278
|
+
if m.get('RequestId') is not None:
|
|
61279
|
+
self.request_id = m.get('RequestId')
|
|
61280
|
+
if m.get('TotalCount') is not None:
|
|
61281
|
+
self.total_count = m.get('TotalCount')
|
|
61282
|
+
return self
|
|
61283
|
+
|
|
61284
|
+
|
|
61285
|
+
class DescribeVpcGrantRulesToEcrResponse(TeaModel):
|
|
61286
|
+
def __init__(
|
|
61287
|
+
self,
|
|
61288
|
+
headers: Dict[str, str] = None,
|
|
61289
|
+
status_code: int = None,
|
|
61290
|
+
body: DescribeVpcGrantRulesToEcrResponseBody = None,
|
|
61291
|
+
):
|
|
61292
|
+
self.headers = headers
|
|
61293
|
+
self.status_code = status_code
|
|
61294
|
+
self.body = body
|
|
61295
|
+
|
|
61296
|
+
def validate(self):
|
|
61297
|
+
if self.body:
|
|
61298
|
+
self.body.validate()
|
|
61299
|
+
|
|
61300
|
+
def to_map(self):
|
|
61301
|
+
_map = super().to_map()
|
|
61302
|
+
if _map is not None:
|
|
61303
|
+
return _map
|
|
61304
|
+
|
|
61305
|
+
result = dict()
|
|
61306
|
+
if self.headers is not None:
|
|
61307
|
+
result['headers'] = self.headers
|
|
61308
|
+
if self.status_code is not None:
|
|
61309
|
+
result['statusCode'] = self.status_code
|
|
61310
|
+
if self.body is not None:
|
|
61311
|
+
result['body'] = self.body.to_map()
|
|
61312
|
+
return result
|
|
61313
|
+
|
|
61314
|
+
def from_map(self, m: dict = None):
|
|
61315
|
+
m = m or dict()
|
|
61316
|
+
if m.get('headers') is not None:
|
|
61317
|
+
self.headers = m.get('headers')
|
|
61318
|
+
if m.get('statusCode') is not None:
|
|
61319
|
+
self.status_code = m.get('statusCode')
|
|
61320
|
+
if m.get('body') is not None:
|
|
61321
|
+
temp_model = DescribeVpcGrantRulesToEcrResponseBody()
|
|
61322
|
+
self.body = temp_model.from_map(m['body'])
|
|
61323
|
+
return self
|
|
61324
|
+
|
|
61325
|
+
|
|
60892
61326
|
class DescribeVpcsRequestTag(TeaModel):
|
|
60893
61327
|
def __init__(
|
|
60894
61328
|
self,
|
|
@@ -77692,6 +78126,7 @@ class ListNatIpsRequest(TeaModel):
|
|
|
77692
78126
|
class ListNatIpsResponseBodyNatIps(TeaModel):
|
|
77693
78127
|
def __init__(
|
|
77694
78128
|
self,
|
|
78129
|
+
ipv_4prefix: str = None,
|
|
77695
78130
|
is_default: bool = None,
|
|
77696
78131
|
nat_gateway_id: str = None,
|
|
77697
78132
|
nat_ip: str = None,
|
|
@@ -77701,6 +78136,7 @@ class ListNatIpsResponseBodyNatIps(TeaModel):
|
|
|
77701
78136
|
nat_ip_name: str = None,
|
|
77702
78137
|
nat_ip_status: str = None,
|
|
77703
78138
|
):
|
|
78139
|
+
self.ipv_4prefix = ipv_4prefix
|
|
77704
78140
|
# Indicates whether the IP address is the default IP address of the NAT gateway. Valid values:
|
|
77705
78141
|
#
|
|
77706
78142
|
# * **true**: yes
|
|
@@ -77737,6 +78173,8 @@ class ListNatIpsResponseBodyNatIps(TeaModel):
|
|
|
77737
78173
|
return _map
|
|
77738
78174
|
|
|
77739
78175
|
result = dict()
|
|
78176
|
+
if self.ipv_4prefix is not None:
|
|
78177
|
+
result['Ipv4Prefix'] = self.ipv_4prefix
|
|
77740
78178
|
if self.is_default is not None:
|
|
77741
78179
|
result['IsDefault'] = self.is_default
|
|
77742
78180
|
if self.nat_gateway_id is not None:
|
|
@@ -77757,6 +78195,8 @@ class ListNatIpsResponseBodyNatIps(TeaModel):
|
|
|
77757
78195
|
|
|
77758
78196
|
def from_map(self, m: dict = None):
|
|
77759
78197
|
m = m or dict()
|
|
78198
|
+
if m.get('Ipv4Prefix') is not None:
|
|
78199
|
+
self.ipv_4prefix = m.get('Ipv4Prefix')
|
|
77760
78200
|
if m.get('IsDefault') is not None:
|
|
77761
78201
|
self.is_default = m.get('IsDefault')
|
|
77762
78202
|
if m.get('NatGatewayId') is not None:
|