alibabacloud-vpc20160428 6.6.1__tar.gz → 6.6.3__tar.gz

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.
Files changed (17) hide show
  1. {alibabacloud_vpc20160428-6.6.1 → alibabacloud_vpc20160428-6.6.3}/ChangeLog.md +13 -0
  2. {alibabacloud_vpc20160428-6.6.1 → alibabacloud_vpc20160428-6.6.3}/PKG-INFO +1 -1
  3. alibabacloud_vpc20160428-6.6.3/alibabacloud_vpc20160428/__init__.py +1 -0
  4. {alibabacloud_vpc20160428-6.6.1 → alibabacloud_vpc20160428-6.6.3}/alibabacloud_vpc20160428/client.py +26 -6
  5. {alibabacloud_vpc20160428-6.6.1 → alibabacloud_vpc20160428-6.6.3}/alibabacloud_vpc20160428/models.py +344 -22
  6. {alibabacloud_vpc20160428-6.6.1 → alibabacloud_vpc20160428-6.6.3}/alibabacloud_vpc20160428.egg-info/PKG-INFO +1 -1
  7. {alibabacloud_vpc20160428-6.6.1 → alibabacloud_vpc20160428-6.6.3}/setup.py +1 -1
  8. alibabacloud_vpc20160428-6.6.1/alibabacloud_vpc20160428/__init__.py +0 -1
  9. {alibabacloud_vpc20160428-6.6.1 → alibabacloud_vpc20160428-6.6.3}/LICENSE +0 -0
  10. {alibabacloud_vpc20160428-6.6.1 → alibabacloud_vpc20160428-6.6.3}/MANIFEST.in +0 -0
  11. {alibabacloud_vpc20160428-6.6.1 → alibabacloud_vpc20160428-6.6.3}/README-CN.md +0 -0
  12. {alibabacloud_vpc20160428-6.6.1 → alibabacloud_vpc20160428-6.6.3}/README.md +0 -0
  13. {alibabacloud_vpc20160428-6.6.1 → alibabacloud_vpc20160428-6.6.3}/alibabacloud_vpc20160428.egg-info/SOURCES.txt +0 -0
  14. {alibabacloud_vpc20160428-6.6.1 → alibabacloud_vpc20160428-6.6.3}/alibabacloud_vpc20160428.egg-info/dependency_links.txt +0 -0
  15. {alibabacloud_vpc20160428-6.6.1 → alibabacloud_vpc20160428-6.6.3}/alibabacloud_vpc20160428.egg-info/requires.txt +0 -0
  16. {alibabacloud_vpc20160428-6.6.1 → alibabacloud_vpc20160428-6.6.3}/alibabacloud_vpc20160428.egg-info/top_level.txt +0 -0
  17. {alibabacloud_vpc20160428-6.6.1 → alibabacloud_vpc20160428-6.6.3}/setup.cfg +0 -0
@@ -1,3 +1,16 @@
1
+ 2024-05-06 Version: 6.6.2
2
+ - Update API DescribeSnatTableEntries: update response param.
3
+ - Update API DescribeVpnGateway: update response param.
4
+ - Update API DescribeVpnGateways: update response param.
5
+ - Update API ListTrafficMirrorFilters: update response param.
6
+ - Update API ModifySnatEntry: add param EipAffinity.
7
+
8
+
9
+ 2024-04-25 Version: 6.6.1
10
+ - Update API AssociateVpcCidrBlock: add param SecondaryCidrMask.
11
+ - Update API CreateVpc: add param Ipv4CidrMask.
12
+
13
+
1
14
  2024-04-17 Version: 6.6.0
2
15
  - Support API CreateExpressConnectTrafficQos.
3
16
  - Support API CreateExpressConnectTrafficQosQueue.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: alibabacloud_vpc20160428
3
- Version: 6.6.1
3
+ Version: 6.6.3
4
4
  Summary: Alibaba Cloud Virtual Private Cloud (20160428) SDK Library for Python
5
5
  Home-page: https://github.com/aliyun/alibabacloud-python-sdk
6
6
  Author: Alibaba Cloud SDK
@@ -0,0 +1 @@
1
+ __version__ = '6.6.3'
@@ -38385,25 +38385,33 @@ class Client(OpenApiClient):
38385
38385
 
38386
38386
  def modify_nat_gateway_attribute_with_options(
38387
38387
  self,
38388
- request: vpc_20160428_models.ModifyNatGatewayAttributeRequest,
38388
+ tmp_req: vpc_20160428_models.ModifyNatGatewayAttributeRequest,
38389
38389
  runtime: util_models.RuntimeOptions,
38390
38390
  ) -> vpc_20160428_models.ModifyNatGatewayAttributeResponse:
38391
38391
  """
38392
38392
  ## [](#)Description
38393
38393
  You can call this operation to query an Internet NAT gateway or a virtual private cloud (VPC) NAT gateway. The term NAT gateway in this topic refers to both NAT gateway types.
38394
38394
 
38395
- @param request: ModifyNatGatewayAttributeRequest
38395
+ @param tmp_req: ModifyNatGatewayAttributeRequest
38396
38396
  @param runtime: runtime options for this request RuntimeOptions
38397
38397
  @return: ModifyNatGatewayAttributeResponse
38398
38398
  """
38399
- UtilClient.validate_model(request)
38399
+ UtilClient.validate_model(tmp_req)
38400
+ request = vpc_20160428_models.ModifyNatGatewayAttributeShrinkRequest()
38401
+ OpenApiUtilClient.convert(tmp_req, request)
38402
+ if not UtilClient.is_unset(tmp_req.log_delivery):
38403
+ request.log_delivery_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.log_delivery, 'LogDelivery', 'json')
38400
38404
  query = {}
38401
38405
  if not UtilClient.is_unset(request.description):
38402
38406
  query['Description'] = request.description
38403
38407
  if not UtilClient.is_unset(request.eip_bind_mode):
38404
38408
  query['EipBindMode'] = request.eip_bind_mode
38409
+ if not UtilClient.is_unset(request.enable_session_log):
38410
+ query['EnableSessionLog'] = request.enable_session_log
38405
38411
  if not UtilClient.is_unset(request.icmp_reply_enabled):
38406
38412
  query['IcmpReplyEnabled'] = request.icmp_reply_enabled
38413
+ if not UtilClient.is_unset(request.log_delivery_shrink):
38414
+ query['LogDelivery'] = request.log_delivery_shrink
38407
38415
  if not UtilClient.is_unset(request.name):
38408
38416
  query['Name'] = request.name
38409
38417
  if not UtilClient.is_unset(request.nat_gateway_id):
@@ -38439,25 +38447,33 @@ class Client(OpenApiClient):
38439
38447
 
38440
38448
  async def modify_nat_gateway_attribute_with_options_async(
38441
38449
  self,
38442
- request: vpc_20160428_models.ModifyNatGatewayAttributeRequest,
38450
+ tmp_req: vpc_20160428_models.ModifyNatGatewayAttributeRequest,
38443
38451
  runtime: util_models.RuntimeOptions,
38444
38452
  ) -> vpc_20160428_models.ModifyNatGatewayAttributeResponse:
38445
38453
  """
38446
38454
  ## [](#)Description
38447
38455
  You can call this operation to query an Internet NAT gateway or a virtual private cloud (VPC) NAT gateway. The term NAT gateway in this topic refers to both NAT gateway types.
38448
38456
 
38449
- @param request: ModifyNatGatewayAttributeRequest
38457
+ @param tmp_req: ModifyNatGatewayAttributeRequest
38450
38458
  @param runtime: runtime options for this request RuntimeOptions
38451
38459
  @return: ModifyNatGatewayAttributeResponse
38452
38460
  """
38453
- UtilClient.validate_model(request)
38461
+ UtilClient.validate_model(tmp_req)
38462
+ request = vpc_20160428_models.ModifyNatGatewayAttributeShrinkRequest()
38463
+ OpenApiUtilClient.convert(tmp_req, request)
38464
+ if not UtilClient.is_unset(tmp_req.log_delivery):
38465
+ request.log_delivery_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.log_delivery, 'LogDelivery', 'json')
38454
38466
  query = {}
38455
38467
  if not UtilClient.is_unset(request.description):
38456
38468
  query['Description'] = request.description
38457
38469
  if not UtilClient.is_unset(request.eip_bind_mode):
38458
38470
  query['EipBindMode'] = request.eip_bind_mode
38471
+ if not UtilClient.is_unset(request.enable_session_log):
38472
+ query['EnableSessionLog'] = request.enable_session_log
38459
38473
  if not UtilClient.is_unset(request.icmp_reply_enabled):
38460
38474
  query['IcmpReplyEnabled'] = request.icmp_reply_enabled
38475
+ if not UtilClient.is_unset(request.log_delivery_shrink):
38476
+ query['LogDelivery'] = request.log_delivery_shrink
38461
38477
  if not UtilClient.is_unset(request.name):
38462
38478
  query['Name'] = request.name
38463
38479
  if not UtilClient.is_unset(request.nat_gateway_id):
@@ -39754,6 +39770,8 @@ class Client(OpenApiClient):
39754
39770
  query = {}
39755
39771
  if not UtilClient.is_unset(request.client_token):
39756
39772
  query['ClientToken'] = request.client_token
39773
+ if not UtilClient.is_unset(request.eip_affinity):
39774
+ query['EipAffinity'] = request.eip_affinity
39757
39775
  if not UtilClient.is_unset(request.owner_account):
39758
39776
  query['OwnerAccount'] = request.owner_account
39759
39777
  if not UtilClient.is_unset(request.owner_id):
@@ -39812,6 +39830,8 @@ class Client(OpenApiClient):
39812
39830
  query = {}
39813
39831
  if not UtilClient.is_unset(request.client_token):
39814
39832
  query['ClientToken'] = request.client_token
39833
+ if not UtilClient.is_unset(request.eip_affinity):
39834
+ query['EipAffinity'] = request.eip_affinity
39815
39835
  if not UtilClient.is_unset(request.owner_account):
39816
39836
  query['OwnerAccount'] = request.owner_account
39817
39837
  if not UtilClient.is_unset(request.owner_id):
@@ -43803,6 +43803,7 @@ class DescribeNatGatewaysResponseBodyNatGatewaysNatGateway(TeaModel):
43803
43803
  description: str = None,
43804
43804
  ecs_metric_enabled: bool = None,
43805
43805
  eip_bind_mode: str = None,
43806
+ enable_session_log: str = None,
43806
43807
  expired_time: str = None,
43807
43808
  forward_table_ids: DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayForwardTableIds = None,
43808
43809
  full_nat_table_ids: DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayFullNatTableIds = None,
@@ -43857,6 +43858,7 @@ class DescribeNatGatewaysResponseBodyNatGatewaysNatGateway(TeaModel):
43857
43858
  #
43858
43859
  # > Note: If you use the NAT mode, the EIP occupies one private IP address on the vSwitch of the NAT gateway. Make sure that the vSwitch has sufficient private IP addresses. Otherwise, the NAT gateway fails to be associated with the EIP. In NAT mode, you can associate a NAT gateway with up to 50 EIPs.
43859
43860
  self.eip_bind_mode = eip_bind_mode
43861
+ self.enable_session_log = enable_session_log
43860
43862
  # The time when the NAT gateway expires.
43861
43863
  self.expired_time = expired_time
43862
43864
  # The ID of the DNAT table.
@@ -43964,6 +43966,8 @@ class DescribeNatGatewaysResponseBodyNatGatewaysNatGateway(TeaModel):
43964
43966
  result['EcsMetricEnabled'] = self.ecs_metric_enabled
43965
43967
  if self.eip_bind_mode is not None:
43966
43968
  result['EipBindMode'] = self.eip_bind_mode
43969
+ if self.enable_session_log is not None:
43970
+ result['EnableSessionLog'] = self.enable_session_log
43967
43971
  if self.expired_time is not None:
43968
43972
  result['ExpiredTime'] = self.expired_time
43969
43973
  if self.forward_table_ids is not None:
@@ -44026,6 +44030,8 @@ class DescribeNatGatewaysResponseBodyNatGatewaysNatGateway(TeaModel):
44026
44030
  self.ecs_metric_enabled = m.get('EcsMetricEnabled')
44027
44031
  if m.get('EipBindMode') is not None:
44028
44032
  self.eip_bind_mode = m.get('EipBindMode')
44033
+ if m.get('EnableSessionLog') is not None:
44034
+ self.enable_session_log = m.get('EnableSessionLog')
44029
44035
  if m.get('ExpiredTime') is not None:
44030
44036
  self.expired_time = m.get('ExpiredTime')
44031
44037
  if m.get('ForwardTableIds') is not None:
@@ -50863,6 +50869,7 @@ class DescribeSnatTableEntriesRequest(TeaModel):
50863
50869
  class DescribeSnatTableEntriesResponseBodySnatTableEntriesSnatTableEntry(TeaModel):
50864
50870
  def __init__(
50865
50871
  self,
50872
+ eip_affinity: str = None,
50866
50873
  nat_gateway_id: str = None,
50867
50874
  snat_entry_id: str = None,
50868
50875
  snat_entry_name: str = None,
@@ -50872,6 +50879,7 @@ class DescribeSnatTableEntriesResponseBodySnatTableEntriesSnatTableEntry(TeaMode
50872
50879
  source_vswitch_id: str = None,
50873
50880
  status: str = None,
50874
50881
  ):
50882
+ self.eip_affinity = eip_affinity
50875
50883
  # The ID of the NAT gateway to which the SNAT entry belongs.
50876
50884
  self.nat_gateway_id = nat_gateway_id
50877
50885
  # The ID of the SNAT entry.
@@ -50904,6 +50912,8 @@ class DescribeSnatTableEntriesResponseBodySnatTableEntriesSnatTableEntry(TeaMode
50904
50912
  return _map
50905
50913
 
50906
50914
  result = dict()
50915
+ if self.eip_affinity is not None:
50916
+ result['EipAffinity'] = self.eip_affinity
50907
50917
  if self.nat_gateway_id is not None:
50908
50918
  result['NatGatewayId'] = self.nat_gateway_id
50909
50919
  if self.snat_entry_id is not None:
@@ -50924,6 +50934,8 @@ class DescribeSnatTableEntriesResponseBodySnatTableEntriesSnatTableEntry(TeaMode
50924
50934
 
50925
50935
  def from_map(self, m: dict = None):
50926
50936
  m = m or dict()
50937
+ if m.get('EipAffinity') is not None:
50938
+ self.eip_affinity = m.get('EipAffinity')
50927
50939
  if m.get('NatGatewayId') is not None:
50928
50940
  self.nat_gateway_id = m.get('NatGatewayId')
50929
50941
  if m.get('SnatEntryId') is not None:
@@ -61396,6 +61408,33 @@ class DescribeVpnGatewayRequest(TeaModel):
61396
61408
  return self
61397
61409
 
61398
61410
 
61411
+ class DescribeVpnGatewayResponseBodyEniInstanceIds(TeaModel):
61412
+ def __init__(
61413
+ self,
61414
+ eni_instance_id: List[str] = None,
61415
+ ):
61416
+ self.eni_instance_id = eni_instance_id
61417
+
61418
+ def validate(self):
61419
+ pass
61420
+
61421
+ def to_map(self):
61422
+ _map = super().to_map()
61423
+ if _map is not None:
61424
+ return _map
61425
+
61426
+ result = dict()
61427
+ if self.eni_instance_id is not None:
61428
+ result['EniInstanceId'] = self.eni_instance_id
61429
+ return result
61430
+
61431
+ def from_map(self, m: dict = None):
61432
+ m = m or dict()
61433
+ if m.get('EniInstanceId') is not None:
61434
+ self.eni_instance_id = m.get('EniInstanceId')
61435
+ return self
61436
+
61437
+
61399
61438
  class DescribeVpnGatewayResponseBodyReservationData(TeaModel):
61400
61439
  def __init__(
61401
61440
  self,
@@ -61563,6 +61602,7 @@ class DescribeVpnGatewayResponseBody(TeaModel):
61563
61602
  disaster_recovery_vswitch_id: str = None,
61564
61603
  enable_bgp: bool = None,
61565
61604
  end_time: int = None,
61605
+ eni_instance_ids: DescribeVpnGatewayResponseBodyEniInstanceIds = None,
61566
61606
  internet_ip: str = None,
61567
61607
  ipsec_vpn: str = None,
61568
61608
  name: str = None,
@@ -61619,6 +61659,7 @@ class DescribeVpnGatewayResponseBody(TeaModel):
61619
61659
  #
61620
61660
  # This value is a UNIX timestamp representing the number of milliseconds that have elapsed since the epoch time January 1, 1970, 00:00:00 UTC.
61621
61661
  self.end_time = end_time
61662
+ self.eni_instance_ids = eni_instance_ids
61622
61663
  # * If the VPN gateway supports IPsec-VPN connections in single-tunnel mode, the address is the IP address of the VPN gateway and can be used to create an IPsec-VPN connection or an SSL-VPN connection.
61623
61664
  #
61624
61665
  # * If the VPN gateway supports IPsec-VPN connections in dual-tunnel mode, the address is the first IP address used to create an IPsec-VPN connection. The address cannot be used to create an SSL-VPN connection.
@@ -61708,6 +61749,8 @@ class DescribeVpnGatewayResponseBody(TeaModel):
61708
61749
  self.vpn_type = vpn_type
61709
61750
 
61710
61751
  def validate(self):
61752
+ if self.eni_instance_ids:
61753
+ self.eni_instance_ids.validate()
61711
61754
  if self.reservation_data:
61712
61755
  self.reservation_data.validate()
61713
61756
  if self.tags:
@@ -61737,6 +61780,8 @@ class DescribeVpnGatewayResponseBody(TeaModel):
61737
61780
  result['EnableBgp'] = self.enable_bgp
61738
61781
  if self.end_time is not None:
61739
61782
  result['EndTime'] = self.end_time
61783
+ if self.eni_instance_ids is not None:
61784
+ result['EniInstanceIds'] = self.eni_instance_ids.to_map()
61740
61785
  if self.internet_ip is not None:
61741
61786
  result['InternetIp'] = self.internet_ip
61742
61787
  if self.ipsec_vpn is not None:
@@ -61795,6 +61840,9 @@ class DescribeVpnGatewayResponseBody(TeaModel):
61795
61840
  self.enable_bgp = m.get('EnableBgp')
61796
61841
  if m.get('EndTime') is not None:
61797
61842
  self.end_time = m.get('EndTime')
61843
+ if m.get('EniInstanceIds') is not None:
61844
+ temp_model = DescribeVpnGatewayResponseBodyEniInstanceIds()
61845
+ self.eni_instance_ids = temp_model.from_map(m['EniInstanceIds'])
61798
61846
  if m.get('InternetIp') is not None:
61799
61847
  self.internet_ip = m.get('InternetIp')
61800
61848
  if m.get('IpsecVpn') is not None:
@@ -62247,6 +62295,33 @@ class DescribeVpnGatewaysRequest(TeaModel):
62247
62295
  return self
62248
62296
 
62249
62297
 
62298
+ class DescribeVpnGatewaysResponseBodyVpnGatewaysVpnGatewayEniInstanceIds(TeaModel):
62299
+ def __init__(
62300
+ self,
62301
+ eni_instance_id: List[str] = None,
62302
+ ):
62303
+ self.eni_instance_id = eni_instance_id
62304
+
62305
+ def validate(self):
62306
+ pass
62307
+
62308
+ def to_map(self):
62309
+ _map = super().to_map()
62310
+ if _map is not None:
62311
+ return _map
62312
+
62313
+ result = dict()
62314
+ if self.eni_instance_id is not None:
62315
+ result['EniInstanceId'] = self.eni_instance_id
62316
+ return result
62317
+
62318
+ def from_map(self, m: dict = None):
62319
+ m = m or dict()
62320
+ if m.get('EniInstanceId') is not None:
62321
+ self.eni_instance_id = m.get('EniInstanceId')
62322
+ return self
62323
+
62324
+
62250
62325
  class DescribeVpnGatewaysResponseBodyVpnGatewaysVpnGatewayReservationData(TeaModel):
62251
62326
  def __init__(
62252
62327
  self,
@@ -62414,6 +62489,7 @@ class DescribeVpnGatewaysResponseBodyVpnGatewaysVpnGateway(TeaModel):
62414
62489
  disaster_recovery_vswitch_id: str = None,
62415
62490
  enable_bgp: bool = None,
62416
62491
  end_time: int = None,
62492
+ eni_instance_ids: DescribeVpnGatewaysResponseBodyVpnGatewaysVpnGatewayEniInstanceIds = None,
62417
62493
  internet_ip: str = None,
62418
62494
  ipsec_vpn: str = None,
62419
62495
  name: str = None,
@@ -62469,6 +62545,7 @@ class DescribeVpnGatewaysResponseBodyVpnGatewaysVpnGateway(TeaModel):
62469
62545
  #
62470
62546
  # This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.
62471
62547
  self.end_time = end_time
62548
+ self.eni_instance_ids = eni_instance_ids
62472
62549
  # * If the VPN gateway supports IPsec-VPN connections in single-tunnel mode, the address is the IP address of the VPN gateway and can be used to create an IPsec-VPN connection or an SSL-VPN connection.
62473
62550
  #
62474
62551
  # * If the VPN gateway supports IPsec-VPN connections in dual-tunnel mode, the address is the first IP address used to create an IPsec-VPN connection. The address cannot be used to create an SSL-VPN connection.
@@ -62556,6 +62633,8 @@ class DescribeVpnGatewaysResponseBodyVpnGatewaysVpnGateway(TeaModel):
62556
62633
  self.vpn_type = vpn_type
62557
62634
 
62558
62635
  def validate(self):
62636
+ if self.eni_instance_ids:
62637
+ self.eni_instance_ids.validate()
62559
62638
  if self.reservation_data:
62560
62639
  self.reservation_data.validate()
62561
62640
  if self.tags:
@@ -62585,6 +62664,8 @@ class DescribeVpnGatewaysResponseBodyVpnGatewaysVpnGateway(TeaModel):
62585
62664
  result['EnableBgp'] = self.enable_bgp
62586
62665
  if self.end_time is not None:
62587
62666
  result['EndTime'] = self.end_time
62667
+ if self.eni_instance_ids is not None:
62668
+ result['EniInstanceIds'] = self.eni_instance_ids.to_map()
62588
62669
  if self.internet_ip is not None:
62589
62670
  result['InternetIp'] = self.internet_ip
62590
62671
  if self.ipsec_vpn is not None:
@@ -62641,6 +62722,9 @@ class DescribeVpnGatewaysResponseBodyVpnGatewaysVpnGateway(TeaModel):
62641
62722
  self.enable_bgp = m.get('EnableBgp')
62642
62723
  if m.get('EndTime') is not None:
62643
62724
  self.end_time = m.get('EndTime')
62725
+ if m.get('EniInstanceIds') is not None:
62726
+ temp_model = DescribeVpnGatewaysResponseBodyVpnGatewaysVpnGatewayEniInstanceIds()
62727
+ self.eni_instance_ids = temp_model.from_map(m['EniInstanceIds'])
62644
62728
  if m.get('InternetIp') is not None:
62645
62729
  self.internet_ip = m.get('InternetIp')
62646
62730
  if m.get('IpsecVpn') is not None:
@@ -67358,6 +67442,51 @@ class GetNatGatewayAttributeResponseBodyIpList(TeaModel):
67358
67442
  return self
67359
67443
 
67360
67444
 
67445
+ class GetNatGatewayAttributeResponseBodyLogDelivery(TeaModel):
67446
+ def __init__(
67447
+ self,
67448
+ deliver_logs_error_message: str = None,
67449
+ delivery_status: str = None,
67450
+ log_delivery_type: str = None,
67451
+ log_destination: str = None,
67452
+ ):
67453
+ self.deliver_logs_error_message = deliver_logs_error_message
67454
+ self.delivery_status = delivery_status
67455
+ self.log_delivery_type = log_delivery_type
67456
+ self.log_destination = log_destination
67457
+
67458
+ def validate(self):
67459
+ pass
67460
+
67461
+ def to_map(self):
67462
+ _map = super().to_map()
67463
+ if _map is not None:
67464
+ return _map
67465
+
67466
+ result = dict()
67467
+ if self.deliver_logs_error_message is not None:
67468
+ result['DeliverLogsErrorMessage'] = self.deliver_logs_error_message
67469
+ if self.delivery_status is not None:
67470
+ result['DeliveryStatus'] = self.delivery_status
67471
+ if self.log_delivery_type is not None:
67472
+ result['LogDeliveryType'] = self.log_delivery_type
67473
+ if self.log_destination is not None:
67474
+ result['LogDestination'] = self.log_destination
67475
+ return result
67476
+
67477
+ def from_map(self, m: dict = None):
67478
+ m = m or dict()
67479
+ if m.get('DeliverLogsErrorMessage') is not None:
67480
+ self.deliver_logs_error_message = m.get('DeliverLogsErrorMessage')
67481
+ if m.get('DeliveryStatus') is not None:
67482
+ self.delivery_status = m.get('DeliveryStatus')
67483
+ if m.get('LogDeliveryType') is not None:
67484
+ self.log_delivery_type = m.get('LogDeliveryType')
67485
+ if m.get('LogDestination') is not None:
67486
+ self.log_destination = m.get('LogDestination')
67487
+ return self
67488
+
67489
+
67361
67490
  class GetNatGatewayAttributeResponseBodyPrivateInfo(TeaModel):
67362
67491
  def __init__(
67363
67492
  self,
@@ -67458,10 +67587,12 @@ class GetNatGatewayAttributeResponseBody(TeaModel):
67458
67587
  deletion_protection_info: GetNatGatewayAttributeResponseBodyDeletionProtectionInfo = None,
67459
67588
  description: str = None,
67460
67589
  ecs_metric_enabled: bool = None,
67590
+ enable_session_log: bool = None,
67461
67591
  expired_time: str = None,
67462
67592
  forward_table: GetNatGatewayAttributeResponseBodyForwardTable = None,
67463
67593
  full_nat_table: GetNatGatewayAttributeResponseBodyFullNatTable = None,
67464
67594
  ip_list: List[GetNatGatewayAttributeResponseBodyIpList] = None,
67595
+ log_delivery: GetNatGatewayAttributeResponseBodyLogDelivery = None,
67465
67596
  name: str = None,
67466
67597
  nat_gateway_id: str = None,
67467
67598
  nat_type: str = None,
@@ -67494,6 +67625,7 @@ class GetNatGatewayAttributeResponseBody(TeaModel):
67494
67625
  # * **true**: yes
67495
67626
  # * **false**: no
67496
67627
  self.ecs_metric_enabled = ecs_metric_enabled
67628
+ self.enable_session_log = enable_session_log
67497
67629
  # The time when the NAT gateway expires.
67498
67630
  self.expired_time = expired_time
67499
67631
  # The information about the DNAT table.
@@ -67502,6 +67634,7 @@ class GetNatGatewayAttributeResponseBody(TeaModel):
67502
67634
  self.full_nat_table = full_nat_table
67503
67635
  # The elastic IP addresses (EIPs) that are associated with the Internet NAT gateway.
67504
67636
  self.ip_list = ip_list
67637
+ self.log_delivery = log_delivery
67505
67638
  # The name of the NAT gateway.
67506
67639
  self.name = name
67507
67640
  # The ID of the NAT gateway.
@@ -67557,6 +67690,8 @@ class GetNatGatewayAttributeResponseBody(TeaModel):
67557
67690
  for k in self.ip_list:
67558
67691
  if k:
67559
67692
  k.validate()
67693
+ if self.log_delivery:
67694
+ self.log_delivery.validate()
67560
67695
  if self.private_info:
67561
67696
  self.private_info.validate()
67562
67697
  if self.snat_table:
@@ -67580,6 +67715,8 @@ class GetNatGatewayAttributeResponseBody(TeaModel):
67580
67715
  result['Description'] = self.description
67581
67716
  if self.ecs_metric_enabled is not None:
67582
67717
  result['EcsMetricEnabled'] = self.ecs_metric_enabled
67718
+ if self.enable_session_log is not None:
67719
+ result['EnableSessionLog'] = self.enable_session_log
67583
67720
  if self.expired_time is not None:
67584
67721
  result['ExpiredTime'] = self.expired_time
67585
67722
  if self.forward_table is not None:
@@ -67590,6 +67727,8 @@ class GetNatGatewayAttributeResponseBody(TeaModel):
67590
67727
  if self.ip_list is not None:
67591
67728
  for k in self.ip_list:
67592
67729
  result['IpList'].append(k.to_map() if k else None)
67730
+ if self.log_delivery is not None:
67731
+ result['LogDelivery'] = self.log_delivery.to_map()
67593
67732
  if self.name is not None:
67594
67733
  result['Name'] = self.name
67595
67734
  if self.nat_gateway_id is not None:
@@ -67634,6 +67773,8 @@ class GetNatGatewayAttributeResponseBody(TeaModel):
67634
67773
  self.description = m.get('Description')
67635
67774
  if m.get('EcsMetricEnabled') is not None:
67636
67775
  self.ecs_metric_enabled = m.get('EcsMetricEnabled')
67776
+ if m.get('EnableSessionLog') is not None:
67777
+ self.enable_session_log = m.get('EnableSessionLog')
67637
67778
  if m.get('ExpiredTime') is not None:
67638
67779
  self.expired_time = m.get('ExpiredTime')
67639
67780
  if m.get('ForwardTable') is not None:
@@ -67647,6 +67788,9 @@ class GetNatGatewayAttributeResponseBody(TeaModel):
67647
67788
  for k in m.get('IpList'):
67648
67789
  temp_model = GetNatGatewayAttributeResponseBodyIpList()
67649
67790
  self.ip_list.append(temp_model.from_map(k))
67791
+ if m.get('LogDelivery') is not None:
67792
+ temp_model = GetNatGatewayAttributeResponseBodyLogDelivery()
67793
+ self.log_delivery = temp_model.from_map(m['LogDelivery'])
67650
67794
  if m.get('Name') is not None:
67651
67795
  self.name = m.get('Name')
67652
67796
  if m.get('NatGatewayId') is not None:
@@ -74151,6 +74295,10 @@ class ListPublicIpAddressPoolsRequest(TeaModel):
74151
74295
  self.resource_group_id = resource_group_id
74152
74296
  self.resource_owner_account = resource_owner_account
74153
74297
  self.resource_owner_id = resource_owner_id
74298
+ # Specifies whether to enable Anti-DDoS Pro/Premium. Valid values:
74299
+ #
74300
+ # * **false**\
74301
+ # * **true**\
74154
74302
  self.security_protection_enabled = security_protection_enabled
74155
74303
  # The status of the IP address pool. Valid values:
74156
74304
  #
@@ -74251,9 +74399,9 @@ class ListPublicIpAddressPoolsResponseBodyPublicIpAddressPoolListTags(TeaModel):
74251
74399
  key: str = None,
74252
74400
  value: str = None,
74253
74401
  ):
74254
- # The tag key.
74402
+ # The key of tag N.
74255
74403
  self.key = key
74256
- # The tag value.
74404
+ # The value of tag N.
74257
74405
  self.value = value
74258
74406
 
74259
74407
  def validate(self):
@@ -74302,26 +74450,26 @@ class ListPublicIpAddressPoolsResponseBodyPublicIpAddressPoolList(TeaModel):
74302
74450
  user_type: bool = None,
74303
74451
  zones: List[str] = None,
74304
74452
  ):
74305
- # The service type of the IP address pool. Valid values:
74453
+ # The service type of the IP address pool.
74306
74454
  #
74307
- # * **CloudBox**: the cloud box service type. Only cloud box users can select this type.
74308
- # * **Default** (default): the general service type.
74455
+ # * **CloudBox** Only cloud box users can select this type.
74456
+ # * **Default** (default)
74309
74457
  self.biz_type = biz_type
74310
74458
  # The time when the IP address pool was created. The time is displayed in the `YYYY-MM-DDThh:mm:ssZ` format.
74311
74459
  self.creation_time = creation_time
74312
- # The information about the IP address pool.
74460
+ # The description of the IP address pool.
74313
74461
  self.description = description
74314
- # Indicates whether the IP address pool has idle IP addresses. Valid values:
74462
+ # Indicates whether idle IP addresses exist.
74315
74463
  #
74316
74464
  # * **true**\
74317
74465
  # * **false**\
74318
74466
  self.ip_address_remaining = ip_address_remaining
74319
- # The line type. Valid values:
74467
+ # The line type.
74320
74468
  #
74321
- # * **BGP**: BGP (Multi-ISP) line
74322
- # * **BGP_PRO**: BGP (Multi-ISP) Pro line
74469
+ # * **BGP**: BGP (Multi-ISP)
74470
+ # * **BGP_PRO**: BGP (Multi-ISP) Pro
74323
74471
  #
74324
- # For more information about the BGP (Multi-ISP) line and BGP (Multi-ISP) Pro line, see the "Line types" section of [What is EIP?](~~32321~~)
74472
+ # For more information about BGP (Multi-ISP) and BGP (Multi-ISP) Pro, see [EIP line types](~~32321~~).
74325
74473
  #
74326
74474
  # If you are allowed to use single-ISP bandwidth, one of the following values may be returned:
74327
74475
  #
@@ -74340,34 +74488,38 @@ class ListPublicIpAddressPoolsResponseBodyPublicIpAddressPoolList(TeaModel):
74340
74488
  self.owner_id = owner_id
74341
74489
  # The ID of the IP address pool.
74342
74490
  self.public_ip_address_pool_id = public_ip_address_pool_id
74343
- # The ID of the region in which the IP address pool that you want to query resides.
74491
+ # The region ID of the IP address pool.
74344
74492
  self.region_id = region_id
74345
74493
  # The ID of the resource group to which the IP address pool belongs.
74346
74494
  self.resource_group_id = resource_group_id
74495
+ # The edition of Anti-DDoS.
74496
+ #
74497
+ # * If you do not set this parameter, Anti-DDoS Origin Basic is used.
74498
+ # * If the value is set to **AntiDDoS_Enhanced**, Anti-DDoS Pro/Premium is used.
74347
74499
  self.security_protection_types = security_protection_types
74348
- # Indicates whether the IP address pool is shared.
74500
+ # The sharing type of the IP address pool.
74349
74501
  #
74350
- # * Only **Shared** may be returned.
74351
- # * An empty value indicates that the IP address pool is not shared.
74502
+ # * If **Shared** is returned, the IP address pool is shared.
74503
+ # * If an empty value is returned, the IP address pool is not shared.
74352
74504
  self.share_type = share_type
74353
- # The status of the IP address pool. Valid values:
74505
+ # The status of the IP address pool.
74354
74506
  #
74355
74507
  # * **Created**\
74356
74508
  # * **Deleting**\
74357
74509
  # * **Modifying**\
74358
74510
  self.status = status
74359
- # The tags.
74511
+ # The tag list.
74360
74512
  self.tags = tags
74361
- # The total number of IP addresses in the public IP address pool.
74513
+ # The total number of available IP addresses in the public IP address pool.
74362
74514
  self.total_ip_num = total_ip_num
74363
- # The number of occupied IP addresses in the public IP address pool.
74515
+ # The number of used IP addresses in the public IP address pool.
74364
74516
  self.used_ip_num = used_ip_num
74365
74517
  # The user type. Valid values:
74366
74518
  #
74367
- # * **admin**: administrator. An administrator can delete, modify, and query IP address pools and allocate elastic IP addresses (EIPs) to IP address pools.
74368
- # * **user**: regular user. A regular user can only allocate EIPs to IP address pools and query IP address pools. A regular user cannot modify or delete IP address pools.
74519
+ # * **admin**: An administrator can delete, modify, and query IP address pools, and can assign elastic IP addresses (EIPs) to the pool.
74520
+ # * **user**: A user can only assign EIPs to the IP address pool and query the IP address pool, but cannot modify or delete the IP address pool.
74369
74521
  self.user_type = user_type
74370
- # The zones of the IP address pool. This parameter is returned only when BizType is set to CloudBox.
74522
+ # The zone of the IP address pool. This parameter is returned only when the service type of the IP address pool is CloudBox.
74371
74523
  self.zones = zones
74372
74524
 
74373
74525
  def validate(self):
@@ -82671,12 +82823,166 @@ class ModifyIpv6InternetBandwidthResponse(TeaModel):
82671
82823
  return self
82672
82824
 
82673
82825
 
82826
+ class ModifyNatGatewayAttributeRequestLogDelivery(TeaModel):
82827
+ def __init__(
82828
+ self,
82829
+ log_delivery_type: str = None,
82830
+ log_destination: str = None,
82831
+ ):
82832
+ self.log_delivery_type = log_delivery_type
82833
+ self.log_destination = log_destination
82834
+
82835
+ def validate(self):
82836
+ pass
82837
+
82838
+ def to_map(self):
82839
+ _map = super().to_map()
82840
+ if _map is not None:
82841
+ return _map
82842
+
82843
+ result = dict()
82844
+ if self.log_delivery_type is not None:
82845
+ result['LogDeliveryType'] = self.log_delivery_type
82846
+ if self.log_destination is not None:
82847
+ result['LogDestination'] = self.log_destination
82848
+ return result
82849
+
82850
+ def from_map(self, m: dict = None):
82851
+ m = m or dict()
82852
+ if m.get('LogDeliveryType') is not None:
82853
+ self.log_delivery_type = m.get('LogDeliveryType')
82854
+ if m.get('LogDestination') is not None:
82855
+ self.log_destination = m.get('LogDestination')
82856
+ return self
82857
+
82858
+
82674
82859
  class ModifyNatGatewayAttributeRequest(TeaModel):
82675
82860
  def __init__(
82676
82861
  self,
82677
82862
  description: str = None,
82678
82863
  eip_bind_mode: str = None,
82864
+ enable_session_log: bool = None,
82865
+ icmp_reply_enabled: bool = None,
82866
+ log_delivery: ModifyNatGatewayAttributeRequestLogDelivery = None,
82867
+ name: str = None,
82868
+ nat_gateway_id: str = None,
82869
+ owner_account: str = None,
82870
+ owner_id: int = None,
82871
+ region_id: str = None,
82872
+ resource_owner_account: str = None,
82873
+ resource_owner_id: int = None,
82874
+ ):
82875
+ # The description of the NAT gateway.
82876
+ #
82877
+ # The description must be 1 to 128 characters in length, and cannot start with `http://` or `https://`.
82878
+ self.description = description
82879
+ # The mode in which the NAT gateway is associated with an elastic IP address (EIP). You can leave this parameter empty. If you want to specify a value for this parameter, set the value to **NAT**, which indicates that the NAT gateway is associated with the EIP in NAT mode.
82880
+ #
82881
+ # **\
82882
+ #
82883
+ # **Description**\
82884
+ #
82885
+ # * If EipBindMode is set to MULTI_BINDED when the NAT gateway is created, you can change the value of this parameter from **MULTI_BINDED** to **NAT**. If EipBindMode is set to NAT when the NAT gateway is created, you cannot change the value of this parameter from **NAT** to **MULTI_BINDED**. For more information about **MULTI_BINDED**, see [CreateNatGateway](~~120219~~).
82886
+ #
82887
+ # * When the mode in which the NAT gateway is associated with an EIP is being changed, a transient connection that lasts a few seconds may occur. If the number of EIPs with which the NAT gateway is associated increases, the transient connection lasts longer. You can change the mode only for a NAT gateway that is associated with up to five EIPs. We recommend that you change the mode during off-peak hours.
82888
+ # * After the mode is changed to **NAT**, the Internet NAT gateway is compatible with the IPv4 gateway. However, if you associate an EIP with the NAT gateway, the EIP occupies one private IP address on the vSwitch of the NAT gateway. Make sure that the vSwitch has sufficient private IP addresses. Otherwise, the EIP fails to be associated with the NAT gateway.
82889
+ self.eip_bind_mode = eip_bind_mode
82890
+ self.enable_session_log = enable_session_log
82891
+ # Specifies whether to enable the Internet Control Message Protocol (ICMP) non-retrieval feature. Valid values:
82892
+ #
82893
+ # * **false** (default)
82894
+ # * **true**\
82895
+ self.icmp_reply_enabled = icmp_reply_enabled
82896
+ self.log_delivery = log_delivery
82897
+ # The name of the NAT gateway.
82898
+ #
82899
+ # The name must be 1 to 128 characters in length and cannot start with `http://` or `https://`.
82900
+ self.name = name
82901
+ # The ID of the NAT gateway.
82902
+ self.nat_gateway_id = nat_gateway_id
82903
+ self.owner_account = owner_account
82904
+ self.owner_id = owner_id
82905
+ # The region ID of the NAT gateway.
82906
+ #
82907
+ # You can call the [DescribeRegions](~~36063~~) operation to query the most recent region list.
82908
+ self.region_id = region_id
82909
+ self.resource_owner_account = resource_owner_account
82910
+ self.resource_owner_id = resource_owner_id
82911
+
82912
+ def validate(self):
82913
+ if self.log_delivery:
82914
+ self.log_delivery.validate()
82915
+
82916
+ def to_map(self):
82917
+ _map = super().to_map()
82918
+ if _map is not None:
82919
+ return _map
82920
+
82921
+ result = dict()
82922
+ if self.description is not None:
82923
+ result['Description'] = self.description
82924
+ if self.eip_bind_mode is not None:
82925
+ result['EipBindMode'] = self.eip_bind_mode
82926
+ if self.enable_session_log is not None:
82927
+ result['EnableSessionLog'] = self.enable_session_log
82928
+ if self.icmp_reply_enabled is not None:
82929
+ result['IcmpReplyEnabled'] = self.icmp_reply_enabled
82930
+ if self.log_delivery is not None:
82931
+ result['LogDelivery'] = self.log_delivery.to_map()
82932
+ if self.name is not None:
82933
+ result['Name'] = self.name
82934
+ if self.nat_gateway_id is not None:
82935
+ result['NatGatewayId'] = self.nat_gateway_id
82936
+ if self.owner_account is not None:
82937
+ result['OwnerAccount'] = self.owner_account
82938
+ if self.owner_id is not None:
82939
+ result['OwnerId'] = self.owner_id
82940
+ if self.region_id is not None:
82941
+ result['RegionId'] = self.region_id
82942
+ if self.resource_owner_account is not None:
82943
+ result['ResourceOwnerAccount'] = self.resource_owner_account
82944
+ if self.resource_owner_id is not None:
82945
+ result['ResourceOwnerId'] = self.resource_owner_id
82946
+ return result
82947
+
82948
+ def from_map(self, m: dict = None):
82949
+ m = m or dict()
82950
+ if m.get('Description') is not None:
82951
+ self.description = m.get('Description')
82952
+ if m.get('EipBindMode') is not None:
82953
+ self.eip_bind_mode = m.get('EipBindMode')
82954
+ if m.get('EnableSessionLog') is not None:
82955
+ self.enable_session_log = m.get('EnableSessionLog')
82956
+ if m.get('IcmpReplyEnabled') is not None:
82957
+ self.icmp_reply_enabled = m.get('IcmpReplyEnabled')
82958
+ if m.get('LogDelivery') is not None:
82959
+ temp_model = ModifyNatGatewayAttributeRequestLogDelivery()
82960
+ self.log_delivery = temp_model.from_map(m['LogDelivery'])
82961
+ if m.get('Name') is not None:
82962
+ self.name = m.get('Name')
82963
+ if m.get('NatGatewayId') is not None:
82964
+ self.nat_gateway_id = m.get('NatGatewayId')
82965
+ if m.get('OwnerAccount') is not None:
82966
+ self.owner_account = m.get('OwnerAccount')
82967
+ if m.get('OwnerId') is not None:
82968
+ self.owner_id = m.get('OwnerId')
82969
+ if m.get('RegionId') is not None:
82970
+ self.region_id = m.get('RegionId')
82971
+ if m.get('ResourceOwnerAccount') is not None:
82972
+ self.resource_owner_account = m.get('ResourceOwnerAccount')
82973
+ if m.get('ResourceOwnerId') is not None:
82974
+ self.resource_owner_id = m.get('ResourceOwnerId')
82975
+ return self
82976
+
82977
+
82978
+ class ModifyNatGatewayAttributeShrinkRequest(TeaModel):
82979
+ def __init__(
82980
+ self,
82981
+ description: str = None,
82982
+ eip_bind_mode: str = None,
82983
+ enable_session_log: bool = None,
82679
82984
  icmp_reply_enabled: bool = None,
82985
+ log_delivery_shrink: str = None,
82680
82986
  name: str = None,
82681
82987
  nat_gateway_id: str = None,
82682
82988
  owner_account: str = None,
@@ -82700,11 +83006,13 @@ class ModifyNatGatewayAttributeRequest(TeaModel):
82700
83006
  # * When the mode in which the NAT gateway is associated with an EIP is being changed, a transient connection that lasts a few seconds may occur. If the number of EIPs with which the NAT gateway is associated increases, the transient connection lasts longer. You can change the mode only for a NAT gateway that is associated with up to five EIPs. We recommend that you change the mode during off-peak hours.
82701
83007
  # * After the mode is changed to **NAT**, the Internet NAT gateway is compatible with the IPv4 gateway. However, if you associate an EIP with the NAT gateway, the EIP occupies one private IP address on the vSwitch of the NAT gateway. Make sure that the vSwitch has sufficient private IP addresses. Otherwise, the EIP fails to be associated with the NAT gateway.
82702
83008
  self.eip_bind_mode = eip_bind_mode
83009
+ self.enable_session_log = enable_session_log
82703
83010
  # Specifies whether to enable the Internet Control Message Protocol (ICMP) non-retrieval feature. Valid values:
82704
83011
  #
82705
83012
  # * **false** (default)
82706
83013
  # * **true**\
82707
83014
  self.icmp_reply_enabled = icmp_reply_enabled
83015
+ self.log_delivery_shrink = log_delivery_shrink
82708
83016
  # The name of the NAT gateway.
82709
83017
  #
82710
83018
  # The name must be 1 to 128 characters in length and cannot start with `http://` or `https://`.
@@ -82733,8 +83041,12 @@ class ModifyNatGatewayAttributeRequest(TeaModel):
82733
83041
  result['Description'] = self.description
82734
83042
  if self.eip_bind_mode is not None:
82735
83043
  result['EipBindMode'] = self.eip_bind_mode
83044
+ if self.enable_session_log is not None:
83045
+ result['EnableSessionLog'] = self.enable_session_log
82736
83046
  if self.icmp_reply_enabled is not None:
82737
83047
  result['IcmpReplyEnabled'] = self.icmp_reply_enabled
83048
+ if self.log_delivery_shrink is not None:
83049
+ result['LogDelivery'] = self.log_delivery_shrink
82738
83050
  if self.name is not None:
82739
83051
  result['Name'] = self.name
82740
83052
  if self.nat_gateway_id is not None:
@@ -82757,8 +83069,12 @@ class ModifyNatGatewayAttributeRequest(TeaModel):
82757
83069
  self.description = m.get('Description')
82758
83070
  if m.get('EipBindMode') is not None:
82759
83071
  self.eip_bind_mode = m.get('EipBindMode')
83072
+ if m.get('EnableSessionLog') is not None:
83073
+ self.enable_session_log = m.get('EnableSessionLog')
82760
83074
  if m.get('IcmpReplyEnabled') is not None:
82761
83075
  self.icmp_reply_enabled = m.get('IcmpReplyEnabled')
83076
+ if m.get('LogDelivery') is not None:
83077
+ self.log_delivery_shrink = m.get('LogDelivery')
82762
83078
  if m.get('Name') is not None:
82763
83079
  self.name = m.get('Name')
82764
83080
  if m.get('NatGatewayId') is not None:
@@ -84451,6 +84767,7 @@ class ModifySnatEntryRequest(TeaModel):
84451
84767
  def __init__(
84452
84768
  self,
84453
84769
  client_token: str = None,
84770
+ eip_affinity: int = None,
84454
84771
  owner_account: str = None,
84455
84772
  owner_id: int = None,
84456
84773
  region_id: str = None,
@@ -84467,6 +84784,7 @@ class ModifySnatEntryRequest(TeaModel):
84467
84784
  #
84468
84785
  # > If you do not specify this parameter, the system automatically uses the **request ID** as the **client token**. The **request ID** may be different for each request.
84469
84786
  self.client_token = client_token
84787
+ self.eip_affinity = eip_affinity
84470
84788
  self.owner_account = owner_account
84471
84789
  self.owner_id = owner_id
84472
84790
  # The region ID of the NAT gateway.
@@ -84501,6 +84819,8 @@ class ModifySnatEntryRequest(TeaModel):
84501
84819
  result = dict()
84502
84820
  if self.client_token is not None:
84503
84821
  result['ClientToken'] = self.client_token
84822
+ if self.eip_affinity is not None:
84823
+ result['EipAffinity'] = self.eip_affinity
84504
84824
  if self.owner_account is not None:
84505
84825
  result['OwnerAccount'] = self.owner_account
84506
84826
  if self.owner_id is not None:
@@ -84525,6 +84845,8 @@ class ModifySnatEntryRequest(TeaModel):
84525
84845
  m = m or dict()
84526
84846
  if m.get('ClientToken') is not None:
84527
84847
  self.client_token = m.get('ClientToken')
84848
+ if m.get('EipAffinity') is not None:
84849
+ self.eip_affinity = m.get('EipAffinity')
84528
84850
  if m.get('OwnerAccount') is not None:
84529
84851
  self.owner_account = m.get('OwnerAccount')
84530
84852
  if m.get('OwnerId') is not None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: alibabacloud-vpc20160428
3
- Version: 6.6.1
3
+ Version: 6.6.3
4
4
  Summary: Alibaba Cloud Virtual Private Cloud (20160428) SDK Library for Python
5
5
  Home-page: https://github.com/aliyun/alibabacloud-python-sdk
6
6
  Author: Alibaba Cloud SDK
@@ -24,7 +24,7 @@ from setuptools import setup, find_packages
24
24
  """
25
25
  setup module for alibabacloud_vpc20160428.
26
26
 
27
- Created on 25/04/2024
27
+ Created on 07/05/2024
28
28
 
29
29
  @author: Alibaba Cloud SDK
30
30
  """
@@ -1 +0,0 @@
1
- __version__ = '6.6.1'