alibabacloud-rds20140815 7.2.0__py3-none-any.whl → 7.3.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.
@@ -1157,6 +1157,142 @@ class CalculateDBInstanceWeightResponse(TeaModel):
1157
1157
  return self
1158
1158
 
1159
1159
 
1160
+ class CancelActiveOperationTasksRequest(TeaModel):
1161
+ def __init__(
1162
+ self,
1163
+ ids: str = None,
1164
+ owner_account: str = None,
1165
+ owner_id: int = None,
1166
+ resource_owner_account: str = None,
1167
+ resource_owner_id: int = None,
1168
+ security_token: str = None,
1169
+ ):
1170
+ # List of IDs for batch cancellation, separated by English commas (,). It is recommended to not exceed 25 at a time.
1171
+ #
1172
+ # This parameter is required.
1173
+ self.ids = ids
1174
+ self.owner_account = owner_account
1175
+ self.owner_id = owner_id
1176
+ self.resource_owner_account = resource_owner_account
1177
+ self.resource_owner_id = resource_owner_id
1178
+ self.security_token = security_token
1179
+
1180
+ def validate(self):
1181
+ pass
1182
+
1183
+ def to_map(self):
1184
+ _map = super().to_map()
1185
+ if _map is not None:
1186
+ return _map
1187
+
1188
+ result = dict()
1189
+ if self.ids is not None:
1190
+ result['Ids'] = self.ids
1191
+ if self.owner_account is not None:
1192
+ result['OwnerAccount'] = self.owner_account
1193
+ if self.owner_id is not None:
1194
+ result['OwnerId'] = self.owner_id
1195
+ if self.resource_owner_account is not None:
1196
+ result['ResourceOwnerAccount'] = self.resource_owner_account
1197
+ if self.resource_owner_id is not None:
1198
+ result['ResourceOwnerId'] = self.resource_owner_id
1199
+ if self.security_token is not None:
1200
+ result['SecurityToken'] = self.security_token
1201
+ return result
1202
+
1203
+ def from_map(self, m: dict = None):
1204
+ m = m or dict()
1205
+ if m.get('Ids') is not None:
1206
+ self.ids = m.get('Ids')
1207
+ if m.get('OwnerAccount') is not None:
1208
+ self.owner_account = m.get('OwnerAccount')
1209
+ if m.get('OwnerId') is not None:
1210
+ self.owner_id = m.get('OwnerId')
1211
+ if m.get('ResourceOwnerAccount') is not None:
1212
+ self.resource_owner_account = m.get('ResourceOwnerAccount')
1213
+ if m.get('ResourceOwnerId') is not None:
1214
+ self.resource_owner_id = m.get('ResourceOwnerId')
1215
+ if m.get('SecurityToken') is not None:
1216
+ self.security_token = m.get('SecurityToken')
1217
+ return self
1218
+
1219
+
1220
+ class CancelActiveOperationTasksResponseBody(TeaModel):
1221
+ def __init__(
1222
+ self,
1223
+ ids: str = None,
1224
+ request_id: str = None,
1225
+ ):
1226
+ # Batch cancellation task IDs, separated by English commas (,).
1227
+ self.ids = ids
1228
+ # Request ID.
1229
+ self.request_id = request_id
1230
+
1231
+ def validate(self):
1232
+ pass
1233
+
1234
+ def to_map(self):
1235
+ _map = super().to_map()
1236
+ if _map is not None:
1237
+ return _map
1238
+
1239
+ result = dict()
1240
+ if self.ids is not None:
1241
+ result['Ids'] = self.ids
1242
+ if self.request_id is not None:
1243
+ result['RequestId'] = self.request_id
1244
+ return result
1245
+
1246
+ def from_map(self, m: dict = None):
1247
+ m = m or dict()
1248
+ if m.get('Ids') is not None:
1249
+ self.ids = m.get('Ids')
1250
+ if m.get('RequestId') is not None:
1251
+ self.request_id = m.get('RequestId')
1252
+ return self
1253
+
1254
+
1255
+ class CancelActiveOperationTasksResponse(TeaModel):
1256
+ def __init__(
1257
+ self,
1258
+ headers: Dict[str, str] = None,
1259
+ status_code: int = None,
1260
+ body: CancelActiveOperationTasksResponseBody = None,
1261
+ ):
1262
+ self.headers = headers
1263
+ self.status_code = status_code
1264
+ self.body = body
1265
+
1266
+ def validate(self):
1267
+ if self.body:
1268
+ self.body.validate()
1269
+
1270
+ def to_map(self):
1271
+ _map = super().to_map()
1272
+ if _map is not None:
1273
+ return _map
1274
+
1275
+ result = dict()
1276
+ if self.headers is not None:
1277
+ result['headers'] = self.headers
1278
+ if self.status_code is not None:
1279
+ result['statusCode'] = self.status_code
1280
+ if self.body is not None:
1281
+ result['body'] = self.body.to_map()
1282
+ return result
1283
+
1284
+ def from_map(self, m: dict = None):
1285
+ m = m or dict()
1286
+ if m.get('headers') is not None:
1287
+ self.headers = m.get('headers')
1288
+ if m.get('statusCode') is not None:
1289
+ self.status_code = m.get('statusCode')
1290
+ if m.get('body') is not None:
1291
+ temp_model = CancelActiveOperationTasksResponseBody()
1292
+ self.body = temp_model.from_map(m['body'])
1293
+ return self
1294
+
1295
+
1160
1296
  class CheckAccountNameAvailableRequest(TeaModel):
1161
1297
  def __init__(
1162
1298
  self,
@@ -2194,6 +2330,7 @@ class CloneDBInstanceRequest(TeaModel):
2194
2330
  category: str = None,
2195
2331
  client_token: str = None,
2196
2332
  dbinstance_class: str = None,
2333
+ dbinstance_description: str = None,
2197
2334
  dbinstance_id: str = None,
2198
2335
  dbinstance_storage: int = None,
2199
2336
  dbinstance_storage_type: str = None,
@@ -2262,6 +2399,10 @@ class CloneDBInstanceRequest(TeaModel):
2262
2399
  #
2263
2400
  # > By default, the new instance uses the same instance type as the original primary instance.
2264
2401
  self.dbinstance_class = dbinstance_class
2402
+ # The instance name. The value must be 2 to 255 characters in length The value can contain letters, digits, underscores (_), and hyphens (-), and must start with a letter.
2403
+ #
2404
+ # > The value cannot start with http:// or https://.
2405
+ self.dbinstance_description = dbinstance_description
2265
2406
  # The instance ID.
2266
2407
  #
2267
2408
  # This parameter is required.
@@ -2382,6 +2523,8 @@ class CloneDBInstanceRequest(TeaModel):
2382
2523
  result['ClientToken'] = self.client_token
2383
2524
  if self.dbinstance_class is not None:
2384
2525
  result['DBInstanceClass'] = self.dbinstance_class
2526
+ if self.dbinstance_description is not None:
2527
+ result['DBInstanceDescription'] = self.dbinstance_description
2385
2528
  if self.dbinstance_id is not None:
2386
2529
  result['DBInstanceId'] = self.dbinstance_id
2387
2530
  if self.dbinstance_storage is not None:
@@ -2448,6 +2591,8 @@ class CloneDBInstanceRequest(TeaModel):
2448
2591
  self.client_token = m.get('ClientToken')
2449
2592
  if m.get('DBInstanceClass') is not None:
2450
2593
  self.dbinstance_class = m.get('DBInstanceClass')
2594
+ if m.get('DBInstanceDescription') is not None:
2595
+ self.dbinstance_description = m.get('DBInstanceDescription')
2451
2596
  if m.get('DBInstanceId') is not None:
2452
2597
  self.dbinstance_id = m.get('DBInstanceId')
2453
2598
  if m.get('DBInstanceStorage') is not None:
@@ -2509,6 +2654,7 @@ class CloneDBInstanceShrinkRequest(TeaModel):
2509
2654
  category: str = None,
2510
2655
  client_token: str = None,
2511
2656
  dbinstance_class: str = None,
2657
+ dbinstance_description: str = None,
2512
2658
  dbinstance_id: str = None,
2513
2659
  dbinstance_storage: int = None,
2514
2660
  dbinstance_storage_type: str = None,
@@ -2577,6 +2723,10 @@ class CloneDBInstanceShrinkRequest(TeaModel):
2577
2723
  #
2578
2724
  # > By default, the new instance uses the same instance type as the original primary instance.
2579
2725
  self.dbinstance_class = dbinstance_class
2726
+ # The instance name. The value must be 2 to 255 characters in length The value can contain letters, digits, underscores (_), and hyphens (-), and must start with a letter.
2727
+ #
2728
+ # > The value cannot start with http:// or https://.
2729
+ self.dbinstance_description = dbinstance_description
2580
2730
  # The instance ID.
2581
2731
  #
2582
2732
  # This parameter is required.
@@ -2696,6 +2846,8 @@ class CloneDBInstanceShrinkRequest(TeaModel):
2696
2846
  result['ClientToken'] = self.client_token
2697
2847
  if self.dbinstance_class is not None:
2698
2848
  result['DBInstanceClass'] = self.dbinstance_class
2849
+ if self.dbinstance_description is not None:
2850
+ result['DBInstanceDescription'] = self.dbinstance_description
2699
2851
  if self.dbinstance_id is not None:
2700
2852
  result['DBInstanceId'] = self.dbinstance_id
2701
2853
  if self.dbinstance_storage is not None:
@@ -2762,6 +2914,8 @@ class CloneDBInstanceShrinkRequest(TeaModel):
2762
2914
  self.client_token = m.get('ClientToken')
2763
2915
  if m.get('DBInstanceClass') is not None:
2764
2916
  self.dbinstance_class = m.get('DBInstanceClass')
2917
+ if m.get('DBInstanceDescription') is not None:
2918
+ self.dbinstance_description = m.get('DBInstanceDescription')
2765
2919
  if m.get('DBInstanceId') is not None:
2766
2920
  self.dbinstance_id = m.get('DBInstanceId')
2767
2921
  if m.get('DBInstanceStorage') is not None:
@@ -3213,16 +3367,16 @@ class CopyDatabaseRequest(TeaModel):
3213
3367
  ):
3214
3368
  # The instance name.
3215
3369
  self.dbinstance_name = dbinstance_name
3216
- # Destination database name.
3370
+ # The destination database name.
3217
3371
  self.dst_dbname = dst_dbname
3218
3372
  self.owner_id = owner_id
3219
- # Reserve account.
3373
+ # The reserved account.
3220
3374
  self.reserve_account = reserve_account
3221
3375
  # The ID of the resource group.
3222
3376
  self.resource_group_id = resource_group_id
3223
3377
  self.resource_owner_account = resource_owner_account
3224
3378
  self.resource_owner_id = resource_owner_id
3225
- # Source database name.
3379
+ # The source database name.
3226
3380
  self.src_dbname = src_dbname
3227
3381
 
3228
3382
  def validate(self):
@@ -3581,6 +3735,13 @@ class CreateAccountRequest(TeaModel):
3581
3735
  #
3582
3736
  # Before you create a system admin account, check whether the instance meets all prerequisites. For more information, see [Create a system admin account](https://help.aliyun.com/document_detail/170736.html).
3583
3737
  self.account_type = account_type
3738
+ # Specifies whether to use a password policy.
3739
+ #
3740
+ # >
3741
+ #
3742
+ # * This parameter is available only for ApsaraDB RDS for SQL Server instances that do not belong to the shared instance family and do not run SQL Server 2008 R2.
3743
+ #
3744
+ # * Before you call this operation, you must configure a password policy for the account of your instance. For more information, see [Configure a password policy for the account of an ApsaraDB RDS for SQL Server instance](https://help.aliyun.com/document_detail/2848317.html).
3584
3745
  self.check_policy = check_policy
3585
3746
  # The instance ID. You can call the DescribeDBInstances operation to query the instance ID.
3586
3747
  #
@@ -4271,15 +4432,15 @@ class CreateDBInstanceRequestServerlessConfig(TeaModel):
4271
4432
  # * Serverless ApsaraDB RDS for SQL Server instances: **2 to 8**\
4272
4433
  # * Serverless ApsaraDB RDS for PostgreSQL instances: **1 to 14**\
4273
4434
  #
4274
- # > The value of this parameter must be greater than or equal to the value of **MinCapacity** and can be set only to an **integer**.
4435
+ # > The value of this parameter must be greater than or equal to the value of the **MinCapacity** parameter and can be set only to an **integer**.
4275
4436
  self.max_capacity = max_capacity
4276
- # The minimum value of RCUs. Valid values:
4437
+ # The minimum number of RCUs. Valid values:
4277
4438
  #
4278
4439
  # * Serverless ApsaraDB RDS for MySQL instances: **0.5 to 32**.
4279
4440
  # * Serverless ApsaraDB RDS for SQL Server instances: **2 to 8**. Only integers are supported.
4280
4441
  # * Serverless ApsaraDB RDS for PostgreSQL instances: **0.5 to 14**.
4281
4442
  #
4282
- # > The value of this parameter must be less than or equal to the value of **MaxCapacity**.
4443
+ # > The value of this parameter must be less than or equal to the value of the **MaxCapacity** parameter.
4283
4444
  self.min_capacity = min_capacity
4284
4445
  # Specifies whether to enable the forced scaling feature for the serverless instance. Valid values:
4285
4446
  #
@@ -4438,17 +4599,17 @@ class CreateDBInstanceRequest(TeaModel):
4438
4599
  # > * After you submit a request to create multiple ApsaraDB RDS for MySQL instances, this operation returns **TaskId**, **RequestId**, and **Message**. You can call the DescribeDBInstanceAttribute operation to query the information about an instance.
4439
4600
  # > * If the value of the **Engine** parameter is not **MySQL** and the value of the Amount parameter is greater than **1**, this operation fails and returns an error code `InvalidParam.Engine`.
4440
4601
  self.amount = amount
4441
- # Specifies whether to automatically create a proxy. Valid values:
4602
+ # Specifies whether to automatically create a database proxy. Valid values:
4442
4603
  #
4443
- # * **true**: automatically creates a proxy. By default, general-purpose proxies are enabled.
4444
- # * **false**: does not automatically create a proxy.
4604
+ # * **true**: automatically creates a database proxy. By default, a general-purpose database proxy is created.
4605
+ # * **false**: does not automatically create a database proxy.
4445
4606
  self.auto_create_proxy = auto_create_proxy
4446
4607
  # Specifies whether to enable the automatic payment feature. Valid values:
4447
4608
  #
4448
- # * **true**: enables the feature. Make sure that your account balance is sufficient.
4609
+ # * **true**: enables the feature. You must make sure that your account balance is sufficient.
4449
4610
  # * **false**: disables the feature. An unpaid order is generated.
4450
4611
  #
4451
- # > The default value is true. If your account balance is insufficient, you can set the AutoPay parameter to false to generate an unpaid order. Then, you can log on to the ApsaraDB RDS console to complete the payment.
4612
+ # > Default value: true. If your account balance is insufficient, you can set the AutoPay parameter to false to generate an unpaid order. Then, you can log on to the ApsaraDB RDS console to complete the payment.
4452
4613
  self.auto_pay = auto_pay
4453
4614
  # Specifies whether to enable auto-renewal for the instance. You must specify this parameter only if the instance uses the subscription billing method. Valid values:
4454
4615
  #
@@ -4659,9 +4820,13 @@ class CreateDBInstanceRequest(TeaModel):
4659
4820
  # * **VPC**: virtual private cloud (VPC)
4660
4821
  # * **Classic**: the classic network
4661
4822
  #
4662
- # > * If the instance runs MySQL and uses cloud disks, you must set this parameter to **VPC**.
4663
- # > * If the instance runs PostgreSQL or MariaDB, you must set this parameter to **VPC**.
4664
- # > * If the instance runs SQL Server Basic or SQL Server Web, you can set this parameter to VPC or Classic. If the instance runs other database engine, you must set this parameter to **VPC**.
4823
+ # >
4824
+ #
4825
+ # * If the instance runs MySQL and uses cloud disks, you must set this parameter to **VPC**.
4826
+ #
4827
+ # * If the instance runs PostgreSQL or MariaDB, you must set this parameter to **VPC**.
4828
+ #
4829
+ # * If the instance runs SQL Server Basic or SQL Server Web, you can set this parameter to VPC or Classic. If the instance runs other database engine, you must set this parameter to **VPC**.
4665
4830
  self.instance_network_type = instance_network_type
4666
4831
  # Specifies whether to enable the I/O acceleration feature of general ESSDs. Valid values:
4667
4832
  #
@@ -4685,7 +4850,7 @@ class CreateDBInstanceRequest(TeaModel):
4685
4850
  # * **Year**\
4686
4851
  # * **Month**\
4687
4852
  #
4688
- # > If you set the PayType parameter to **Prepaid**, you must specify this parameter.
4853
+ # > If you set the PayType parameter to **Prepaid**, you must also specify this parameter.
4689
4854
  self.period = period
4690
4855
  # The port. You can initialize the port when you create the instance.
4691
4856
  #
@@ -4714,7 +4879,7 @@ class CreateDBInstanceRequest(TeaModel):
4714
4879
  #
4715
4880
  # > ApsaraDB RDS for MariaDB does not support serverless instances.
4716
4881
  self.serverless_config = serverless_config
4717
- # Specifies whether to enable the automatic storage expansion feature for the instance. This feature is supported if the instance runs MySQL or PostgreSQL. Valid values:
4882
+ # Specifies whether to enable the automatic storage expansion feature for the instance. If the instance runs MySQL or PostgreSQL, this feature is supported. Valid values:
4718
4883
  #
4719
4884
  # * **Enable**\
4720
4885
  # * **Disable** (default)
@@ -4729,7 +4894,7 @@ class CreateDBInstanceRequest(TeaModel):
4729
4894
  # * **40**\
4730
4895
  # * **50**\
4731
4896
  #
4732
- # > If you set the **StorageAutoScale** parameter to **Enable**, you must specify this parameter.
4897
+ # > If you set the **StorageAutoScale** parameter to **Enable**, you must also specify this parameter.
4733
4898
  self.storage_threshold = storage_threshold
4734
4899
  # The maximum storage capacity that is allowed for automatic storage expansion. The storage capacity of the instance cannot exceed the maximum storage capacity. Unit: GB.
4735
4900
  #
@@ -4778,12 +4943,12 @@ class CreateDBInstanceRequest(TeaModel):
4778
4943
  #
4779
4944
  # > If you configure the **BabelfishConfig** parameter for your instance that runs PostgreSQL and set the babelfishEnabled field to true, the value of this parameter is in the following format: `rds_postgres_Major engine version00_AliPG version_babelfish`.
4780
4945
  self.target_minor_version = target_minor_version
4781
- # The subscription duration of the instance.
4946
+ # The subscription duration of the instance. Valid values:
4782
4947
  #
4783
4948
  # * If you set the **Period** parameter to **Year**, the value of the **UsedTime** parameter ranges from **1 to 5**.
4784
4949
  # * If you set the **Period** parameter to **Month**, the value of the **UsedTime** parameter ranges from **1 to 11**.
4785
4950
  #
4786
- # > If you set the PayType parameter to **Prepaid**, you must specify this parameter.
4951
+ # > If you set the PayType parameter to **Prepaid**, you must also specify this parameter.
4787
4952
  self.used_time = used_time
4788
4953
  # The ID of the full backup file. You can call the ListUserBackupFiles operation to query the ID of the full backup file. If you want to create an instance by using the data of a backup file, you must specify this parameter.
4789
4954
  #
@@ -5189,17 +5354,17 @@ class CreateDBInstanceShrinkRequest(TeaModel):
5189
5354
  # > * After you submit a request to create multiple ApsaraDB RDS for MySQL instances, this operation returns **TaskId**, **RequestId**, and **Message**. You can call the DescribeDBInstanceAttribute operation to query the information about an instance.
5190
5355
  # > * If the value of the **Engine** parameter is not **MySQL** and the value of the Amount parameter is greater than **1**, this operation fails and returns an error code `InvalidParam.Engine`.
5191
5356
  self.amount = amount
5192
- # Specifies whether to automatically create a proxy. Valid values:
5357
+ # Specifies whether to automatically create a database proxy. Valid values:
5193
5358
  #
5194
- # * **true**: automatically creates a proxy. By default, general-purpose proxies are enabled.
5195
- # * **false**: does not automatically create a proxy.
5359
+ # * **true**: automatically creates a database proxy. By default, a general-purpose database proxy is created.
5360
+ # * **false**: does not automatically create a database proxy.
5196
5361
  self.auto_create_proxy = auto_create_proxy
5197
5362
  # Specifies whether to enable the automatic payment feature. Valid values:
5198
5363
  #
5199
- # * **true**: enables the feature. Make sure that your account balance is sufficient.
5364
+ # * **true**: enables the feature. You must make sure that your account balance is sufficient.
5200
5365
  # * **false**: disables the feature. An unpaid order is generated.
5201
5366
  #
5202
- # > The default value is true. If your account balance is insufficient, you can set the AutoPay parameter to false to generate an unpaid order. Then, you can log on to the ApsaraDB RDS console to complete the payment.
5367
+ # > Default value: true. If your account balance is insufficient, you can set the AutoPay parameter to false to generate an unpaid order. Then, you can log on to the ApsaraDB RDS console to complete the payment.
5203
5368
  self.auto_pay = auto_pay
5204
5369
  # Specifies whether to enable auto-renewal for the instance. You must specify this parameter only if the instance uses the subscription billing method. Valid values:
5205
5370
  #
@@ -5410,9 +5575,13 @@ class CreateDBInstanceShrinkRequest(TeaModel):
5410
5575
  # * **VPC**: virtual private cloud (VPC)
5411
5576
  # * **Classic**: the classic network
5412
5577
  #
5413
- # > * If the instance runs MySQL and uses cloud disks, you must set this parameter to **VPC**.
5414
- # > * If the instance runs PostgreSQL or MariaDB, you must set this parameter to **VPC**.
5415
- # > * If the instance runs SQL Server Basic or SQL Server Web, you can set this parameter to VPC or Classic. If the instance runs other database engine, you must set this parameter to **VPC**.
5578
+ # >
5579
+ #
5580
+ # * If the instance runs MySQL and uses cloud disks, you must set this parameter to **VPC**.
5581
+ #
5582
+ # * If the instance runs PostgreSQL or MariaDB, you must set this parameter to **VPC**.
5583
+ #
5584
+ # * If the instance runs SQL Server Basic or SQL Server Web, you can set this parameter to VPC or Classic. If the instance runs other database engine, you must set this parameter to **VPC**.
5416
5585
  self.instance_network_type = instance_network_type
5417
5586
  # Specifies whether to enable the I/O acceleration feature of general ESSDs. Valid values:
5418
5587
  #
@@ -5436,7 +5605,7 @@ class CreateDBInstanceShrinkRequest(TeaModel):
5436
5605
  # * **Year**\
5437
5606
  # * **Month**\
5438
5607
  #
5439
- # > If you set the PayType parameter to **Prepaid**, you must specify this parameter.
5608
+ # > If you set the PayType parameter to **Prepaid**, you must also specify this parameter.
5440
5609
  self.period = period
5441
5610
  # The port. You can initialize the port when you create the instance.
5442
5611
  #
@@ -5465,7 +5634,7 @@ class CreateDBInstanceShrinkRequest(TeaModel):
5465
5634
  #
5466
5635
  # > ApsaraDB RDS for MariaDB does not support serverless instances.
5467
5636
  self.serverless_config_shrink = serverless_config_shrink
5468
- # Specifies whether to enable the automatic storage expansion feature for the instance. This feature is supported if the instance runs MySQL or PostgreSQL. Valid values:
5637
+ # Specifies whether to enable the automatic storage expansion feature for the instance. If the instance runs MySQL or PostgreSQL, this feature is supported. Valid values:
5469
5638
  #
5470
5639
  # * **Enable**\
5471
5640
  # * **Disable** (default)
@@ -5480,7 +5649,7 @@ class CreateDBInstanceShrinkRequest(TeaModel):
5480
5649
  # * **40**\
5481
5650
  # * **50**\
5482
5651
  #
5483
- # > If you set the **StorageAutoScale** parameter to **Enable**, you must specify this parameter.
5652
+ # > If you set the **StorageAutoScale** parameter to **Enable**, you must also specify this parameter.
5484
5653
  self.storage_threshold = storage_threshold
5485
5654
  # The maximum storage capacity that is allowed for automatic storage expansion. The storage capacity of the instance cannot exceed the maximum storage capacity. Unit: GB.
5486
5655
  #
@@ -5529,12 +5698,12 @@ class CreateDBInstanceShrinkRequest(TeaModel):
5529
5698
  #
5530
5699
  # > If you configure the **BabelfishConfig** parameter for your instance that runs PostgreSQL and set the babelfishEnabled field to true, the value of this parameter is in the following format: `rds_postgres_Major engine version00_AliPG version_babelfish`.
5531
5700
  self.target_minor_version = target_minor_version
5532
- # The subscription duration of the instance.
5701
+ # The subscription duration of the instance. Valid values:
5533
5702
  #
5534
5703
  # * If you set the **Period** parameter to **Year**, the value of the **UsedTime** parameter ranges from **1 to 5**.
5535
5704
  # * If you set the **Period** parameter to **Month**, the value of the **UsedTime** parameter ranges from **1 to 11**.
5536
5705
  #
5537
- # > If you set the PayType parameter to **Prepaid**, you must specify this parameter.
5706
+ # > If you set the PayType parameter to **Prepaid**, you must also specify this parameter.
5538
5707
  self.used_time = used_time
5539
5708
  # The ID of the full backup file. You can call the ListUserBackupFiles operation to query the ID of the full backup file. If you want to create an instance by using the data of a backup file, you must specify this parameter.
5540
5709
  #
@@ -10607,13 +10776,36 @@ class CreateRCDeploymentSetRequest(TeaModel):
10607
10776
  region_id: str = None,
10608
10777
  strategy: str = None,
10609
10778
  ):
10779
+ # The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length.
10610
10780
  self.client_token = client_token
10781
+ # The deployment set name. The name must be 2 to 128 characters in length. The name must start with a letter and cannot start with `http://` or `https://`. The name can contain letters, digits, colons (.), underscores (_), and hyphens (-).
10611
10782
  self.deployment_set_name = deployment_set_name
10783
+ # The description of the deployment set. The value must be 2 to 256 characters in length and cannot start with http:// or https://.
10612
10784
  self.description = description
10785
+ # The number of groups in the deployment set. Valid values: 1 to 7.
10786
+ #
10787
+ # Default value: 3.
10788
+ #
10789
+ # > This parameter takes effect only when `Strategy is set to AvailabilityGroup`.
10613
10790
  self.group_count = group_count
10791
+ # The emergency solution to use in the scenario in which instances in the deployment set cannot be evenly distributed to different zones due to resource insufficiency after the instances failover. Valid values:
10792
+ #
10793
+ # * **CancelMembershipAndStart**: removes the instances from the deployment set and restarts the instances immediately after the failover is complete.
10794
+ # * **KeepStopped**: does not remove the instances from the deployment set and keeps the instances in the Stopped state.
10795
+ #
10796
+ # Default value: CancelMembershipAndStart.
10614
10797
  self.on_unable_to_redeploy_failed_instance = on_unable_to_redeploy_failed_instance
10798
+ # The region ID.
10799
+ #
10615
10800
  # This parameter is required.
10616
10801
  self.region_id = region_id
10802
+ # The deployment strategy. Valid values:
10803
+ #
10804
+ # * **Availability**: high-availability strategy
10805
+ # * **AvailabilityGroup**: high-availability group strategy
10806
+ # * **LowLatency**: low latency strategy
10807
+ #
10808
+ # Default value: Availability.
10617
10809
  self.strategy = strategy
10618
10810
 
10619
10811
  def validate(self):
@@ -10666,7 +10858,9 @@ class CreateRCDeploymentSetResponseBody(TeaModel):
10666
10858
  deployment_set_id: str = None,
10667
10859
  request_id: str = None,
10668
10860
  ):
10861
+ # The deployment set ID.
10669
10862
  self.deployment_set_id = deployment_set_id
10863
+ # The request ID.
10670
10864
  self.request_id = request_id
10671
10865
 
10672
10866
  def validate(self):
@@ -12442,11 +12636,8 @@ class DeleteBackupFileRequest(TeaModel):
12442
12636
  ):
12443
12637
  # The backup set ID. You can specify the IDs of up to 100 backup sets at a time. Separate the IDs with commas (,).
12444
12638
  #
12445
- # >
12446
- #
12447
- # * If the instance runs SQL Server, only the ID of the backup set for an individual database is supported.
12448
- #
12449
- # * You can call the DescribeBackups operation to query the backup set ID.
12639
+ # > * If the instance runs SQL Server, only the ID of the backup set for an individual database is supported.
12640
+ # > * You can call the DescribeBackups operation to query the backup set ID.
12450
12641
  self.backup_id = backup_id
12451
12642
  # Specifies whether to delete the backup sets that are generated before the specified point in time. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
12452
12643
  self.backup_time = backup_time
@@ -14312,8 +14503,12 @@ class DeleteRCDeploymentSetRequest(TeaModel):
14312
14503
  deployment_set_id: str = None,
14313
14504
  region_id: str = None,
14314
14505
  ):
14506
+ # The deployment set ID.
14507
+ #
14315
14508
  # This parameter is required.
14316
14509
  self.deployment_set_id = deployment_set_id
14510
+ # The region ID.
14511
+ #
14317
14512
  # This parameter is required.
14318
14513
  self.region_id = region_id
14319
14514
 
@@ -14346,6 +14541,7 @@ class DeleteRCDeploymentSetResponseBody(TeaModel):
14346
14541
  self,
14347
14542
  request_id: str = None,
14348
14543
  ):
14544
+ # The request ID.
14349
14545
  self.request_id = request_id
14350
14546
 
14351
14547
  def validate(self):
@@ -14527,11 +14723,26 @@ class DeleteRCInstancesRequest(TeaModel):
14527
14723
  region_id: str = None,
14528
14724
  terminate_subscription: bool = None,
14529
14725
  ):
14726
+ # Specifies whether to perform only a dry run, without performing the actual request. Valid values:
14727
+ #
14728
+ # * **true**: performs only a dry run. The system checks the request for potential issues, including missing parameter values, incorrect request syntax, service limits, and insufficient inventory errors.
14729
+ # * **false** (default): performs a dry run and performs the actual request. If the request passes the dry run, the instance is created.
14530
14730
  self.dry_run = dry_run
14731
+ # Specifies whether to forcefully release a running instance. Valid values:
14732
+ #
14733
+ # * **Yes**\
14734
+ # * **No** (default)
14531
14735
  self.force = force
14736
+ # The details of the instance.
14737
+ #
14532
14738
  # This parameter is required.
14533
14739
  self.instance_id = instance_id
14740
+ # The region ID of the instance.
14534
14741
  self.region_id = region_id
14742
+ # Specifies whether to release an expired subscription instance. Valid values:
14743
+ #
14744
+ # * **true**\
14745
+ # * **false** (default)
14535
14746
  self.terminate_subscription = terminate_subscription
14536
14747
 
14537
14748
  def validate(self):
@@ -14579,11 +14790,26 @@ class DeleteRCInstancesShrinkRequest(TeaModel):
14579
14790
  region_id: str = None,
14580
14791
  terminate_subscription: bool = None,
14581
14792
  ):
14793
+ # Specifies whether to perform only a dry run, without performing the actual request. Valid values:
14794
+ #
14795
+ # * **true**: performs only a dry run. The system checks the request for potential issues, including missing parameter values, incorrect request syntax, service limits, and insufficient inventory errors.
14796
+ # * **false** (default): performs a dry run and performs the actual request. If the request passes the dry run, the instance is created.
14582
14797
  self.dry_run = dry_run
14798
+ # Specifies whether to forcefully release a running instance. Valid values:
14799
+ #
14800
+ # * **Yes**\
14801
+ # * **No** (default)
14583
14802
  self.force = force
14803
+ # The details of the instance.
14804
+ #
14584
14805
  # This parameter is required.
14585
14806
  self.instance_id_shrink = instance_id_shrink
14807
+ # The region ID of the instance.
14586
14808
  self.region_id = region_id
14809
+ # Specifies whether to release an expired subscription instance. Valid values:
14810
+ #
14811
+ # * **true**\
14812
+ # * **false** (default)
14587
14813
  self.terminate_subscription = terminate_subscription
14588
14814
 
14589
14815
  def validate(self):
@@ -14627,6 +14853,7 @@ class DeleteRCInstancesResponseBody(TeaModel):
14627
14853
  self,
14628
14854
  request_id: str = None,
14629
14855
  ):
14856
+ # The request ID.
14630
14857
  self.request_id = request_id
14631
14858
 
14632
14859
  def validate(self):
@@ -15055,8 +15282,8 @@ class DeleteSlotRequest(TeaModel):
15055
15282
  self.slot_name = slot_name
15056
15283
  # The status of the replication slot. You can call the DescribeSlots operation to query the status of the replication slot. Valid values:
15057
15284
  #
15058
- # * ACTIVE
15059
- # * INACTIVE
15285
+ # * **ACTIVE**\
15286
+ # * **INACTIVE**\
15060
15287
  #
15061
15288
  # This parameter is required.
15062
15289
  self.slot_status = slot_status
@@ -16057,7 +16284,7 @@ class DescribeAccountsRequest(TeaModel):
16057
16284
  self.dbinstance_id = dbinstance_id
16058
16285
  # The page number. Default value: **1**. Pages start from page 1.
16059
16286
  self.page_number = page_number
16060
- # The number of entries to return on each page. Valid value: **30 to 200**. Default value: **30**.
16287
+ # The number of entries per page. Valid values: **30 to 200**. Default value: **30**.
16061
16288
  self.page_size = page_size
16062
16289
  self.resource_owner_account = resource_owner_account
16063
16290
  self.resource_owner_id = resource_owner_id
@@ -16225,6 +16452,9 @@ class DescribeAccountsResponseBodyAccountsDBInstanceAccount(TeaModel):
16225
16452
  #
16226
16453
  # > This parameter is returned only for instances that run PostgreSQL.
16227
16454
  self.bypass_rls = bypass_rls
16455
+ # Indicates whether the password policy is applied.
16456
+ #
16457
+ # > This parameter is returned only for instances that run SQL Server.
16228
16458
  self.check_policy = check_policy
16229
16459
  # Indicates whether the account has the permissions to create databases. Valid values:
16230
16460
  #
@@ -16244,6 +16474,9 @@ class DescribeAccountsResponseBodyAccountsDBInstanceAccount(TeaModel):
16244
16474
  self.dbinstance_id = dbinstance_id
16245
16475
  # The details about the permissions that are granted to the account.
16246
16476
  self.database_privileges = database_privileges
16477
+ # The expiration time of the password.
16478
+ #
16479
+ # > This parameter is returned only for instances that run SQL Server.
16247
16480
  self.password_expire_time = password_expire_time
16248
16481
  # Indicates whether the number of databases that are managed by the account exceeds the upper limit. Valid values:
16249
16482
  #
@@ -16385,7 +16618,7 @@ class DescribeAccountsResponseBody(TeaModel):
16385
16618
  system_admin_account_status: str = None,
16386
16619
  total_record_count: int = None,
16387
16620
  ):
16388
- # The details of the account.
16621
+ # The information about the account.
16389
16622
  self.accounts = accounts
16390
16623
  # The page number.
16391
16624
  self.page_number = page_number
@@ -17644,11 +17877,11 @@ class DescribeAvailableClassesRequest(TeaModel):
17644
17877
  #
17645
17878
  # * **local_ssd**: local SSD. This is the recommended storage type.
17646
17879
  # * **cloud_ssd**: standard SSD.
17647
- # * **cloud_essd**: enhanced SSDs (ESSDs) of performance level 1 (PL1)
17648
- # * **cloud_essd2**: ESSDs of PL2
17649
- # * **cloud_essd3**: ESSD of PL3
17880
+ # * **cloud_essd**: performance level 1 (PL1) Enterprise SSD (ESSD)
17881
+ # * **cloud_essd2**: PL2 ESSD
17882
+ # * **cloud_essd3**: PL3 ESSD
17650
17883
  #
17651
- # > Serverless instances support only ESSDs of PL 1. For a serverless instance, you must set this parameter to **cloud_essd**.
17884
+ # > Serverless instances use only PL1 ESSDs. If you want to create a serverless instance, you must set this parameter to **cloud_essd**.
17652
17885
  #
17653
17886
  # This parameter is required.
17654
17887
  self.dbinstance_storage_type = dbinstance_storage_type
@@ -17688,7 +17921,7 @@ class DescribeAvailableClassesRequest(TeaModel):
17688
17921
  #
17689
17922
  # > ApsaraDB RDS for MariaDB does not support serverless instances.
17690
17923
  self.instance_charge_type = instance_charge_type
17691
- # The type of the order. Set the value to **BUY**\
17924
+ # The type of order. Set the value to **BUY**\
17692
17925
  self.order_type = order_type
17693
17926
  # The region ID of the instance. You can call the DescribeDBInstanceAttribute operation to query the region ID of the instance.
17694
17927
  #
@@ -24261,9 +24494,10 @@ class DescribeDBInstanceAttributeResponseBodyItemsDBInstanceAttributeExtra(TeaMo
24261
24494
  dbinstance_ids: DescribeDBInstanceAttributeResponseBodyItemsDBInstanceAttributeExtraDBInstanceIds = None,
24262
24495
  recovery_model: str = None,
24263
24496
  ):
24264
- # Instance account group policy.
24265
- # - MaximumPasswordAge: Maximum usage time
24266
- # - MinimumPasswordAge: Minimum usage time
24497
+ # The group policy of the instance account.
24498
+ #
24499
+ # * MaximumPasswordAge: maximum use time
24500
+ # * MinimumPasswordAge: minimum use time
24267
24501
  self.account_security_policy = account_security_policy
24268
24502
  # The instance IDs.
24269
24503
  self.dbinstance_ids = dbinstance_ids
@@ -24542,6 +24776,7 @@ class DescribeDBInstanceAttributeResponseBodyItemsDBInstanceAttribute(TeaModel):
24542
24776
  max_connections: int = None,
24543
24777
  max_iombps: int = None,
24544
24778
  max_iops: int = None,
24779
+ multiple_temp_upgrade: bool = None,
24545
24780
  pgbouncer_enabled: str = None,
24546
24781
  pay_type: str = None,
24547
24782
  port: str = None,
@@ -24639,7 +24874,7 @@ class DescribeDBInstanceAttributeResponseBodyItemsDBInstanceAttribute(TeaModel):
24639
24874
  self.dbinstance_class_type = dbinstance_class_type
24640
24875
  # The instance description.
24641
24876
  self.dbinstance_description = dbinstance_description
24642
- # The disk usage of the instance. Unit: MB.
24877
+ # The disk usage of the instance. Unit: byte.
24643
24878
  self.dbinstance_disk_used = dbinstance_disk_used
24644
24879
  # The instance ID.
24645
24880
  self.dbinstance_id = dbinstance_id
@@ -24677,7 +24912,7 @@ class DescribeDBInstanceAttributeResponseBodyItemsDBInstanceAttribute(TeaModel):
24677
24912
  # * **true**\
24678
24913
  # * **false**\
24679
24914
  self.deletion_protection = deletion_protection
24680
- # Disaster recovery source instance information.
24915
+ # Disaster Recovery Instance Information
24681
24916
  self.disaster_recovery_info = disaster_recovery_info
24682
24917
  # All disaster recovery instances of the current instance.
24683
24918
  self.disaster_recovery_instances = disaster_recovery_instances
@@ -24694,7 +24929,7 @@ class DescribeDBInstanceAttributeResponseBodyItemsDBInstanceAttribute(TeaModel):
24694
24929
  #
24695
24930
  # > Pay-as-you-go instances never expire.
24696
24931
  self.expire_time = expire_time
24697
- # The extended information of the instance.
24932
+ # The extended information about the instance.
24698
24933
  self.extra = extra
24699
24934
  # The name of the dedicated cluster to which the instance belongs. This parameter is returned only when the instance is created in an ApsaraDB MyBase cluster that runs MySQL on Standard Edition.
24700
24935
  self.general_group_name = general_group_name
@@ -24743,6 +24978,7 @@ class DescribeDBInstanceAttributeResponseBodyItemsDBInstanceAttribute(TeaModel):
24743
24978
  self.max_iombps = max_iombps
24744
24979
  # The maximum number of I/O requests per second.
24745
24980
  self.max_iops = max_iops
24981
+ self.multiple_temp_upgrade = multiple_temp_upgrade
24746
24982
  # Indicates whether PgBouncer is enabled.
24747
24983
  #
24748
24984
  # > This parameter is returned only for RDS instances that run PostgreSQL. If PgBouncer is enabled, the return value is **true**.
@@ -24943,6 +25179,8 @@ class DescribeDBInstanceAttributeResponseBodyItemsDBInstanceAttribute(TeaModel):
24943
25179
  result['MaxIOMBPS'] = self.max_iombps
24944
25180
  if self.max_iops is not None:
24945
25181
  result['MaxIOPS'] = self.max_iops
25182
+ if self.multiple_temp_upgrade is not None:
25183
+ result['MultipleTempUpgrade'] = self.multiple_temp_upgrade
24946
25184
  if self.pgbouncer_enabled is not None:
24947
25185
  result['PGBouncerEnabled'] = self.pgbouncer_enabled
24948
25186
  if self.pay_type is not None:
@@ -25106,6 +25344,8 @@ class DescribeDBInstanceAttributeResponseBodyItemsDBInstanceAttribute(TeaModel):
25106
25344
  self.max_iombps = m.get('MaxIOMBPS')
25107
25345
  if m.get('MaxIOPS') is not None:
25108
25346
  self.max_iops = m.get('MaxIOPS')
25347
+ if m.get('MultipleTempUpgrade') is not None:
25348
+ self.multiple_temp_upgrade = m.get('MultipleTempUpgrade')
25109
25349
  if m.get('PGBouncerEnabled') is not None:
25110
25350
  self.pgbouncer_enabled = m.get('PGBouncerEnabled')
25111
25351
  if m.get('PayType') is not None:
@@ -33625,6 +33865,80 @@ class DescribeDBProxyResponseBodyDBProxyConnectStringItems(TeaModel):
33625
33865
  return self
33626
33866
 
33627
33867
 
33868
+ class DescribeDBProxyResponseBodyDBProxyNodesDBProxyNodes(TeaModel):
33869
+ def __init__(
33870
+ self,
33871
+ cpu_cores: str = None,
33872
+ node_id: str = None,
33873
+ zone_id: str = None,
33874
+ ):
33875
+ self.cpu_cores = cpu_cores
33876
+ self.node_id = node_id
33877
+ self.zone_id = zone_id
33878
+
33879
+ def validate(self):
33880
+ pass
33881
+
33882
+ def to_map(self):
33883
+ _map = super().to_map()
33884
+ if _map is not None:
33885
+ return _map
33886
+
33887
+ result = dict()
33888
+ if self.cpu_cores is not None:
33889
+ result['cpuCores'] = self.cpu_cores
33890
+ if self.node_id is not None:
33891
+ result['nodeId'] = self.node_id
33892
+ if self.zone_id is not None:
33893
+ result['zoneId'] = self.zone_id
33894
+ return result
33895
+
33896
+ def from_map(self, m: dict = None):
33897
+ m = m or dict()
33898
+ if m.get('cpuCores') is not None:
33899
+ self.cpu_cores = m.get('cpuCores')
33900
+ if m.get('nodeId') is not None:
33901
+ self.node_id = m.get('nodeId')
33902
+ if m.get('zoneId') is not None:
33903
+ self.zone_id = m.get('zoneId')
33904
+ return self
33905
+
33906
+
33907
+ class DescribeDBProxyResponseBodyDBProxyNodes(TeaModel):
33908
+ def __init__(
33909
+ self,
33910
+ dbproxy_nodes: List[DescribeDBProxyResponseBodyDBProxyNodesDBProxyNodes] = None,
33911
+ ):
33912
+ self.dbproxy_nodes = dbproxy_nodes
33913
+
33914
+ def validate(self):
33915
+ if self.dbproxy_nodes:
33916
+ for k in self.dbproxy_nodes:
33917
+ if k:
33918
+ k.validate()
33919
+
33920
+ def to_map(self):
33921
+ _map = super().to_map()
33922
+ if _map is not None:
33923
+ return _map
33924
+
33925
+ result = dict()
33926
+ result['DBProxyNodes'] = []
33927
+ if self.dbproxy_nodes is not None:
33928
+ for k in self.dbproxy_nodes:
33929
+ result['DBProxyNodes'].append(k.to_map() if k else None)
33930
+ return result
33931
+
33932
+ def from_map(self, m: dict = None):
33933
+ m = m or dict()
33934
+ self.dbproxy_nodes = []
33935
+ if m.get('DBProxyNodes') is not None:
33936
+ for k in m.get('DBProxyNodes'):
33937
+ temp_model = DescribeDBProxyResponseBodyDBProxyNodesDBProxyNodes()
33938
+ self.dbproxy_nodes.append(temp_model.from_map(k))
33939
+ return self
33940
+
33941
+
33628
33942
  class DescribeDBProxyResponseBodyDbProxyEndpointItemsDbProxyEndpointItems(TeaModel):
33629
33943
  def __init__(
33630
33944
  self,
@@ -33728,6 +34042,8 @@ class DescribeDBProxyResponseBody(TeaModel):
33728
34042
  dbproxy_instance_size: str = None,
33729
34043
  dbproxy_instance_status: str = None,
33730
34044
  dbproxy_instance_type: str = None,
34045
+ dbproxy_kind_code: str = None,
34046
+ dbproxy_nodes: DescribeDBProxyResponseBodyDBProxyNodes = None,
33731
34047
  dbproxy_persistent_connection_status: str = None,
33732
34048
  dbproxy_service_status: str = None,
33733
34049
  db_proxy_endpoint_items: DescribeDBProxyResponseBodyDbProxyEndpointItems = None,
@@ -33768,6 +34084,8 @@ class DescribeDBProxyResponseBody(TeaModel):
33768
34084
  #
33769
34085
  # > ApsaraDB RDS for PostgreSQL instances support only dedicated proxies.
33770
34086
  self.dbproxy_instance_type = dbproxy_instance_type
34087
+ self.dbproxy_kind_code = dbproxy_kind_code
34088
+ self.dbproxy_nodes = dbproxy_nodes
33771
34089
  # Connection Persistence State.
33772
34090
  #
33773
34091
  # Valid values:
@@ -33792,6 +34110,8 @@ class DescribeDBProxyResponseBody(TeaModel):
33792
34110
  self.dbproxy_avzones.validate()
33793
34111
  if self.dbproxy_connect_string_items:
33794
34112
  self.dbproxy_connect_string_items.validate()
34113
+ if self.dbproxy_nodes:
34114
+ self.dbproxy_nodes.validate()
33795
34115
  if self.db_proxy_endpoint_items:
33796
34116
  self.db_proxy_endpoint_items.validate()
33797
34117
 
@@ -33821,6 +34141,10 @@ class DescribeDBProxyResponseBody(TeaModel):
33821
34141
  result['DBProxyInstanceStatus'] = self.dbproxy_instance_status
33822
34142
  if self.dbproxy_instance_type is not None:
33823
34143
  result['DBProxyInstanceType'] = self.dbproxy_instance_type
34144
+ if self.dbproxy_kind_code is not None:
34145
+ result['DBProxyKindCode'] = self.dbproxy_kind_code
34146
+ if self.dbproxy_nodes is not None:
34147
+ result['DBProxyNodes'] = self.dbproxy_nodes.to_map()
33824
34148
  if self.dbproxy_persistent_connection_status is not None:
33825
34149
  result['DBProxyPersistentConnectionStatus'] = self.dbproxy_persistent_connection_status
33826
34150
  if self.dbproxy_service_status is not None:
@@ -33857,6 +34181,11 @@ class DescribeDBProxyResponseBody(TeaModel):
33857
34181
  self.dbproxy_instance_status = m.get('DBProxyInstanceStatus')
33858
34182
  if m.get('DBProxyInstanceType') is not None:
33859
34183
  self.dbproxy_instance_type = m.get('DBProxyInstanceType')
34184
+ if m.get('DBProxyKindCode') is not None:
34185
+ self.dbproxy_kind_code = m.get('DBProxyKindCode')
34186
+ if m.get('DBProxyNodes') is not None:
34187
+ temp_model = DescribeDBProxyResponseBodyDBProxyNodes()
34188
+ self.dbproxy_nodes = temp_model.from_map(m['DBProxyNodes'])
33860
34189
  if m.get('DBProxyPersistentConnectionStatus') is not None:
33861
34190
  self.dbproxy_persistent_connection_status = m.get('DBProxyPersistentConnectionStatus')
33862
34191
  if m.get('DBProxyServiceStatus') is not None:
@@ -33988,6 +34317,80 @@ class DescribeDBProxyEndpointRequest(TeaModel):
33988
34317
  return self
33989
34318
 
33990
34319
 
34320
+ class DescribeDBProxyEndpointResponseBodyDBProxyNodesDBProxyNodes(TeaModel):
34321
+ def __init__(
34322
+ self,
34323
+ cpu_cores: str = None,
34324
+ node_id: str = None,
34325
+ zone_id: str = None,
34326
+ ):
34327
+ self.cpu_cores = cpu_cores
34328
+ self.node_id = node_id
34329
+ self.zone_id = zone_id
34330
+
34331
+ def validate(self):
34332
+ pass
34333
+
34334
+ def to_map(self):
34335
+ _map = super().to_map()
34336
+ if _map is not None:
34337
+ return _map
34338
+
34339
+ result = dict()
34340
+ if self.cpu_cores is not None:
34341
+ result['cpuCores'] = self.cpu_cores
34342
+ if self.node_id is not None:
34343
+ result['nodeId'] = self.node_id
34344
+ if self.zone_id is not None:
34345
+ result['zoneId'] = self.zone_id
34346
+ return result
34347
+
34348
+ def from_map(self, m: dict = None):
34349
+ m = m or dict()
34350
+ if m.get('cpuCores') is not None:
34351
+ self.cpu_cores = m.get('cpuCores')
34352
+ if m.get('nodeId') is not None:
34353
+ self.node_id = m.get('nodeId')
34354
+ if m.get('zoneId') is not None:
34355
+ self.zone_id = m.get('zoneId')
34356
+ return self
34357
+
34358
+
34359
+ class DescribeDBProxyEndpointResponseBodyDBProxyNodes(TeaModel):
34360
+ def __init__(
34361
+ self,
34362
+ dbproxy_nodes: List[DescribeDBProxyEndpointResponseBodyDBProxyNodesDBProxyNodes] = None,
34363
+ ):
34364
+ self.dbproxy_nodes = dbproxy_nodes
34365
+
34366
+ def validate(self):
34367
+ if self.dbproxy_nodes:
34368
+ for k in self.dbproxy_nodes:
34369
+ if k:
34370
+ k.validate()
34371
+
34372
+ def to_map(self):
34373
+ _map = super().to_map()
34374
+ if _map is not None:
34375
+ return _map
34376
+
34377
+ result = dict()
34378
+ result['DBProxyNodes'] = []
34379
+ if self.dbproxy_nodes is not None:
34380
+ for k in self.dbproxy_nodes:
34381
+ result['DBProxyNodes'].append(k.to_map() if k else None)
34382
+ return result
34383
+
34384
+ def from_map(self, m: dict = None):
34385
+ m = m or dict()
34386
+ self.dbproxy_nodes = []
34387
+ if m.get('DBProxyNodes') is not None:
34388
+ for k in m.get('DBProxyNodes'):
34389
+ temp_model = DescribeDBProxyEndpointResponseBodyDBProxyNodesDBProxyNodes()
34390
+ self.dbproxy_nodes.append(temp_model.from_map(k))
34391
+ return self
34392
+
34393
+
33991
34394
  class DescribeDBProxyEndpointResponseBodyEndpointConnectItemsEndpointConnectItems(TeaModel):
33992
34395
  def __init__(
33993
34396
  self,
@@ -34078,8 +34481,11 @@ class DescribeDBProxyEndpointResponseBody(TeaModel):
34078
34481
  dbproxy_endpoint_id: str = None,
34079
34482
  dbproxy_engine_type: str = None,
34080
34483
  dbproxy_features: str = None,
34484
+ dbproxy_nodes: DescribeDBProxyEndpointResponseBodyDBProxyNodes = None,
34081
34485
  db_proxy_endpoint_aliases: str = None,
34082
34486
  db_proxy_endpoint_read_write_mode: str = None,
34487
+ db_proxy_endpoint_vswitch_id: str = None,
34488
+ db_proxy_endpoint_zone_id: str = None,
34083
34489
  endpoint_connect_items: DescribeDBProxyEndpointResponseBodyEndpointConnectItems = None,
34084
34490
  read_only_instance_distribution_type: str = None,
34085
34491
  read_only_instance_max_delay_time: str = None,
@@ -34108,6 +34514,7 @@ class DescribeDBProxyEndpointResponseBody(TeaModel):
34108
34514
  #
34109
34515
  # > If the instance runs PostgreSQL, you can change only the value of the **ReadWriteSpliting** field. The **TransactionReadSqlRouteOptimizeStatus** and **PinPreparedStmt** fields are set to their default values 1.
34110
34516
  self.dbproxy_features = dbproxy_features
34517
+ self.dbproxy_nodes = dbproxy_nodes
34111
34518
  # The description of the proxy terminal.
34112
34519
  self.db_proxy_endpoint_aliases = db_proxy_endpoint_aliases
34113
34520
  # The read and write attributes of the proxy terminal. Valid values:
@@ -34115,6 +34522,8 @@ class DescribeDBProxyEndpointResponseBody(TeaModel):
34115
34522
  # * **ReadWrite**: The proxy terminal supports read and write requests.
34116
34523
  # * **ReadOnly**: The proxy terminal supports only read requests.
34117
34524
  self.db_proxy_endpoint_read_write_mode = db_proxy_endpoint_read_write_mode
34525
+ self.db_proxy_endpoint_vswitch_id = db_proxy_endpoint_vswitch_id
34526
+ self.db_proxy_endpoint_zone_id = db_proxy_endpoint_zone_id
34118
34527
  # An array that consists of the information about the proxy endpoint.
34119
34528
  self.endpoint_connect_items = endpoint_connect_items
34120
34529
  # The method that is used to assign read weights. For more information, see [Modify the latency threshold and read weights of ApsaraDB RDS for MySQL instances](https://help.aliyun.com/document_detail/96076.html). Valid values:
@@ -34136,6 +34545,8 @@ class DescribeDBProxyEndpointResponseBody(TeaModel):
34136
34545
  self.request_id = request_id
34137
34546
 
34138
34547
  def validate(self):
34548
+ if self.dbproxy_nodes:
34549
+ self.dbproxy_nodes.validate()
34139
34550
  if self.endpoint_connect_items:
34140
34551
  self.endpoint_connect_items.validate()
34141
34552
 
@@ -34157,10 +34568,16 @@ class DescribeDBProxyEndpointResponseBody(TeaModel):
34157
34568
  result['DBProxyEngineType'] = self.dbproxy_engine_type
34158
34569
  if self.dbproxy_features is not None:
34159
34570
  result['DBProxyFeatures'] = self.dbproxy_features
34571
+ if self.dbproxy_nodes is not None:
34572
+ result['DBProxyNodes'] = self.dbproxy_nodes.to_map()
34160
34573
  if self.db_proxy_endpoint_aliases is not None:
34161
34574
  result['DbProxyEndpointAliases'] = self.db_proxy_endpoint_aliases
34162
34575
  if self.db_proxy_endpoint_read_write_mode is not None:
34163
34576
  result['DbProxyEndpointReadWriteMode'] = self.db_proxy_endpoint_read_write_mode
34577
+ if self.db_proxy_endpoint_vswitch_id is not None:
34578
+ result['DbProxyEndpointVswitchId'] = self.db_proxy_endpoint_vswitch_id
34579
+ if self.db_proxy_endpoint_zone_id is not None:
34580
+ result['DbProxyEndpointZoneId'] = self.db_proxy_endpoint_zone_id
34164
34581
  if self.endpoint_connect_items is not None:
34165
34582
  result['EndpointConnectItems'] = self.endpoint_connect_items.to_map()
34166
34583
  if self.read_only_instance_distribution_type is not None:
@@ -34187,10 +34604,17 @@ class DescribeDBProxyEndpointResponseBody(TeaModel):
34187
34604
  self.dbproxy_engine_type = m.get('DBProxyEngineType')
34188
34605
  if m.get('DBProxyFeatures') is not None:
34189
34606
  self.dbproxy_features = m.get('DBProxyFeatures')
34607
+ if m.get('DBProxyNodes') is not None:
34608
+ temp_model = DescribeDBProxyEndpointResponseBodyDBProxyNodes()
34609
+ self.dbproxy_nodes = temp_model.from_map(m['DBProxyNodes'])
34190
34610
  if m.get('DbProxyEndpointAliases') is not None:
34191
34611
  self.db_proxy_endpoint_aliases = m.get('DbProxyEndpointAliases')
34192
34612
  if m.get('DbProxyEndpointReadWriteMode') is not None:
34193
34613
  self.db_proxy_endpoint_read_write_mode = m.get('DbProxyEndpointReadWriteMode')
34614
+ if m.get('DbProxyEndpointVswitchId') is not None:
34615
+ self.db_proxy_endpoint_vswitch_id = m.get('DbProxyEndpointVswitchId')
34616
+ if m.get('DbProxyEndpointZoneId') is not None:
34617
+ self.db_proxy_endpoint_zone_id = m.get('DbProxyEndpointZoneId')
34194
34618
  if m.get('EndpointConnectItems') is not None:
34195
34619
  temp_model = DescribeDBProxyEndpointResponseBodyEndpointConnectItems()
34196
34620
  self.endpoint_connect_items = temp_model.from_map(m['EndpointConnectItems'])
@@ -38834,19 +39258,19 @@ class DescribeHistoryTasksRequest(TeaModel):
38834
39258
  self.resource_owner_account = resource_owner_account
38835
39259
  self.resource_owner_id = resource_owner_id
38836
39260
  self.security_token = security_token
38837
- # The status of the task. Valid values:
39261
+ # The task status. Valid values:
38838
39262
  #
38839
- # * Scheduled
38840
- # * Running
38841
- # * Succeed
38842
- # * Failed
38843
- # * Cancelling
38844
- # * Canceled
38845
- # * Waiting
39263
+ # * **Scheduled**\
39264
+ # * **Running**\
39265
+ # * **Succeed**\
39266
+ # * **Failed**\
39267
+ # * **Cancelling**\
39268
+ # * **Canceled**\
39269
+ # * **Waiting**\
38846
39270
  #
38847
- # Separate multiple states with commas (,). This parameter is empty by default, which indicates that tasks in all states are queried.
39271
+ # Separate multiple values with commas (,). By default, this parameter is left empty, which indicates that tasks in all statuses are queried.
38848
39272
  self.status = status
38849
- # The task ID. Separate multiple task IDs with commas (,). You can specify up to 30 task IDs. This parameter is empty by default, which indicates that you can specify an unlimited number of task IDs.
39273
+ # The task ID. You can call the DescribeTasks operation to query the task ID. If multiple task IDs exist, separate them with commas (,). You can specify up to 30 task IDs. By default, this parameter is left empty, which indicates that all tasks are queried.
38850
39274
  self.task_id = task_id
38851
39275
  # The task type. Separate multiple task types with commas (,). You can specify up to 30 task types. This parameter is empty by default, which indicates that you can specify an unlimited number of task types.
38852
39276
  self.task_type = task_type
@@ -38969,46 +39393,45 @@ class DescribeHistoryTasksResponseBodyItems(TeaModel):
38969
39393
  #
38970
39394
  # "steps": [
38971
39395
  # {
38972
- # "step_name": "exec_task", // The name of the step, which matches CurrentStepName.
38973
- # "action_info": { // The actions supported for this step.
38974
- # "Waiting": [ // The status, which matches Status.
38975
- # "modifySwitchTime" // The action. Multiple actions are supported.
38976
- # ]
39396
+ # "step_name": "exec_task", // The name of the step, which matches CurrentStepName. "action_info": { // The actions supported for this step. "Waiting": [ // The status, which matches Status. "modifySwitchTime" // The action. Multiple actions are supported. ]
38977
39397
  # }
38978
39398
  # },
38979
39399
  # {
38980
- # "step_name": "init_task", // The name of the step.
38981
- # "action_info": { // The actions supported for this step.
38982
- # "Running": [ // The status.
38983
- # "cancel", // The action.
38984
- # "pause"
39400
+ # "step_name": "init_task", // The name of the step. "action_info": { // The actions supported for this step. "Running": [ // The status. "cancel", // The action. "pause"
38985
39401
  # ]
38986
39402
  # }
38987
39403
  # }
38988
39404
  # ]
38989
39405
  # }
38990
39406
  #
38991
- # The system may support the following actions: retry cancel modifySwitchTime: changes the switching or restoration time.
39407
+ # The system may support the following actions:
39408
+ #
39409
+ # * **retry**: retries the action.
39410
+ # * **cancel**: cancels the action.
39411
+ # * **modifySwitchTime**: changes the switching time or restoration time.
38992
39412
  self.action_info = action_info
38993
39413
  # The ID of the user who made the request. If CallerSource is set to User, CallerUid indicates the unique ID (UID) of the user.
38994
39414
  self.caller_source = caller_source
38995
- # The request source. Valid values: System User
39415
+ # The source of the request. Valid values:
39416
+ #
39417
+ # * **System**\
39418
+ # * **User**\
38996
39419
  self.caller_uid = caller_uid
38997
39420
  # The name of the current step. If this parameter is left empty, the task is not started.
38998
39421
  self.current_step_name = current_step_name
38999
39422
  # The database type.
39000
39423
  self.db_type = db_type
39001
- # The end time of the task. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss format. The time is displayed in UTC.
39424
+ # The end time of the task.
39002
39425
  self.end_time = end_time
39003
- # The instance ID. Example: rm-xxx.
39426
+ # The instance ID.
39004
39427
  self.instance_id = instance_id
39005
- # The instance name, which is a user-defined alias.
39428
+ # The instance name.
39006
39429
  self.instance_name = instance_name
39007
- # The type of the instance. Example: user instance.
39430
+ # The instance category.
39008
39431
  self.instance_type = instance_type
39009
- # The product. Example: rds.
39432
+ # The service name.
39010
39433
  self.product = product
39011
- # The task progress. Valid values: 0 to 100.
39434
+ # Indicates the task progress.
39012
39435
  self.progress = progress
39013
39436
  # The reason why the current task was initiated.
39014
39437
  self.reason_code = reason_code
@@ -39016,9 +39439,9 @@ class DescribeHistoryTasksResponseBodyItems(TeaModel):
39016
39439
  self.region_id = region_id
39017
39440
  # The estimated amount of time remaining to complete the task. Unit: seconds.
39018
39441
  self.remain_time = remain_time
39019
- # The start time of the task. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss format. The time is displayed in UTC.
39442
+ # The start time of the task.
39020
39443
  self.start_time = start_time
39021
- # The status of the task.
39444
+ # The task status. Valid values:
39022
39445
  #
39023
39446
  # * Scheduled
39024
39447
  # * Running
@@ -39028,11 +39451,11 @@ class DescribeHistoryTasksResponseBodyItems(TeaModel):
39028
39451
  # * Canceled
39029
39452
  # * Waiting
39030
39453
  self.status = status
39031
- # The task details provided in the form of a JSON string. The JSON string can be customized and extended to include additional information about the task. The details vary based on the task type.
39454
+ # The task details.
39032
39455
  self.task_detail = task_detail
39033
- # The task ID in the t-\\*\\*\\* format.
39456
+ # The task ID.
39034
39457
  self.task_id = task_id
39035
- # The task type or name.
39458
+ # The task type.
39036
39459
  self.task_type = task_type
39037
39460
  # The ID of the user to which the resources belong.
39038
39461
  self.uid = uid
@@ -39144,9 +39567,9 @@ class DescribeHistoryTasksResponseBody(TeaModel):
39144
39567
  ):
39145
39568
  # The tasks.
39146
39569
  self.items = items
39147
- # The page number. Pages start from page 1. Default value: **1**.
39570
+ # The page number.
39148
39571
  self.page_number = page_number
39149
- # The number of entries per page. Valid values: **10 to 100**. Default value: **10**.
39572
+ # The number of entries per page.
39150
39573
  self.page_size = page_size
39151
39574
  # The unique ID of the request. If the request fails, provide this ID for technical support to troubleshoot the failure.
39152
39575
  self.request_id = request_id
@@ -43538,7 +43961,7 @@ class DescribeModifyParameterLogRequest(TeaModel):
43538
43961
  self.end_time = end_time
43539
43962
  self.owner_account = owner_account
43540
43963
  self.owner_id = owner_id
43541
- # The page number. Pages start from page 1.
43964
+ # The page number. Pages start from 1.
43542
43965
  #
43543
43966
  # Default value: **1**.
43544
43967
  self.page_number = page_number
@@ -43626,7 +44049,7 @@ class DescribeModifyParameterLogResponseBodyItemsParameterChangeLog(TeaModel):
43626
44049
  self.old_parameter_value = old_parameter_value
43627
44050
  # The name of the parameter.
43628
44051
  self.parameter_name = parameter_name
43629
- # The status of the new value specified for the parameter. Valid values:
44052
+ # The status. Valid values:
43630
44053
  #
43631
44054
  # * **Applied:** The new value has taken effect.
43632
44055
  # * **Syncing:** The new value is being applied and has not taken effect.
@@ -43721,7 +44144,7 @@ class DescribeModifyParameterLogResponseBody(TeaModel):
43721
44144
  self.engine = engine
43722
44145
  # The database engine version of the instance.
43723
44146
  self.engine_version = engine_version
43724
- # An array that consists of parameter modification log entries.
44147
+ # The log entries.
43725
44148
  self.items = items
43726
44149
  # The page number.
43727
44150
  self.page_number = page_number
@@ -46064,9 +46487,9 @@ class DescribePostgresExtensionsResponseBodyInstalledExtensions(TeaModel):
46064
46487
  self.priority = priority
46065
46488
  # The extensions on which the current extension depends when it is installed.
46066
46489
  self.requires = requires
46067
- # Alibaba Cloud account ID.
46490
+ # The ID of the Alibaba Cloud account.
46068
46491
  #
46069
- # > Only exclusive plug-ins (plug-ins written by users) will return this parameter. Each Alibaba Cloud account only displays its own exclusive plug-ins.
46492
+ # > This parameter is returned only for self-developed exclusive extensions. You can view exclusive extensions only within your Alibaba Cloud account.
46070
46493
  self.uid = uid
46071
46494
 
46072
46495
  def validate(self):
@@ -46150,9 +46573,9 @@ class DescribePostgresExtensionsResponseBodyUninstalledExtensions(TeaModel):
46150
46573
  self.priority = priority
46151
46574
  # The extensions on which the current extension depends when it is installed.
46152
46575
  self.requires = requires
46153
- # Alibaba Cloud account ID.
46576
+ # The ID of the Alibaba Cloud account.
46154
46577
  #
46155
- # > Only exclusive plug-ins (plug-ins written by users) will return this parameter. Each Alibaba Cloud account only displays its own exclusive plug-ins.
46578
+ # > This parameter is returned only for self-developed exclusive extensions. You can view exclusive extensions only within your Alibaba Cloud account.
46156
46579
  self.uid = uid
46157
46580
 
46158
46581
  def validate(self):
@@ -47563,12 +47986,32 @@ class DescribeRCDeploymentSetsRequest(TeaModel):
47563
47986
  region_id: str = None,
47564
47987
  strategy: str = None,
47565
47988
  ):
47989
+ # The IDs of the deployment sets. The value can be a JSON array that consists of deployment set IDs in the format of `["ds-xxxxxxxxx", "ds-yyyyyyyyy", ... "ds-zzzzzzzzz"]`. You can specify up to 100 deployment set IDs in each request. Separate the deployment set IDs with commas (,).
47566
47990
  self.deployment_set_ids = deployment_set_ids
47991
+ # The deployment set name. The name must be 2 to 128 characters in length. The name must start with a letter and cannot start with `http://` or `https://`. The name can contain digits, letters, colons (:), underscores (_), and hyphens (-).
47567
47992
  self.deployment_set_name = deployment_set_name
47993
+ # The page number.
47994
+ #
47995
+ # Pages start from page 1.
47996
+ #
47997
+ # Default value: 1.
47568
47998
  self.page_number = page_number
47999
+ # The number of entries per page.
48000
+ #
48001
+ # Maximum value: 50.
48002
+ #
48003
+ # Default value: 10.
47569
48004
  self.page_size = page_size
48005
+ # The region ID.
48006
+ #
47570
48007
  # This parameter is required.
47571
48008
  self.region_id = region_id
48009
+ # The deployment strategy. Valid values:
48010
+ #
48011
+ # * **Availability**: high availability strategy
48012
+ # * **AvailabilityGroup**: high availability group strategy
48013
+ #
48014
+ # Default value: Availability.
47572
48015
  self.strategy = strategy
47573
48016
 
47574
48017
  def validate(self):
@@ -47618,8 +48061,11 @@ class DescribeRCDeploymentSetsResponseBodyDeploymentSetsDeploymentSetCapacitiesC
47618
48061
  used_amount: int = None,
47619
48062
  zone_id: str = None,
47620
48063
  ):
48064
+ # The number of RDS Custom instances that reside in the zone and can be added to the deployment set.
47621
48065
  self.available_amount = available_amount
48066
+ # The number of RDS Custom instances that reside in the zone in the deployment set.
47622
48067
  self.used_amount = used_amount
48068
+ # The zone ID. Only the IDs of the zones to which the existing RDS Custom instances in the deployment set belong are returned.
47623
48069
  self.zone_id = zone_id
47624
48070
 
47625
48071
  def validate(self):
@@ -47728,17 +48174,31 @@ class DescribeRCDeploymentSetsResponseBodyDeploymentSetsDeploymentSet(TeaModel):
47728
48174
  instance_ids: DescribeRCDeploymentSetsResponseBodyDeploymentSetsDeploymentSetInstanceIds = None,
47729
48175
  strategy: str = None,
47730
48176
  ):
48177
+ # The details of the capacities of the deployment set. This parameter is valid only when the deployment set contains existing RDS Custom instances. The value contains the details of the capacities of the deployment set in different zones.
47731
48178
  self.capacities = capacities
48179
+ # The time when the deployment set was created. The time follows the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time is displayed in UTC.
47732
48180
  self.create_time = create_time
48181
+ # The deployment set description.
47733
48182
  self.deployment_set_description = deployment_set_description
48183
+ # The deployment set ID.
47734
48184
  self.deployment_set_id = deployment_set_id
48185
+ # The deployment set name.
47735
48186
  self.deployment_set_name = deployment_set_name
48187
+ # The deployment strategy. The return value of this parameter is the value of the `Strategy` request parameter.
47736
48188
  self.deployment_strategy = deployment_strategy
48189
+ # The deployment domain.
47737
48190
  self.domain = domain
48191
+ # The deployment granularity.
47738
48192
  self.granularity = granularity
48193
+ # The number of groups in the deployment set.
48194
+ #
48195
+ # > This parameter is valid only when the Strategy request parameter is set to AvailabilityGroup.
47739
48196
  self.group_count = group_count
48197
+ # The number of RDS Custom instances in the deployment set.
47740
48198
  self.instance_amount = instance_amount
48199
+ # The ID of the RDS Custom instance in the deployment set.
47741
48200
  self.instance_ids = instance_ids
48201
+ # The deployment strategy.
47742
48202
  self.strategy = strategy
47743
48203
 
47744
48204
  def validate(self):
@@ -47855,11 +48315,17 @@ class DescribeRCDeploymentSetsResponseBody(TeaModel):
47855
48315
  request_id: str = None,
47856
48316
  total_count: int = None,
47857
48317
  ):
48318
+ # The details of the deployment set.
47858
48319
  self.deployment_sets = deployment_sets
48320
+ # The page number.
47859
48321
  self.page_number = page_number
48322
+ # The number of entries returned per page.
47860
48323
  self.page_size = page_size
48324
+ # The region ID.
47861
48325
  self.region_id = region_id
48326
+ # The request ID.
47862
48327
  self.request_id = request_id
48328
+ # The total number of entries returned.
47863
48329
  self.total_count = total_count
47864
48330
 
47865
48331
  def validate(self):
@@ -47954,11 +48420,20 @@ class DescribeRCImageListRequest(TeaModel):
47954
48420
  region_id: str = None,
47955
48421
  type: str = None,
47956
48422
  ):
48423
+ # The image architecture. Valid values:
48424
+ #
48425
+ # * x86_64
48426
+ # * arm64
47957
48427
  self.architecture = architecture
48428
+ # The page number.
47958
48429
  self.page_number = page_number
48430
+ # The number of entries per page.
47959
48431
  self.page_size = page_size
48432
+ # The region ID.
48433
+ #
47960
48434
  # This parameter is required.
47961
48435
  self.region_id = region_id
48436
+ # The image type. Set the value to **self**.
47962
48437
  self.type = type
47963
48438
 
47964
48439
  def validate(self):
@@ -48014,18 +48489,48 @@ class DescribeRCImageListResponseBodyImages(TeaModel):
48014
48489
  status: str = None,
48015
48490
  usage: str = None,
48016
48491
  ):
48492
+ # The image architecture. Valid values:
48493
+ #
48494
+ # * x86_64
48495
+ # * arm64
48017
48496
  self.architecture = architecture
48497
+ # The time when the image was created.
48018
48498
  self.creation_time = creation_time
48499
+ # The description of the image.
48019
48500
  self.description = description
48501
+ # The image ID.
48020
48502
  self.image_id = image_id
48503
+ # The image name.
48021
48504
  self.image_name = image_name
48505
+ # The image version.
48022
48506
  self.image_version = image_version
48507
+ # Indicates whether the image is a public image. Public images include public images provided by Alibaba Cloud and custom images published as community images.
48508
+ #
48509
+ # * **true**: The image is a public image.
48510
+ # * **false**: The image is not a public image.
48023
48511
  self.is_public = is_public
48512
+ # The display name of the operating system in Chinese.
48024
48513
  self.osname = osname
48514
+ # The display name of the operating system in English.
48025
48515
  self.osname_en = osname_en
48516
+ # The type of the operating system. Valid values:
48517
+ #
48518
+ # * **windows**\
48519
+ # * **linux**\
48026
48520
  self.ostype = ostype
48521
+ # The image size. Unit: GiB.
48027
48522
  self.size = size
48523
+ # The image status. Valid values:
48524
+ #
48525
+ # * **Unavailable**\
48526
+ # * **Available**\
48527
+ # * **Creating**\
48528
+ # * **CreateFailed**\
48028
48529
  self.status = status
48530
+ # Indicates whether the image is used by the RDS Custom instance. Valid values:
48531
+ #
48532
+ # * **instance**: The image is used to create one or more RDS Custom instances.
48533
+ # * **none**: The image is not used to create RDS Custom instances.
48029
48534
  self.usage = usage
48030
48535
 
48031
48536
  def validate(self):
@@ -48106,11 +48611,17 @@ class DescribeRCImageListResponseBody(TeaModel):
48106
48611
  request_id: str = None,
48107
48612
  total_count: int = None,
48108
48613
  ):
48614
+ # The information about the images.
48109
48615
  self.images = images
48616
+ # The page number.
48110
48617
  self.page_number = page_number
48618
+ # The number of entries returned per page.
48111
48619
  self.page_size = page_size
48620
+ # The region ID.
48112
48621
  self.region_id = region_id
48622
+ # The request ID.
48113
48623
  self.request_id = request_id
48624
+ # The total number of images.
48114
48625
  self.total_count = total_count
48115
48626
 
48116
48627
  def validate(self):
@@ -48208,8 +48719,11 @@ class DescribeRCInstanceAttributeRequest(TeaModel):
48208
48719
  instance_id: str = None,
48209
48720
  region_id: str = None,
48210
48721
  ):
48722
+ # The instance ID.
48723
+ #
48211
48724
  # This parameter is required.
48212
48725
  self.instance_id = instance_id
48726
+ # The region ID.
48213
48727
  self.region_id = region_id
48214
48728
 
48215
48729
  def validate(self):
@@ -48245,10 +48759,21 @@ class DescribeRCInstanceAttributeResponseBodyDataDisksDataDisk(TeaModel):
48245
48759
  performance_level: str = None,
48246
48760
  size: int = None,
48247
48761
  ):
48762
+ # The category of the data disk.
48248
48763
  self.category = category
48764
+ # Indicates whether the data disk is released when the instance is released. Valid values:
48765
+ #
48766
+ # * **true**: The data disk is released when the instance is released.
48767
+ # * **false**: The data disk is reserved when the instance is released.
48249
48768
  self.delete_with_instance = delete_with_instance
48769
+ # Indicates whether the data disk is encrypted. Valid values:
48770
+ #
48771
+ # * **true**\
48772
+ # * **false**\
48250
48773
  self.encrypted = encrypted
48774
+ # The performance level of data disk. This parameter is available when the data disk is an Enterprise SSD (ESSD).
48251
48775
  self.performance_level = performance_level
48776
+ # The size of the data disk. Unit: GiB.
48252
48777
  self.size = size
48253
48778
 
48254
48779
  def validate(self):
@@ -48328,7 +48853,9 @@ class DescribeRCInstanceAttributeResponseBodyDedicatedHostAttribute(TeaModel):
48328
48853
  dedicated_host_id: str = None,
48329
48854
  dedicated_host_name: str = None,
48330
48855
  ):
48856
+ # The ID of the dedicated host.
48331
48857
  self.dedicated_host_id = dedicated_host_id
48858
+ # The name of the dedicated host.
48332
48859
  self.dedicated_host_name = dedicated_host_name
48333
48860
 
48334
48861
  def validate(self):
@@ -48363,9 +48890,18 @@ class DescribeRCInstanceAttributeResponseBodyEipAddress(TeaModel):
48363
48890
  internet_charge_type: str = None,
48364
48891
  ip_address: str = None,
48365
48892
  ):
48893
+ # The EIP ID.
48366
48894
  self.allocation_id = allocation_id
48895
+ # The maximum Internet bandwidth of the EIP. Unit: Mbit/s.
48367
48896
  self.bandwidth = bandwidth
48897
+ # The billing method of the Internet-facing instance. Valid values:
48898
+ #
48899
+ # * **paybytraffic:** pay-by-data-transfer
48900
+ # * **paybybandwidth**: pay-by-bandwidth
48901
+ #
48902
+ # > If the **pay-by-traffic** billing method is used for network usage, the maximum inbound and outbound bandwidths are used as the upper limits of bandwidths instead of guaranteed performance specifications. In scenarios in which demands exceed resource supplies, the maximum bandwidths may not be reached. If you want guaranteed bandwidths for your instance, use the **pay-by-bandwidth** billing method for network usage.
48368
48903
  self.internet_charge_type = internet_charge_type
48904
+ # The EIP.
48369
48905
  self.ip_address = ip_address
48370
48906
 
48371
48907
  def validate(self):
@@ -48432,6 +48968,13 @@ class DescribeRCInstanceAttributeResponseBodyOperationLocksLockReason(TeaModel):
48432
48968
  self,
48433
48969
  lock_reason: str = None,
48434
48970
  ):
48971
+ # The reason why the instance is locked. Valid values:
48972
+ #
48973
+ # * **financial**: The instance is locked due to overdue payments.
48974
+ # * **security**: The instance is locked for security purposes.
48975
+ # * **recycling**: The instance is locked because the instance is a preemptible instance and pending to be released.
48976
+ # * **dedicatedhostfinancial**: The instance is locked due to overdue payments for the dedicated host.
48977
+ # * **refunded**: The instance is locked because a refund was made for the instance.
48435
48978
  self.lock_reason = lock_reason
48436
48979
 
48437
48980
  def validate(self):
@@ -48578,9 +49121,13 @@ class DescribeRCInstanceAttributeResponseBodyVpcAttributes(TeaModel):
48578
49121
  v_switch_id: str = None,
48579
49122
  vpc_id: str = None,
48580
49123
  ):
49124
+ # The network address translation (NAT) IP address of the instance. The NAT IP address is used by instances in different VPCs for communication.
48581
49125
  self.nat_ip_address = nat_ip_address
49126
+ # The private IP addresses of the instance.
48582
49127
  self.private_ip_address = private_ip_address
49128
+ # The vSwitch ID.
48583
49129
  self.v_switch_id = v_switch_id
49130
+ # The VPC ID.
48584
49131
  self.vpc_id = vpc_id
48585
49132
 
48586
49133
  def validate(self):
@@ -48659,43 +49206,112 @@ class DescribeRCInstanceAttributeResponseBody(TeaModel):
48659
49206
  vpc_attributes: DescribeRCInstanceAttributeResponseBodyVpcAttributes = None,
48660
49207
  zone_id: str = None,
48661
49208
  ):
49209
+ # The ID of the cluster to which the instance belongs.
49210
+ #
49211
+ # > This parameter will be deprecated. We recommend that you use other parameters to ensure compatibility.
48662
49212
  self.cluster_id = cluster_id
49213
+ # The number of CPU cores.
48663
49214
  self.cpu = cpu
49215
+ # The time when the instance was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mmZ format. The time is displayed in UTC.
48664
49216
  self.creation_time = creation_time
49217
+ # The performance mode of the burstable instance.
48665
49218
  self.credit_specification = credit_specification
49219
+ # The details of the data disk.
48666
49220
  self.data_disks = data_disks
49221
+ # The attributes of the dedicated hosts.
48667
49222
  self.dedicated_host_attribute = dedicated_host_attribute
49223
+ # The ID of the deployment set.
48668
49224
  self.deployment_set_id = deployment_set_id
49225
+ # The instance description.
48669
49226
  self.description = description
49227
+ # The reserved parameter.
48670
49228
  self.disk_type = disk_type
49229
+ # The Elastic Compute Service (ECS) instance family.
48671
49230
  self.ecs_instance_type = ecs_instance_type
49231
+ # The elastic IP address (EIP) associated with the instance.
48672
49232
  self.eip_address = eip_address
49233
+ # Indicates whether the Jumbo Frame feature is enabled for the instance. Valid values:
49234
+ #
49235
+ # * **true**\
49236
+ # * **false**\
48673
49237
  self.enable_jumbo_frame = enable_jumbo_frame
49238
+ # The expiration time. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mmZ format. The time is displayed in UTC.
48674
49239
  self.expired_time = expired_time
49240
+ # The instance hostname.
48675
49241
  self.host_name = host_name
49242
+ # The storage type of the host. Valid values:
49243
+ #
49244
+ # * **dhg_cloud_ssd**: ESSD
49245
+ # * **dhg_local_ssd**: local SSD
48676
49246
  self.host_type = host_type
49247
+ # The image ID of the instance.
48677
49248
  self.image_id = image_id
49249
+ # The private IP addresses of the instance in the classic network.
48678
49250
  self.inner_ip_address = inner_ip_address
49251
+ # The instance ID.
48679
49252
  self.instance_id = instance_id
49253
+ # The instance name.
48680
49254
  self.instance_name = instance_name
49255
+ # The network type. Valid values:
49256
+ #
49257
+ # * **classic**\
49258
+ # * **vpc**\
48681
49259
  self.instance_network_type = instance_network_type
49260
+ # The instance type of the instance.
48682
49261
  self.instance_type = instance_type
49262
+ # The billing method for network usage. Valid values:
49263
+ #
49264
+ # * **PayByBandwidth**: pay-by-bandwidth
49265
+ # * **PayByTraffic**: pay-by-data-transfer
49266
+ #
49267
+ # > If the **pay-by-traffic** billing method is used for network usage, the maximum inbound and outbound bandwidths are used as the upper limits of bandwidths instead of guaranteed performance specifications. In scenarios in which demands exceed resource supplies, the maximum bandwidths may not be reached. If you want guaranteed bandwidths for your instance, use the **pay-by-bandwidth** billing method for network usage.
48683
49268
  self.internet_charge_type = internet_charge_type
49269
+ # The maximum inbound bandwidth from the Internet. Unit: Mbit/s.
48684
49270
  self.internet_max_bandwidth_in = internet_max_bandwidth_in
49271
+ # The maximum outbound bandwidth to the Internet. Unit: Mbit/s.
48685
49272
  self.internet_max_bandwidth_out = internet_max_bandwidth_out
49273
+ # Indicates whether the instance is I/O optimized.
49274
+ #
49275
+ # * **optimized**: The instance is I/O optimized.
49276
+ # * **none**: The instance is not I/O optimized.
48686
49277
  self.io_optimized = io_optimized
49278
+ # The name of the key pair.
48687
49279
  self.key_pair_name = key_pair_name
49280
+ # The memory capacity of the instance. Unit: MiB.
48688
49281
  self.memory = memory
49282
+ # The reasons why the instance is locked.
48689
49283
  self.operation_locks = operation_locks
49284
+ # The public IP address of the instance.
48690
49285
  self.public_ip_address = public_ip_address
49286
+ # The region ID.
48691
49287
  self.region_id = region_id
49288
+ # The request ID.
48692
49289
  self.request_id = request_id
49290
+ # The security groups.
48693
49291
  self.security_group_ids = security_group_ids
49292
+ # The serial number of the instance.
48694
49293
  self.serial_number = serial_number
49294
+ # The instance status. Valid values:
49295
+ #
49296
+ # * **Pending**\
49297
+ # * **Running**\
49298
+ # * **Starting**\
49299
+ # * **Stopping**\
49300
+ # * **Stopped**\
48695
49301
  self.status = status
49302
+ # Indicates whether the billing of the instance continues after the instance is stopped. Valid values:
49303
+ #
49304
+ # * **KeepCharging**: The billing of the instance continues after the instance is stopped, and resources are retained for the instance.
49305
+ # * **StopCharging**: The billing of the instance stops after the instance is stopped. After the instance is stopped, resources such as CPU cores, memory resources, and public IP address are released. The instance may be unable to restart if some required resources are out of stock in the current region.
49306
+ # * **Not-applicable**: The No Fees for Stopped Instances feature is not supported for the instance.
48696
49307
  self.stopped_mode = stopped_mode
49308
+ # The virtual LAN (VLAN) ID of the instance.
49309
+ #
49310
+ # > This parameter will be deprecated. We recommend that you use other parameters to ensure compatibility.
48697
49311
  self.vlan_id = vlan_id
49312
+ # The virtual private cloud (VPC) attributes of the instance.
48698
49313
  self.vpc_attributes = vpc_attributes
49314
+ # The zone ID.
48699
49315
  self.zone_id = zone_id
48700
49316
 
48701
49317
  def validate(self):
@@ -48939,10 +49555,23 @@ class DescribeRCInstancesRequest(TeaModel):
48939
49555
  region_id: str = None,
48940
49556
  vpc_id: str = None,
48941
49557
  ):
49558
+ # The instance ID.
48942
49559
  self.instance_id = instance_id
49560
+ # The page number.
49561
+ #
49562
+ # Page starts from page 1.
49563
+ #
49564
+ # Default value: 1.
48943
49565
  self.page_number = page_number
49566
+ # The number of entries per page.
49567
+ #
49568
+ # Maximum value: 100.
49569
+ #
49570
+ # Default value: 10.
48944
49571
  self.page_size = page_size
49572
+ # The region ID.
48945
49573
  self.region_id = region_id
49574
+ # The virtual private cloud (VPC) ID.
48946
49575
  self.vpc_id = vpc_id
48947
49576
 
48948
49577
  def validate(self):
@@ -48995,15 +49624,33 @@ class DescribeRCInstancesResponseBodyRCInstances(TeaModel):
48995
49624
  status: str = None,
48996
49625
  vpc_id: str = None,
48997
49626
  ):
49627
+ # The cluster name.
48998
49628
  self.cluster_name = cluster_name
49629
+ # The database type.
48999
49630
  self.db_type = db_type
49631
+ # The instance description.
49000
49632
  self.description = description
49633
+ # The time when the task was created. The time is displayed in GMT.
49001
49634
  self.gmt_created = gmt_created
49635
+ # The host IP address.
49002
49636
  self.host_ip = host_ip
49637
+ # The host name.
49003
49638
  self.host_name = host_name
49639
+ # The instance ID.
49004
49640
  self.instance_id = instance_id
49641
+ # The region ID.
49005
49642
  self.region_id = region_id
49643
+ # The instance status. Valid values:
49644
+ #
49645
+ # * **Pending**\
49646
+ # * **Running**\
49647
+ # * **Starting**\
49648
+ # * **Stopping**\
49649
+ # * **Stopped**\
49650
+ #
49651
+ # > If the value returned for the DescribeRCInstances operation is different from the value that is returned for the **DescribeRCInstanceAttribute** operation, the value returned for the **DescribeRCInstanceAttribute** operation shall prevail.
49006
49652
  self.status = status
49653
+ # The VPC ID.
49007
49654
  self.vpc_id = vpc_id
49008
49655
 
49009
49656
  def validate(self):
@@ -49071,10 +49718,15 @@ class DescribeRCInstancesResponseBody(TeaModel):
49071
49718
  request_id: str = None,
49072
49719
  total_count: int = None,
49073
49720
  ):
49721
+ # The page number.
49074
49722
  self.page_number = page_number
49723
+ # The number of entries per page.
49075
49724
  self.page_size = page_size
49725
+ # The details of the instance.
49076
49726
  self.rcinstances = rcinstances
49727
+ # The request ID.
49077
49728
  self.request_id = request_id
49729
+ # The total number of entries returned.
49078
49730
  self.total_count = total_count
49079
49731
 
49080
49732
  def validate(self):
@@ -49175,15 +49827,35 @@ class DescribeRCMetricListRequest(TeaModel):
49175
49827
  region_id: str = None,
49176
49828
  start_time: str = None,
49177
49829
  ):
49830
+ # The end of the time range to query. The end time must be later than the start time. Example: `2024-08-06 10:15:00`.
49178
49831
  self.end_time = end_time
49832
+ # The reserved parameter.
49179
49833
  self.express = express
49834
+ # The instance ID.
49180
49835
  self.instance_id = instance_id
49836
+ # The number of entries per page.
49837
+ #
49838
+ # Default value: 1000.
49839
+ #
49840
+ # > The maximum value of the Length parameter in a request is 1440.
49181
49841
  self.length = length
49842
+ # The metric that you want to use.
49843
+ #
49182
49844
  # This parameter is required.
49183
49845
  self.metric_name = metric_name
49846
+ # The pagination token.
49184
49847
  self.next_token = next_token
49848
+ # The statistical period of the monitoring data.
49849
+ #
49850
+ # Set the value to 60 or an integer multiple of 60.
49851
+ #
49852
+ # Unit: seconds.
49853
+ #
49854
+ # Default value: 60.
49185
49855
  self.period = period
49856
+ # The region ID.
49186
49857
  self.region_id = region_id
49858
+ # The beginning of the time range to query. Example: `2024-08-06 10:05:00`.
49187
49859
  self.start_time = start_time
49188
49860
 
49189
49861
  def validate(self):
@@ -49249,12 +49921,24 @@ class DescribeRCMetricListResponseBody(TeaModel):
49249
49921
  request_id: str = None,
49250
49922
  success: bool = None,
49251
49923
  ):
49924
+ # The HTTP status code returned.
49252
49925
  self.code = code
49926
+ # The monitoring data.
49253
49927
  self.datapoints = datapoints
49928
+ # The message that is returned for the request.
49929
+ #
49930
+ # > If the request is successful, **Successful** is returned. If the request fails, an error message that contains information such as an error code is returned.
49254
49931
  self.message = message
49932
+ # The pagination token.
49255
49933
  self.next_token = next_token
49934
+ # The statistical period of the monitoring data.
49256
49935
  self.period = period
49936
+ # The request ID.
49257
49937
  self.request_id = request_id
49938
+ # Indicates whether the request was successful. Valid values:
49939
+ #
49940
+ # * **true**\
49941
+ # * **false**\
49258
49942
  self.success = success
49259
49943
 
49260
49944
  def validate(self):
@@ -50968,9 +51652,9 @@ class DescribeReplicationLinkLogsRequest(TeaModel):
50968
51652
  self.page_number = page_number
50969
51653
  # The number of entries per page.
50970
51654
  self.page_size = page_size
50971
- # The ID of the task. You can call the **CreateReplicationLink** operation to create the task ID of the disaster recovery instance.
51655
+ # The task ID. You must set this parameter to the ID of the task that you create by calling the **CreateReplicationLink** operation for the disaster recovery instance.
50972
51656
  self.task_id = task_id
50973
- # The name of the task. You can call the **CreateReplicationLink** operation to create a disaster recovery instance. You can specify a task name in the request parameters of the call.
51657
+ # The task name. You must set this parameter to the name of the task that you create by calling the **CreateReplicationLink** operation for the disaster recovery instance.
50974
51658
  self.task_name = task_name
50975
51659
  # The type of the task. Valid values:
50976
51660
  #
@@ -56396,11 +57080,11 @@ class DescribeVSwitchesRequest(TeaModel):
56396
57080
  self.resource_owner_account = resource_owner_account
56397
57081
  self.resource_owner_id = resource_owner_id
56398
57082
  self.security_token = security_token
56399
- # The ID of the VPC to which the VSwitch belongs.
57083
+ # The ID of the VPC to which the vSwitch belongs.
56400
57084
  #
56401
57085
  # > You must configure this parameter or **DedicatedHostGroupId**.
56402
57086
  self.vpc_id = vpc_id
56403
- # The ID of the zone to which the VSwitch belongs. You can call the DescribeAvailableZones operation to query zone IDs. If you specify this parameter, the query results are filtered based on the value of this parameter and only the details of the VSwitch that is deployed in the specified zone are returned.
57087
+ # The ID of the zone to which the vSwitch belongs. You can call the DescribeAvailableZones operation to query zone IDs. If you specify this parameter, the query results are filtered based on the value of this parameter and only the details of the VSwitch that is deployed in the specified zone are returned.
56404
57088
  self.zone_id = zone_id
56405
57089
 
56406
57090
  def validate(self):
@@ -58796,6 +59480,7 @@ class ListClassesRequest(TeaModel):
58796
59480
  client_token: str = None,
58797
59481
  commodity_code: str = None,
58798
59482
  dbinstance_id: str = None,
59483
+ engine: str = None,
58799
59484
  order_type: str = None,
58800
59485
  owner_id: int = None,
58801
59486
  region_id: str = None,
@@ -58817,6 +59502,13 @@ class ListClassesRequest(TeaModel):
58817
59502
  #
58818
59503
  # > If you set the **CommodityCode** parameter to the commodity code of read-only instances, you must specify this parameter.
58819
59504
  self.dbinstance_id = dbinstance_id
59505
+ # The database engine of the instance. Valid values:
59506
+ #
59507
+ # * **MySQL**\
59508
+ # * **SQLServer**\
59509
+ # * **PostgreSQL**\
59510
+ # * **MariaDB**\
59511
+ self.engine = engine
58820
59512
  # The type of order that you want to query. Valid values:
58821
59513
  #
58822
59514
  # * **BUY**: specifies the query orders that are used to purchase instances.
@@ -58849,6 +59541,8 @@ class ListClassesRequest(TeaModel):
58849
59541
  result['CommodityCode'] = self.commodity_code
58850
59542
  if self.dbinstance_id is not None:
58851
59543
  result['DBInstanceId'] = self.dbinstance_id
59544
+ if self.engine is not None:
59545
+ result['Engine'] = self.engine
58852
59546
  if self.order_type is not None:
58853
59547
  result['OrderType'] = self.order_type
58854
59548
  if self.owner_id is not None:
@@ -58869,6 +59563,8 @@ class ListClassesRequest(TeaModel):
58869
59563
  self.commodity_code = m.get('CommodityCode')
58870
59564
  if m.get('DBInstanceId') is not None:
58871
59565
  self.dbinstance_id = m.get('DBInstanceId')
59566
+ if m.get('Engine') is not None:
59567
+ self.engine = m.get('Engine')
58872
59568
  if m.get('OrderType') is not None:
58873
59569
  self.order_type = m.get('OrderType')
58874
59570
  if m.get('OwnerId') is not None:
@@ -58895,6 +59591,8 @@ class ListClassesResponseBodyItems(TeaModel):
58895
59591
  max_iops: str = None,
58896
59592
  memory_class: str = None,
58897
59593
  reference_price: str = None,
59594
+ category: str = None,
59595
+ storage_type: str = None,
58898
59596
  ):
58899
59597
  # The code of the instance type. For more information, see [Primary ApsaraDB RDS instance types](https://help.aliyun.com/document_detail/26312.html) and [Read-only ApsaraDB RDS instance types](https://help.aliyun.com/document_detail/145759.html).
58900
59598
  self.class_code = class_code
@@ -58924,6 +59622,24 @@ class ListClassesResponseBodyItems(TeaModel):
58924
59622
  # > * If you set **CommodityCode** to a value that indicates the pay-as-you-go billing method, the ReferencePrice parameter specifies the hourly fee that you must pay.
58925
59623
  # > * If you set **CommodityCode** to a value that indicates the subscription billing method, the ReferencePrice parameter specifies the monthly fee that you must pay.
58926
59624
  self.reference_price = reference_price
59625
+ # The RDS edition of the instance. Valid values:
59626
+ #
59627
+ # * Regular instance
59628
+ #
59629
+ # * **Basic**: RDS Basic Edition
59630
+ # * **HighAvailability**: RDS High-availability Edition
59631
+ # * **cluster**: RDS Cluster Edition for ApsaraDB RDS for MySQL or PostgreSQL
59632
+ # * **AlwaysOn**: RDS Cluster Edition for ApsaraDB RDS for SQL Server
59633
+ # * **Finance**: RDS Basic Edition for serverless instances
59634
+ #
59635
+ # * Serverless instance
59636
+ #
59637
+ # * **serverless_basic**: RDS Basic Edition for serverless instances. This edition is available only for instances that run MySQL and PostgreSQL.
59638
+ # * **serverless_standard**: RDS High-availability Edition for serverless instances. This edition is available only for instances that run MySQL and PostgreSQL.
59639
+ # * **serverless_ha**: RDS High-availability Edition for serverless instances. This edition is available only for instances that run SQL Server.
59640
+ self.category = category
59641
+ # The storage type of the instance.
59642
+ self.storage_type = storage_type
58927
59643
 
58928
59644
  def validate(self):
58929
59645
  pass
@@ -58954,6 +59670,10 @@ class ListClassesResponseBodyItems(TeaModel):
58954
59670
  result['MemoryClass'] = self.memory_class
58955
59671
  if self.reference_price is not None:
58956
59672
  result['ReferencePrice'] = self.reference_price
59673
+ if self.category is not None:
59674
+ result['category'] = self.category
59675
+ if self.storage_type is not None:
59676
+ result['storageType'] = self.storage_type
58957
59677
  return result
58958
59678
 
58959
59679
  def from_map(self, m: dict = None):
@@ -58978,6 +59698,10 @@ class ListClassesResponseBodyItems(TeaModel):
58978
59698
  self.memory_class = m.get('MemoryClass')
58979
59699
  if m.get('ReferencePrice') is not None:
58980
59700
  self.reference_price = m.get('ReferencePrice')
59701
+ if m.get('category') is not None:
59702
+ self.category = m.get('category')
59703
+ if m.get('storageType') is not None:
59704
+ self.storage_type = m.get('storageType')
58981
59705
  return self
58982
59706
 
58983
59707
 
@@ -60747,15 +61471,23 @@ class ModifyAccountCheckPolicyRequest(TeaModel):
60747
61471
  resource_owner_account: str = None,
60748
61472
  resource_owner_id: int = None,
60749
61473
  ):
61474
+ # The account username.
61475
+ #
60750
61476
  # This parameter is required.
60751
61477
  self.account_name = account_name
61478
+ # Specifies whether to apply the password policy
61479
+ #
60752
61480
  # This parameter is required.
60753
61481
  self.check_policy = check_policy
61482
+ # The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The client token can contain only ASCII characters. 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.
60754
61483
  self.client_token = client_token
61484
+ # The instance ID.
61485
+ #
60755
61486
  # This parameter is required.
60756
61487
  self.dbinstance_id = dbinstance_id
60757
61488
  self.owner_account = owner_account
60758
61489
  self.owner_id = owner_id
61490
+ # The resource group ID. For more information about resource groups, see related documentation.
60759
61491
  self.resource_group_id = resource_group_id
60760
61492
  self.resource_owner_account = resource_owner_account
60761
61493
  self.resource_owner_id = resource_owner_id
@@ -61031,6 +61763,7 @@ class ModifyAccountMaskingPrivilegeRequest(TeaModel):
61031
61763
  expire_time: str = None,
61032
61764
  owner_id: str = None,
61033
61765
  privilege: str = None,
61766
+ region_id: str = None,
61034
61767
  resource_owner_account: str = None,
61035
61768
  resource_owner_id: int = None,
61036
61769
  user_name: str = None,
@@ -61041,6 +61774,7 @@ class ModifyAccountMaskingPrivilegeRequest(TeaModel):
61041
61774
  self.owner_id = owner_id
61042
61775
  # This parameter is required.
61043
61776
  self.privilege = privilege
61777
+ self.region_id = region_id
61044
61778
  self.resource_owner_account = resource_owner_account
61045
61779
  self.resource_owner_id = resource_owner_id
61046
61780
  # This parameter is required.
@@ -61063,6 +61797,8 @@ class ModifyAccountMaskingPrivilegeRequest(TeaModel):
61063
61797
  result['OwnerId'] = self.owner_id
61064
61798
  if self.privilege is not None:
61065
61799
  result['Privilege'] = self.privilege
61800
+ if self.region_id is not None:
61801
+ result['RegionId'] = self.region_id
61066
61802
  if self.resource_owner_account is not None:
61067
61803
  result['ResourceOwnerAccount'] = self.resource_owner_account
61068
61804
  if self.resource_owner_id is not None:
@@ -61081,6 +61817,8 @@ class ModifyAccountMaskingPrivilegeRequest(TeaModel):
61081
61817
  self.owner_id = m.get('OwnerId')
61082
61818
  if m.get('Privilege') is not None:
61083
61819
  self.privilege = m.get('Privilege')
61820
+ if m.get('RegionId') is not None:
61821
+ self.region_id = m.get('RegionId')
61084
61822
  if m.get('ResourceOwnerAccount') is not None:
61085
61823
  self.resource_owner_account = m.get('ResourceOwnerAccount')
61086
61824
  if m.get('ResourceOwnerId') is not None:
@@ -61188,13 +61926,25 @@ class ModifyAccountSecurityPolicyRequest(TeaModel):
61188
61926
  resource_owner_account: str = None,
61189
61927
  resource_owner_id: int = None,
61190
61928
  ):
61929
+ # The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length.
61191
61930
  self.client_token = client_token
61931
+ # The instance ID. You can call the [DescribeDBInstances](https://help.aliyun.com/document_detail/2628785.html) operation to query the instance ID.
61932
+ #
61192
61933
  # This parameter is required.
61193
61934
  self.dbinstance_id = dbinstance_id
61935
+ # The custom password policy for the account of the ApsaraDB RDS for SQL Server instance. The following policies are supported:
61936
+ #
61937
+ # * `{"account security policy": {"MaximumPasswordAge": Specify the maximum password age}}`: You can configure only the maximum password age. After the maximum password age is reached, you must change the password.
61938
+ # * `{"accountSecurityPolicy": {"MaximumPasswordAge": Specify the minimum password age}}`: You can configure only the minimum password age. During the specified period, you cannot change the password.
61939
+ # * `{"accountSecurityPolicy": {"MaximumPasswordAge": Specify the maximum password age, "MinimumPasswordAge": Specify the minimum password age}}`: You can configure the maximum and minimum password age at the same time.
61940
+ #
61941
+ # > The minimum password age cannot be greater than the maximum password age. Valid values for the minimum password age: 0 to 998. Valid values for the maximum password age: 0 to 999.
61942
+ #
61194
61943
  # This parameter is required.
61195
61944
  self.group_policy = group_policy
61196
61945
  self.owner_account = owner_account
61197
61946
  self.owner_id = owner_id
61947
+ # The resource group ID.
61198
61948
  self.resource_group_id = resource_group_id
61199
61949
  self.resource_owner_account = resource_owner_account
61200
61950
  self.resource_owner_id = resource_owner_id
@@ -61252,6 +62002,7 @@ class ModifyAccountSecurityPolicyResponseBody(TeaModel):
61252
62002
  self,
61253
62003
  request_id: str = None,
61254
62004
  ):
62005
+ # The request ID.
61255
62006
  self.request_id = request_id
61256
62007
 
61257
62008
  def validate(self):
@@ -65482,9 +66233,7 @@ class ModifyDBInstanceSpecRequestServerlessConfiguration(TeaModel):
65482
66233
  # * **true**\
65483
66234
  # * **false** (default)
65484
66235
  #
65485
- # >
65486
- #
65487
- # * This parameter is required only for serverless instances that run MySQL and PostgreSQL. After the automatic start and stop feature is enabled, if no connections to the instance are established within 10 minutes, the instance is suspended. After a connection to the instance is established, the instance is automatically resumed.
66236
+ # > This parameter is required only for serverless instances that run MySQL and PostgreSQL. After the automatic start and stop feature is enabled, if no connections to the instance are established within 10 minutes, the instance is suspended. After a connection to the instance is established, the instance is automatically resumed.
65488
66237
  self.auto_pause = auto_pause
65489
66238
  # The maximum number of RDS Capacity Units (RCUs). Valid values:
65490
66239
  #
@@ -65511,11 +66260,8 @@ class ModifyDBInstanceSpecRequestServerlessConfiguration(TeaModel):
65511
66260
  # * **true**\
65512
66261
  # * **false** (default)
65513
66262
  #
65514
- # >
65515
- #
65516
- # * This parameter is required only for serverless instances that run MySQL and PostgreSQL. If you set this parameter to true, a service interruption that lasts 30 to 120 seconds occurs during forced scaling. Process with caution.
65517
- #
65518
- # * The RCU scaling for a serverless instance immediately takes effect. In some cases, such as the execution of large transactions, the scaling does not immediately take effect. In this case, you can enable this feature to forcefully scale the RCUs of the instance.
66263
+ # > * This parameter is required only for serverless instances that run MySQL and PostgreSQL. If you set this parameter to true, a service interruption that lasts 30 to 120 seconds occurs during forced scaling. Process with caution.
66264
+ # > * The RCU scaling for a serverless instance immediately takes effect. In some cases, such as the execution of large transactions, the scaling does not immediately take effect. In this case, you can enable this feature to forcefully scale the RCUs of the instance.
65519
66265
  self.switch_force = switch_force
65520
66266
 
65521
66267
  def validate(self):
@@ -65582,6 +66328,12 @@ class ModifyDBInstanceSpecRequest(TeaModel):
65582
66328
  zone_id: str = None,
65583
66329
  zone_id_slave_1: str = None,
65584
66330
  ):
66331
+ # Specifies whether to upgrade the major engine version of the instance. Valid values:
66332
+ #
66333
+ # * **true**\
66334
+ # * **false** (default)
66335
+ #
66336
+ # >When you upgrade the major engine version of an ApsaraDB RDS for SQL Server instance, set this parameter to true. When you upgrade the major engine version, you must also specify required parameters such as DBInstanceId, EngineVersion, DBInstanceClass, and Category, and optional parameters such as ZoneId, ZoneIdSlave1, and VSwitchId.
65585
66337
  self.allow_major_version_upgrade = allow_major_version_upgrade
65586
66338
  # Specifies whether to use vouchers to offset fees. Valid values:
65587
66339
  #
@@ -65605,9 +66357,9 @@ class ModifyDBInstanceSpecRequest(TeaModel):
65605
66357
  # * **serverless_standard**: RDS High-availability Edition. This edition is available only for serverless instances that run MySQL and PostgreSQL.
65606
66358
  # * **serverless_ha**: RDS High-availability Edition for ApsaraDB RDS for SQL Server.
65607
66359
  #
65608
- # **\
65609
66360
  #
65610
- # **Note** If you set the **EngineVersion** parameter to an SQL Server version number, you must also specify this parameter.
66361
+ #
66362
+ # > If you set the **EngineVersion** parameter to an SQL Server version number, you must also specify this parameter.
65611
66363
  self.category = category
65612
66364
  # A reserved parameter.
65613
66365
  self.cold_data_enabled = cold_data_enabled
@@ -65644,15 +66396,15 @@ class ModifyDBInstanceSpecRequest(TeaModel):
65644
66396
  # * **Up** (default): upgrades a subscription instance, or upgrades or downgrades a pay-as-you-go instance.
65645
66397
  # * **Down**: downgrades a subscription instance.
65646
66398
  # * **TempUpgrade**: performs auto scaling on a subscription instance that runs SQL Server. This value is required for auto scaling.
65647
- # * **Serverless**: modifies the auto scaling settings of a serverless instance. This value is required if you want to modify the auto scaling settings of a serverless instance.
66399
+ # * **Serverless**: modifies the auto scaling settings of a serverless instance.
65648
66400
  #
65649
- # > If you specify only **DBInstanceStorageType**, you can leave Direction empty. For example, if you want to change only the storage type of the instance from standard SSD to ESSD, you do not need to specify Direction.
66401
+ # > If you specify only **DBInstanceStorageType**, you can leave Direction empty. For example, if you want to change only the storage type of the instance from standard SSD to Enterprise SSD (ESSD), you do not need to specify Direction.
65650
66402
  self.direction = direction
65651
66403
  # The effective time. Valid values:
65652
66404
  #
65653
66405
  # * **Immediate** (default): The effective time immediately takes effect.
65654
66406
  # * **MaintainTime**: The effective time is within the maintenance window. For more information, see ModifyDBInstanceMaintainTime.
65655
- # * **ScheduleTime**: The effective time takes effect at the point in time that you specify. The schedule time must be a specific point in time that is 12 hours later than the current time. In this case, EffectiveTime is calculated by using the following formula: EffectiveTime = ScheduleTime + SwitchTime.
66407
+ # * **ScheduleTime**: The effective time takes effect at the point in time that you specify. The value of ScheduleTime must be a specific point in time that is 12 hours later than the current time. In this case, The value of EffectiveTime is calculated by using the following formula: EffectiveTime = ScheduleTime + SwitchTime.
65656
66408
  self.effective_time = effective_time
65657
66409
  # The database engine version of the instance.
65658
66410
  #
@@ -65701,6 +66453,12 @@ class ModifyDBInstanceSpecRequest(TeaModel):
65701
66453
  self.target_minor_version = target_minor_version
65702
66454
  # The ID of the order.
65703
66455
  self.used_time = used_time
66456
+ # The vSwitch ID. The vSwitch must belong to the zone that is specified by **ZoneId**.
66457
+ #
66458
+ # * If you set **InstanceNetworkType** to **VPC**, you must also specify this parameter.
66459
+ # * If you specify ZoneSlaveId1, you must specify the IDs of two vSwitches for this parameter and separate the IDs with a comma (,).
66460
+ #
66461
+ # > When you upgrade the major engine version, if you want to specify a vSwitch or change the vSwitch for the RDS instance, you must also specify this parameter.
65704
66462
  self.v_switch_id = v_switch_id
65705
66463
  # The RDS edition of the instance. Valid values:
65706
66464
  #
@@ -65711,6 +66469,9 @@ class ModifyDBInstanceSpecRequest(TeaModel):
65711
66469
  #
65712
66470
  # > If you set **EngineVersion** to an SQL Server version number, you must also specify this parameter.
65713
66471
  self.zone_id = zone_id
66472
+ # The zone ID of the secondary instance. If you set this parameter to the same value as the **ZoneId** parameter, the single-zone deployment method is used. If you set this parameter to a different value from the **ZoneId** parameter, the multi-zone deployment method is used.
66473
+ #
66474
+ # > If you must specify a secondary zone or change the secondary zone to upgrade the major engine version of an ApsaraDB RDS for SQL Server instance, you must also specify this parameter.
65714
66475
  self.zone_id_slave_1 = zone_id_slave_1
65715
66476
 
65716
66477
  def validate(self):
@@ -65875,6 +66636,12 @@ class ModifyDBInstanceSpecShrinkRequest(TeaModel):
65875
66636
  zone_id: str = None,
65876
66637
  zone_id_slave_1: str = None,
65877
66638
  ):
66639
+ # Specifies whether to upgrade the major engine version of the instance. Valid values:
66640
+ #
66641
+ # * **true**\
66642
+ # * **false** (default)
66643
+ #
66644
+ # >When you upgrade the major engine version of an ApsaraDB RDS for SQL Server instance, set this parameter to true. When you upgrade the major engine version, you must also specify required parameters such as DBInstanceId, EngineVersion, DBInstanceClass, and Category, and optional parameters such as ZoneId, ZoneIdSlave1, and VSwitchId.
65878
66645
  self.allow_major_version_upgrade = allow_major_version_upgrade
65879
66646
  # Specifies whether to use vouchers to offset fees. Valid values:
65880
66647
  #
@@ -65898,9 +66665,9 @@ class ModifyDBInstanceSpecShrinkRequest(TeaModel):
65898
66665
  # * **serverless_standard**: RDS High-availability Edition. This edition is available only for serverless instances that run MySQL and PostgreSQL.
65899
66666
  # * **serverless_ha**: RDS High-availability Edition for ApsaraDB RDS for SQL Server.
65900
66667
  #
65901
- # **\
65902
66668
  #
65903
- # **Note** If you set the **EngineVersion** parameter to an SQL Server version number, you must also specify this parameter.
66669
+ #
66670
+ # > If you set the **EngineVersion** parameter to an SQL Server version number, you must also specify this parameter.
65904
66671
  self.category = category
65905
66672
  # A reserved parameter.
65906
66673
  self.cold_data_enabled = cold_data_enabled
@@ -65937,15 +66704,15 @@ class ModifyDBInstanceSpecShrinkRequest(TeaModel):
65937
66704
  # * **Up** (default): upgrades a subscription instance, or upgrades or downgrades a pay-as-you-go instance.
65938
66705
  # * **Down**: downgrades a subscription instance.
65939
66706
  # * **TempUpgrade**: performs auto scaling on a subscription instance that runs SQL Server. This value is required for auto scaling.
65940
- # * **Serverless**: modifies the auto scaling settings of a serverless instance. This value is required if you want to modify the auto scaling settings of a serverless instance.
66707
+ # * **Serverless**: modifies the auto scaling settings of a serverless instance.
65941
66708
  #
65942
- # > If you specify only **DBInstanceStorageType**, you can leave Direction empty. For example, if you want to change only the storage type of the instance from standard SSD to ESSD, you do not need to specify Direction.
66709
+ # > If you specify only **DBInstanceStorageType**, you can leave Direction empty. For example, if you want to change only the storage type of the instance from standard SSD to Enterprise SSD (ESSD), you do not need to specify Direction.
65943
66710
  self.direction = direction
65944
66711
  # The effective time. Valid values:
65945
66712
  #
65946
66713
  # * **Immediate** (default): The effective time immediately takes effect.
65947
66714
  # * **MaintainTime**: The effective time is within the maintenance window. For more information, see ModifyDBInstanceMaintainTime.
65948
- # * **ScheduleTime**: The effective time takes effect at the point in time that you specify. The schedule time must be a specific point in time that is 12 hours later than the current time. In this case, EffectiveTime is calculated by using the following formula: EffectiveTime = ScheduleTime + SwitchTime.
66715
+ # * **ScheduleTime**: The effective time takes effect at the point in time that you specify. The value of ScheduleTime must be a specific point in time that is 12 hours later than the current time. In this case, The value of EffectiveTime is calculated by using the following formula: EffectiveTime = ScheduleTime + SwitchTime.
65949
66716
  self.effective_time = effective_time
65950
66717
  # The database engine version of the instance.
65951
66718
  #
@@ -65994,6 +66761,12 @@ class ModifyDBInstanceSpecShrinkRequest(TeaModel):
65994
66761
  self.target_minor_version = target_minor_version
65995
66762
  # The ID of the order.
65996
66763
  self.used_time = used_time
66764
+ # The vSwitch ID. The vSwitch must belong to the zone that is specified by **ZoneId**.
66765
+ #
66766
+ # * If you set **InstanceNetworkType** to **VPC**, you must also specify this parameter.
66767
+ # * If you specify ZoneSlaveId1, you must specify the IDs of two vSwitches for this parameter and separate the IDs with a comma (,).
66768
+ #
66769
+ # > When you upgrade the major engine version, if you want to specify a vSwitch or change the vSwitch for the RDS instance, you must also specify this parameter.
65997
66770
  self.v_switch_id = v_switch_id
65998
66771
  # The RDS edition of the instance. Valid values:
65999
66772
  #
@@ -66004,6 +66777,9 @@ class ModifyDBInstanceSpecShrinkRequest(TeaModel):
66004
66777
  #
66005
66778
  # > If you set **EngineVersion** to an SQL Server version number, you must also specify this parameter.
66006
66779
  self.zone_id = zone_id
66780
+ # The zone ID of the secondary instance. If you set this parameter to the same value as the **ZoneId** parameter, the single-zone deployment method is used. If you set this parameter to a different value from the **ZoneId** parameter, the multi-zone deployment method is used.
66781
+ #
66782
+ # > If you must specify a secondary zone or change the secondary zone to upgrade the major engine version of an ApsaraDB RDS for SQL Server instance, you must also specify this parameter.
66007
66783
  self.zone_id_slave_1 = zone_id_slave_1
66008
66784
 
66009
66785
  def validate(self):
@@ -66828,6 +67604,45 @@ class ModifyDBNodeResponse(TeaModel):
66828
67604
  return self
66829
67605
 
66830
67606
 
67607
+ class ModifyDBProxyRequestDBProxyNodes(TeaModel):
67608
+ def __init__(
67609
+ self,
67610
+ cpu_cores: str = None,
67611
+ node_counts: str = None,
67612
+ zone_id: str = None,
67613
+ ):
67614
+ self.cpu_cores = cpu_cores
67615
+ self.node_counts = node_counts
67616
+ self.zone_id = zone_id
67617
+
67618
+ def validate(self):
67619
+ pass
67620
+
67621
+ def to_map(self):
67622
+ _map = super().to_map()
67623
+ if _map is not None:
67624
+ return _map
67625
+
67626
+ result = dict()
67627
+ if self.cpu_cores is not None:
67628
+ result['cpuCores'] = self.cpu_cores
67629
+ if self.node_counts is not None:
67630
+ result['nodeCounts'] = self.node_counts
67631
+ if self.zone_id is not None:
67632
+ result['zoneId'] = self.zone_id
67633
+ return result
67634
+
67635
+ def from_map(self, m: dict = None):
67636
+ m = m or dict()
67637
+ if m.get('cpuCores') is not None:
67638
+ self.cpu_cores = m.get('cpuCores')
67639
+ if m.get('nodeCounts') is not None:
67640
+ self.node_counts = m.get('nodeCounts')
67641
+ if m.get('zoneId') is not None:
67642
+ self.zone_id = m.get('zoneId')
67643
+ return self
67644
+
67645
+
66831
67646
  class ModifyDBProxyRequest(TeaModel):
66832
67647
  def __init__(
66833
67648
  self,
@@ -66836,6 +67651,7 @@ class ModifyDBProxyRequest(TeaModel):
66836
67651
  dbproxy_engine_type: str = None,
66837
67652
  dbproxy_instance_num: str = None,
66838
67653
  dbproxy_instance_type: str = None,
67654
+ dbproxy_nodes: List[ModifyDBProxyRequestDBProxyNodes] = None,
66839
67655
  instance_network_type: str = None,
66840
67656
  owner_id: int = None,
66841
67657
  persistent_connection_status: str = None,
@@ -66865,6 +67681,158 @@ class ModifyDBProxyRequest(TeaModel):
66865
67681
  self.dbproxy_instance_num = dbproxy_instance_num
66866
67682
  # This parameter is reserved. You do not need to specify this parameter.
66867
67683
  self.dbproxy_instance_type = dbproxy_instance_type
67684
+ self.dbproxy_nodes = dbproxy_nodes
67685
+ # The network type of the instance. Set the value to **VPC**.
67686
+ #
67687
+ # > This parameter is required if you enable the database proxy feature for an ApsaraDB RDS for MySQL instance that uses cloud disks or an ApsaraDB RDS for PostgreSQL instance.
67688
+ self.instance_network_type = instance_network_type
67689
+ self.owner_id = owner_id
67690
+ # Whether to enable connection keep. Valid values:
67691
+ #
67692
+ # - Enabled: enables connection keeping
67693
+ # - Disabled: disables connection hold
67694
+ #
67695
+ # > - This parameter is supported only for an ApsaraDB RDS for MySQL.
67696
+ # > - When you modify the connection persistence state, the value of **ConfigDBProxyService** is modify.
67697
+ self.persistent_connection_status = persistent_connection_status
67698
+ # The region ID. You can call the DescribeRegions operation to query the most recent region list.
67699
+ self.region_id = region_id
67700
+ # The resource group ID.
67701
+ self.resource_group_id = resource_group_id
67702
+ self.resource_owner_account = resource_owner_account
67703
+ self.resource_owner_id = resource_owner_id
67704
+ # The ID of the virtual private cloud (VPC) to which the instance belongs. You can call the DescribeDBInstanceAttribute operation to query the VPC ID.
67705
+ #
67706
+ # > This parameter is required if you enable the database proxy feature for an ApsaraDB RDS for MySQL instance that uses cloud disks or an ApsaraDB RDS for PostgreSQL instance.
67707
+ self.vpcid = vpcid
67708
+ # The vSwitch ID of the instance. You can call the DescribeDBInstanceAttribute operation to query the vSwitch ID.
67709
+ #
67710
+ # > This parameter is required if you enable the database proxy feature for an ApsaraDB RDS for MySQL instance that uses cloud disks or an ApsaraDB RDS for PostgreSQL instance.
67711
+ self.v_switch_id = v_switch_id
67712
+
67713
+ def validate(self):
67714
+ if self.dbproxy_nodes:
67715
+ for k in self.dbproxy_nodes:
67716
+ if k:
67717
+ k.validate()
67718
+
67719
+ def to_map(self):
67720
+ _map = super().to_map()
67721
+ if _map is not None:
67722
+ return _map
67723
+
67724
+ result = dict()
67725
+ if self.config_dbproxy_service is not None:
67726
+ result['ConfigDBProxyService'] = self.config_dbproxy_service
67727
+ if self.dbinstance_id is not None:
67728
+ result['DBInstanceId'] = self.dbinstance_id
67729
+ if self.dbproxy_engine_type is not None:
67730
+ result['DBProxyEngineType'] = self.dbproxy_engine_type
67731
+ if self.dbproxy_instance_num is not None:
67732
+ result['DBProxyInstanceNum'] = self.dbproxy_instance_num
67733
+ if self.dbproxy_instance_type is not None:
67734
+ result['DBProxyInstanceType'] = self.dbproxy_instance_type
67735
+ result['DBProxyNodes'] = []
67736
+ if self.dbproxy_nodes is not None:
67737
+ for k in self.dbproxy_nodes:
67738
+ result['DBProxyNodes'].append(k.to_map() if k else None)
67739
+ if self.instance_network_type is not None:
67740
+ result['InstanceNetworkType'] = self.instance_network_type
67741
+ if self.owner_id is not None:
67742
+ result['OwnerId'] = self.owner_id
67743
+ if self.persistent_connection_status is not None:
67744
+ result['PersistentConnectionStatus'] = self.persistent_connection_status
67745
+ if self.region_id is not None:
67746
+ result['RegionId'] = self.region_id
67747
+ if self.resource_group_id is not None:
67748
+ result['ResourceGroupId'] = self.resource_group_id
67749
+ if self.resource_owner_account is not None:
67750
+ result['ResourceOwnerAccount'] = self.resource_owner_account
67751
+ if self.resource_owner_id is not None:
67752
+ result['ResourceOwnerId'] = self.resource_owner_id
67753
+ if self.vpcid is not None:
67754
+ result['VPCId'] = self.vpcid
67755
+ if self.v_switch_id is not None:
67756
+ result['VSwitchId'] = self.v_switch_id
67757
+ return result
67758
+
67759
+ def from_map(self, m: dict = None):
67760
+ m = m or dict()
67761
+ if m.get('ConfigDBProxyService') is not None:
67762
+ self.config_dbproxy_service = m.get('ConfigDBProxyService')
67763
+ if m.get('DBInstanceId') is not None:
67764
+ self.dbinstance_id = m.get('DBInstanceId')
67765
+ if m.get('DBProxyEngineType') is not None:
67766
+ self.dbproxy_engine_type = m.get('DBProxyEngineType')
67767
+ if m.get('DBProxyInstanceNum') is not None:
67768
+ self.dbproxy_instance_num = m.get('DBProxyInstanceNum')
67769
+ if m.get('DBProxyInstanceType') is not None:
67770
+ self.dbproxy_instance_type = m.get('DBProxyInstanceType')
67771
+ self.dbproxy_nodes = []
67772
+ if m.get('DBProxyNodes') is not None:
67773
+ for k in m.get('DBProxyNodes'):
67774
+ temp_model = ModifyDBProxyRequestDBProxyNodes()
67775
+ self.dbproxy_nodes.append(temp_model.from_map(k))
67776
+ if m.get('InstanceNetworkType') is not None:
67777
+ self.instance_network_type = m.get('InstanceNetworkType')
67778
+ if m.get('OwnerId') is not None:
67779
+ self.owner_id = m.get('OwnerId')
67780
+ if m.get('PersistentConnectionStatus') is not None:
67781
+ self.persistent_connection_status = m.get('PersistentConnectionStatus')
67782
+ if m.get('RegionId') is not None:
67783
+ self.region_id = m.get('RegionId')
67784
+ if m.get('ResourceGroupId') is not None:
67785
+ self.resource_group_id = m.get('ResourceGroupId')
67786
+ if m.get('ResourceOwnerAccount') is not None:
67787
+ self.resource_owner_account = m.get('ResourceOwnerAccount')
67788
+ if m.get('ResourceOwnerId') is not None:
67789
+ self.resource_owner_id = m.get('ResourceOwnerId')
67790
+ if m.get('VPCId') is not None:
67791
+ self.vpcid = m.get('VPCId')
67792
+ if m.get('VSwitchId') is not None:
67793
+ self.v_switch_id = m.get('VSwitchId')
67794
+ return self
67795
+
67796
+
67797
+ class ModifyDBProxyShrinkRequest(TeaModel):
67798
+ def __init__(
67799
+ self,
67800
+ config_dbproxy_service: str = None,
67801
+ dbinstance_id: str = None,
67802
+ dbproxy_engine_type: str = None,
67803
+ dbproxy_instance_num: str = None,
67804
+ dbproxy_instance_type: str = None,
67805
+ dbproxy_nodes_shrink: str = None,
67806
+ instance_network_type: str = None,
67807
+ owner_id: int = None,
67808
+ persistent_connection_status: str = None,
67809
+ region_id: str = None,
67810
+ resource_group_id: str = None,
67811
+ resource_owner_account: str = None,
67812
+ resource_owner_id: int = None,
67813
+ vpcid: str = None,
67814
+ v_switch_id: str = None,
67815
+ ):
67816
+ # Specifies whether to enable or disable the database proxy feature. Valid values:
67817
+ #
67818
+ # * **Startup**: enables the database proxy feature.
67819
+ # * **Shutdown**: disables the database proxy feature.
67820
+ #
67821
+ # This parameter is required.
67822
+ self.config_dbproxy_service = config_dbproxy_service
67823
+ # The instance ID. You can call the DescribeDBInstances operation to query the instance ID.
67824
+ #
67825
+ # This parameter is required.
67826
+ self.dbinstance_id = dbinstance_id
67827
+ # A reserved parameter. You do not need to specify this parameter.
67828
+ self.dbproxy_engine_type = dbproxy_engine_type
67829
+ # The number of proxy instances that are enabled. Valid values: **1** to **16**. Default value: **1**.
67830
+ #
67831
+ # > The capability of the database proxy to process requests increases with the number of proxy instances that are enabled. You can monitor the load on the instance and specify an appropriate number of proxy instances based on the load monitoring data.
67832
+ self.dbproxy_instance_num = dbproxy_instance_num
67833
+ # This parameter is reserved. You do not need to specify this parameter.
67834
+ self.dbproxy_instance_type = dbproxy_instance_type
67835
+ self.dbproxy_nodes_shrink = dbproxy_nodes_shrink
66868
67836
  # The network type of the instance. Set the value to **VPC**.
66869
67837
  #
66870
67838
  # > This parameter is required if you enable the database proxy feature for an ApsaraDB RDS for MySQL instance that uses cloud disks or an ApsaraDB RDS for PostgreSQL instance.
@@ -66912,6 +67880,8 @@ class ModifyDBProxyRequest(TeaModel):
66912
67880
  result['DBProxyInstanceNum'] = self.dbproxy_instance_num
66913
67881
  if self.dbproxy_instance_type is not None:
66914
67882
  result['DBProxyInstanceType'] = self.dbproxy_instance_type
67883
+ if self.dbproxy_nodes_shrink is not None:
67884
+ result['DBProxyNodes'] = self.dbproxy_nodes_shrink
66915
67885
  if self.instance_network_type is not None:
66916
67886
  result['InstanceNetworkType'] = self.instance_network_type
66917
67887
  if self.owner_id is not None:
@@ -66944,6 +67914,8 @@ class ModifyDBProxyRequest(TeaModel):
66944
67914
  self.dbproxy_instance_num = m.get('DBProxyInstanceNum')
66945
67915
  if m.get('DBProxyInstanceType') is not None:
66946
67916
  self.dbproxy_instance_type = m.get('DBProxyInstanceType')
67917
+ if m.get('DBProxyNodes') is not None:
67918
+ self.dbproxy_nodes_shrink = m.get('DBProxyNodes')
66947
67919
  if m.get('InstanceNetworkType') is not None:
66948
67920
  self.instance_network_type = m.get('InstanceNetworkType')
66949
67921
  if m.get('OwnerId') is not None:
@@ -67045,6 +68017,8 @@ class ModifyDBProxyEndpointRequest(TeaModel):
67045
68017
  db_endpoint_operator: str = None,
67046
68018
  db_endpoint_read_write_mode: str = None,
67047
68019
  db_endpoint_type: str = None,
68020
+ effective_specific_time: str = None,
68021
+ effective_time: str = None,
67048
68022
  owner_id: int = None,
67049
68023
  read_only_instance_distribution_type: str = None,
67050
68024
  read_only_instance_max_delay_time: str = None,
@@ -67052,6 +68026,7 @@ class ModifyDBProxyEndpointRequest(TeaModel):
67052
68026
  region_id: str = None,
67053
68027
  resource_owner_account: str = None,
67054
68028
  resource_owner_id: int = None,
68029
+ v_switch_id: str = None,
67055
68030
  ):
67056
68031
  # The features that you want to enable for the proxy endpoint. If you specify more than one feature, separate the features with semicolons (;). Format: `Feature 1:Status;Feature 2:Status;...`. Do not add a semicolon (;) at the end of the value.
67057
68032
  #
@@ -67097,6 +68072,8 @@ class ModifyDBProxyEndpointRequest(TeaModel):
67097
68072
  self.db_endpoint_read_write_mode = db_endpoint_read_write_mode
67098
68073
  # The type of the proxy terminal. This is a reserved parameter. You do not need to specify this parameter.
67099
68074
  self.db_endpoint_type = db_endpoint_type
68075
+ self.effective_specific_time = effective_specific_time
68076
+ self.effective_time = effective_time
67100
68077
  self.owner_id = owner_id
67101
68078
  # The policy that is used to allocate read weights. Valid values:
67102
68079
  #
@@ -67125,6 +68102,7 @@ class ModifyDBProxyEndpointRequest(TeaModel):
67125
68102
  self.region_id = region_id
67126
68103
  self.resource_owner_account = resource_owner_account
67127
68104
  self.resource_owner_id = resource_owner_id
68105
+ self.v_switch_id = v_switch_id
67128
68106
 
67129
68107
  def validate(self):
67130
68108
  pass
@@ -67151,6 +68129,10 @@ class ModifyDBProxyEndpointRequest(TeaModel):
67151
68129
  result['DbEndpointReadWriteMode'] = self.db_endpoint_read_write_mode
67152
68130
  if self.db_endpoint_type is not None:
67153
68131
  result['DbEndpointType'] = self.db_endpoint_type
68132
+ if self.effective_specific_time is not None:
68133
+ result['EffectiveSpecificTime'] = self.effective_specific_time
68134
+ if self.effective_time is not None:
68135
+ result['EffectiveTime'] = self.effective_time
67154
68136
  if self.owner_id is not None:
67155
68137
  result['OwnerId'] = self.owner_id
67156
68138
  if self.read_only_instance_distribution_type is not None:
@@ -67165,6 +68147,8 @@ class ModifyDBProxyEndpointRequest(TeaModel):
67165
68147
  result['ResourceOwnerAccount'] = self.resource_owner_account
67166
68148
  if self.resource_owner_id is not None:
67167
68149
  result['ResourceOwnerId'] = self.resource_owner_id
68150
+ if self.v_switch_id is not None:
68151
+ result['VSwitchId'] = self.v_switch_id
67168
68152
  return result
67169
68153
 
67170
68154
  def from_map(self, m: dict = None):
@@ -67185,6 +68169,10 @@ class ModifyDBProxyEndpointRequest(TeaModel):
67185
68169
  self.db_endpoint_read_write_mode = m.get('DbEndpointReadWriteMode')
67186
68170
  if m.get('DbEndpointType') is not None:
67187
68171
  self.db_endpoint_type = m.get('DbEndpointType')
68172
+ if m.get('EffectiveSpecificTime') is not None:
68173
+ self.effective_specific_time = m.get('EffectiveSpecificTime')
68174
+ if m.get('EffectiveTime') is not None:
68175
+ self.effective_time = m.get('EffectiveTime')
67188
68176
  if m.get('OwnerId') is not None:
67189
68177
  self.owner_id = m.get('OwnerId')
67190
68178
  if m.get('ReadOnlyInstanceDistributionType') is not None:
@@ -67199,6 +68187,8 @@ class ModifyDBProxyEndpointRequest(TeaModel):
67199
68187
  self.resource_owner_account = m.get('ResourceOwnerAccount')
67200
68188
  if m.get('ResourceOwnerId') is not None:
67201
68189
  self.resource_owner_id = m.get('ResourceOwnerId')
68190
+ if m.get('VSwitchId') is not None:
68191
+ self.v_switch_id = m.get('VSwitchId')
67202
68192
  return self
67203
68193
 
67204
68194
 
@@ -67437,6 +68427,78 @@ class ModifyDBProxyEndpointAddressResponse(TeaModel):
67437
68427
  return self
67438
68428
 
67439
68429
 
68430
+ class ModifyDBProxyInstanceRequestDBProxyNodes(TeaModel):
68431
+ def __init__(
68432
+ self,
68433
+ cpu_cores: str = None,
68434
+ node_counts: str = None,
68435
+ zone_id: str = None,
68436
+ ):
68437
+ self.cpu_cores = cpu_cores
68438
+ self.node_counts = node_counts
68439
+ self.zone_id = zone_id
68440
+
68441
+ def validate(self):
68442
+ pass
68443
+
68444
+ def to_map(self):
68445
+ _map = super().to_map()
68446
+ if _map is not None:
68447
+ return _map
68448
+
68449
+ result = dict()
68450
+ if self.cpu_cores is not None:
68451
+ result['cpuCores'] = self.cpu_cores
68452
+ if self.node_counts is not None:
68453
+ result['nodeCounts'] = self.node_counts
68454
+ if self.zone_id is not None:
68455
+ result['zoneId'] = self.zone_id
68456
+ return result
68457
+
68458
+ def from_map(self, m: dict = None):
68459
+ m = m or dict()
68460
+ if m.get('cpuCores') is not None:
68461
+ self.cpu_cores = m.get('cpuCores')
68462
+ if m.get('nodeCounts') is not None:
68463
+ self.node_counts = m.get('nodeCounts')
68464
+ if m.get('zoneId') is not None:
68465
+ self.zone_id = m.get('zoneId')
68466
+ return self
68467
+
68468
+
68469
+ class ModifyDBProxyInstanceRequestMigrateAZ(TeaModel):
68470
+ def __init__(
68471
+ self,
68472
+ db_proxy_endpoint_id: str = None,
68473
+ dest_vswitch_id: str = None,
68474
+ ):
68475
+ self.db_proxy_endpoint_id = db_proxy_endpoint_id
68476
+ self.dest_vswitch_id = dest_vswitch_id
68477
+
68478
+ def validate(self):
68479
+ pass
68480
+
68481
+ def to_map(self):
68482
+ _map = super().to_map()
68483
+ if _map is not None:
68484
+ return _map
68485
+
68486
+ result = dict()
68487
+ if self.db_proxy_endpoint_id is not None:
68488
+ result['dbProxyEndpointId'] = self.db_proxy_endpoint_id
68489
+ if self.dest_vswitch_id is not None:
68490
+ result['destVSwitchId'] = self.dest_vswitch_id
68491
+ return result
68492
+
68493
+ def from_map(self, m: dict = None):
68494
+ m = m or dict()
68495
+ if m.get('dbProxyEndpointId') is not None:
68496
+ self.db_proxy_endpoint_id = m.get('dbProxyEndpointId')
68497
+ if m.get('destVSwitchId') is not None:
68498
+ self.dest_vswitch_id = m.get('destVSwitchId')
68499
+ return self
68500
+
68501
+
67440
68502
  class ModifyDBProxyInstanceRequest(TeaModel):
67441
68503
  def __init__(
67442
68504
  self,
@@ -67444,8 +68506,155 @@ class ModifyDBProxyInstanceRequest(TeaModel):
67444
68506
  dbproxy_engine_type: str = None,
67445
68507
  dbproxy_instance_num: str = None,
67446
68508
  dbproxy_instance_type: str = None,
68509
+ dbproxy_nodes: List[ModifyDBProxyInstanceRequestDBProxyNodes] = None,
68510
+ effective_specific_time: str = None,
68511
+ effective_time: str = None,
68512
+ migrate_az: List[ModifyDBProxyInstanceRequestMigrateAZ] = None,
68513
+ owner_id: int = None,
68514
+ region_id: str = None,
68515
+ resource_owner_account: str = None,
68516
+ resource_owner_id: int = None,
68517
+ v_switch_ids: str = None,
68518
+ ):
68519
+ # The instance ID. You can call the DescribeDBInstances operation to query the instance ID.
68520
+ #
68521
+ # This parameter is required.
68522
+ self.dbinstance_id = dbinstance_id
68523
+ # A deprecated parameter. You do not need to specify this parameter.
68524
+ self.dbproxy_engine_type = dbproxy_engine_type
68525
+ # The number of database proxies. If you set this parameter to 0, the database proxy feature is disabled for the instance. Valid values: **1** to **16**.
68526
+ #
68527
+ # > The capability of the database proxy feature to process requests increases with the number of database proxies that are enabled. You can monitor the load on the instance and specify an appropriate number of database proxies based on the load monitoring data.
68528
+ #
68529
+ # This parameter is required.
68530
+ self.dbproxy_instance_num = dbproxy_instance_num
68531
+ # The database proxy type. Valid values:
68532
+ #
68533
+ # * **common**: general-purpose database proxy
68534
+ # * **exclusive** (default): dedicated database proxy
68535
+ #
68536
+ # This parameter is required.
68537
+ self.dbproxy_instance_type = dbproxy_instance_type
68538
+ self.dbproxy_nodes = dbproxy_nodes
68539
+ # The point in time that you want to specify. Specify the time in the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time must be in UTC.
68540
+ #
68541
+ # > If the **EffectiveTime** parameter is set to **SpecificTime**, you must specify this parameter.
68542
+ self.effective_specific_time = effective_specific_time
68543
+ # The effective time. Valid values:
68544
+ #
68545
+ # * **Immediate**: The effective time is immediate.
68546
+ # * **MaintainTime**: The effective time is within the maintenance window. For more information, see ModifyDBInstanceMaintainTime.
68547
+ # * **SpecificTime**: The effective time is a specified point in time.
68548
+ #
68549
+ # Default value: **MaintainTime**.
68550
+ self.effective_time = effective_time
68551
+ self.migrate_az = migrate_az
68552
+ self.owner_id = owner_id
68553
+ # The region ID. You can call the DescribeRegions operation to query the most recent region list.
68554
+ self.region_id = region_id
68555
+ self.resource_owner_account = resource_owner_account
68556
+ self.resource_owner_id = resource_owner_id
68557
+ # The ID of the vSwitch in the destination zone. You can call the [DescribeVSwitches](https://help.aliyun.com/document_detail/610431.html) operation to query existing vSwitches.
68558
+ #
68559
+ # > Only database proxies for ApsaraDB RDS for MySQL instances that use cloud disks can be migrated to different zones.
68560
+ self.v_switch_ids = v_switch_ids
68561
+
68562
+ def validate(self):
68563
+ if self.dbproxy_nodes:
68564
+ for k in self.dbproxy_nodes:
68565
+ if k:
68566
+ k.validate()
68567
+ if self.migrate_az:
68568
+ for k in self.migrate_az:
68569
+ if k:
68570
+ k.validate()
68571
+
68572
+ def to_map(self):
68573
+ _map = super().to_map()
68574
+ if _map is not None:
68575
+ return _map
68576
+
68577
+ result = dict()
68578
+ if self.dbinstance_id is not None:
68579
+ result['DBInstanceId'] = self.dbinstance_id
68580
+ if self.dbproxy_engine_type is not None:
68581
+ result['DBProxyEngineType'] = self.dbproxy_engine_type
68582
+ if self.dbproxy_instance_num is not None:
68583
+ result['DBProxyInstanceNum'] = self.dbproxy_instance_num
68584
+ if self.dbproxy_instance_type is not None:
68585
+ result['DBProxyInstanceType'] = self.dbproxy_instance_type
68586
+ result['DBProxyNodes'] = []
68587
+ if self.dbproxy_nodes is not None:
68588
+ for k in self.dbproxy_nodes:
68589
+ result['DBProxyNodes'].append(k.to_map() if k else None)
68590
+ if self.effective_specific_time is not None:
68591
+ result['EffectiveSpecificTime'] = self.effective_specific_time
68592
+ if self.effective_time is not None:
68593
+ result['EffectiveTime'] = self.effective_time
68594
+ result['MigrateAZ'] = []
68595
+ if self.migrate_az is not None:
68596
+ for k in self.migrate_az:
68597
+ result['MigrateAZ'].append(k.to_map() if k else None)
68598
+ if self.owner_id is not None:
68599
+ result['OwnerId'] = self.owner_id
68600
+ if self.region_id is not None:
68601
+ result['RegionId'] = self.region_id
68602
+ if self.resource_owner_account is not None:
68603
+ result['ResourceOwnerAccount'] = self.resource_owner_account
68604
+ if self.resource_owner_id is not None:
68605
+ result['ResourceOwnerId'] = self.resource_owner_id
68606
+ if self.v_switch_ids is not None:
68607
+ result['VSwitchIds'] = self.v_switch_ids
68608
+ return result
68609
+
68610
+ def from_map(self, m: dict = None):
68611
+ m = m or dict()
68612
+ if m.get('DBInstanceId') is not None:
68613
+ self.dbinstance_id = m.get('DBInstanceId')
68614
+ if m.get('DBProxyEngineType') is not None:
68615
+ self.dbproxy_engine_type = m.get('DBProxyEngineType')
68616
+ if m.get('DBProxyInstanceNum') is not None:
68617
+ self.dbproxy_instance_num = m.get('DBProxyInstanceNum')
68618
+ if m.get('DBProxyInstanceType') is not None:
68619
+ self.dbproxy_instance_type = m.get('DBProxyInstanceType')
68620
+ self.dbproxy_nodes = []
68621
+ if m.get('DBProxyNodes') is not None:
68622
+ for k in m.get('DBProxyNodes'):
68623
+ temp_model = ModifyDBProxyInstanceRequestDBProxyNodes()
68624
+ self.dbproxy_nodes.append(temp_model.from_map(k))
68625
+ if m.get('EffectiveSpecificTime') is not None:
68626
+ self.effective_specific_time = m.get('EffectiveSpecificTime')
68627
+ if m.get('EffectiveTime') is not None:
68628
+ self.effective_time = m.get('EffectiveTime')
68629
+ self.migrate_az = []
68630
+ if m.get('MigrateAZ') is not None:
68631
+ for k in m.get('MigrateAZ'):
68632
+ temp_model = ModifyDBProxyInstanceRequestMigrateAZ()
68633
+ self.migrate_az.append(temp_model.from_map(k))
68634
+ if m.get('OwnerId') is not None:
68635
+ self.owner_id = m.get('OwnerId')
68636
+ if m.get('RegionId') is not None:
68637
+ self.region_id = m.get('RegionId')
68638
+ if m.get('ResourceOwnerAccount') is not None:
68639
+ self.resource_owner_account = m.get('ResourceOwnerAccount')
68640
+ if m.get('ResourceOwnerId') is not None:
68641
+ self.resource_owner_id = m.get('ResourceOwnerId')
68642
+ if m.get('VSwitchIds') is not None:
68643
+ self.v_switch_ids = m.get('VSwitchIds')
68644
+ return self
68645
+
68646
+
68647
+ class ModifyDBProxyInstanceShrinkRequest(TeaModel):
68648
+ def __init__(
68649
+ self,
68650
+ dbinstance_id: str = None,
68651
+ dbproxy_engine_type: str = None,
68652
+ dbproxy_instance_num: str = None,
68653
+ dbproxy_instance_type: str = None,
68654
+ dbproxy_nodes_shrink: str = None,
67447
68655
  effective_specific_time: str = None,
67448
68656
  effective_time: str = None,
68657
+ migrate_azshrink: str = None,
67449
68658
  owner_id: int = None,
67450
68659
  region_id: str = None,
67451
68660
  resource_owner_account: str = None,
@@ -67471,6 +68680,7 @@ class ModifyDBProxyInstanceRequest(TeaModel):
67471
68680
  #
67472
68681
  # This parameter is required.
67473
68682
  self.dbproxy_instance_type = dbproxy_instance_type
68683
+ self.dbproxy_nodes_shrink = dbproxy_nodes_shrink
67474
68684
  # The point in time that you want to specify. Specify the time in the ISO 8601 standard in the *yyyy-MM-dd*T*HH:mm:ss*Z format. The time must be in UTC.
67475
68685
  #
67476
68686
  # > If the **EffectiveTime** parameter is set to **SpecificTime**, you must specify this parameter.
@@ -67483,6 +68693,7 @@ class ModifyDBProxyInstanceRequest(TeaModel):
67483
68693
  #
67484
68694
  # Default value: **MaintainTime**.
67485
68695
  self.effective_time = effective_time
68696
+ self.migrate_azshrink = migrate_azshrink
67486
68697
  self.owner_id = owner_id
67487
68698
  # The region ID. You can call the DescribeRegions operation to query the most recent region list.
67488
68699
  self.region_id = region_id
@@ -67510,10 +68721,14 @@ class ModifyDBProxyInstanceRequest(TeaModel):
67510
68721
  result['DBProxyInstanceNum'] = self.dbproxy_instance_num
67511
68722
  if self.dbproxy_instance_type is not None:
67512
68723
  result['DBProxyInstanceType'] = self.dbproxy_instance_type
68724
+ if self.dbproxy_nodes_shrink is not None:
68725
+ result['DBProxyNodes'] = self.dbproxy_nodes_shrink
67513
68726
  if self.effective_specific_time is not None:
67514
68727
  result['EffectiveSpecificTime'] = self.effective_specific_time
67515
68728
  if self.effective_time is not None:
67516
68729
  result['EffectiveTime'] = self.effective_time
68730
+ if self.migrate_azshrink is not None:
68731
+ result['MigrateAZ'] = self.migrate_azshrink
67517
68732
  if self.owner_id is not None:
67518
68733
  result['OwnerId'] = self.owner_id
67519
68734
  if self.region_id is not None:
@@ -67536,10 +68751,14 @@ class ModifyDBProxyInstanceRequest(TeaModel):
67536
68751
  self.dbproxy_instance_num = m.get('DBProxyInstanceNum')
67537
68752
  if m.get('DBProxyInstanceType') is not None:
67538
68753
  self.dbproxy_instance_type = m.get('DBProxyInstanceType')
68754
+ if m.get('DBProxyNodes') is not None:
68755
+ self.dbproxy_nodes_shrink = m.get('DBProxyNodes')
67539
68756
  if m.get('EffectiveSpecificTime') is not None:
67540
68757
  self.effective_specific_time = m.get('EffectiveSpecificTime')
67541
68758
  if m.get('EffectiveTime') is not None:
67542
68759
  self.effective_time = m.get('EffectiveTime')
68760
+ if m.get('MigrateAZ') is not None:
68761
+ self.migrate_azshrink = m.get('MigrateAZ')
67543
68762
  if m.get('OwnerId') is not None:
67544
68763
  self.owner_id = m.get('OwnerId')
67545
68764
  if m.get('RegionId') is not None:
@@ -69176,6 +70395,7 @@ class ModifyMaskingRulesRequest(TeaModel):
69176
70395
  enabled: str = None,
69177
70396
  masking_algo: str = None,
69178
70397
  owner_id: str = None,
70398
+ region_id: str = None,
69179
70399
  resource_owner_account: str = None,
69180
70400
  resource_owner_id: int = None,
69181
70401
  rule_config: ModifyMaskingRulesRequestRuleConfig = None,
@@ -69187,6 +70407,7 @@ class ModifyMaskingRulesRequest(TeaModel):
69187
70407
  self.enabled = enabled
69188
70408
  self.masking_algo = masking_algo
69189
70409
  self.owner_id = owner_id
70410
+ self.region_id = region_id
69190
70411
  self.resource_owner_account = resource_owner_account
69191
70412
  self.resource_owner_id = resource_owner_id
69192
70413
  self.rule_config = rule_config
@@ -69213,6 +70434,8 @@ class ModifyMaskingRulesRequest(TeaModel):
69213
70434
  result['MaskingAlgo'] = self.masking_algo
69214
70435
  if self.owner_id is not None:
69215
70436
  result['OwnerId'] = self.owner_id
70437
+ if self.region_id is not None:
70438
+ result['RegionId'] = self.region_id
69216
70439
  if self.resource_owner_account is not None:
69217
70440
  result['ResourceOwnerAccount'] = self.resource_owner_account
69218
70441
  if self.resource_owner_id is not None:
@@ -69235,6 +70458,8 @@ class ModifyMaskingRulesRequest(TeaModel):
69235
70458
  self.masking_algo = m.get('MaskingAlgo')
69236
70459
  if m.get('OwnerId') is not None:
69237
70460
  self.owner_id = m.get('OwnerId')
70461
+ if m.get('RegionId') is not None:
70462
+ self.region_id = m.get('RegionId')
69238
70463
  if m.get('ResourceOwnerAccount') is not None:
69239
70464
  self.resource_owner_account = m.get('ResourceOwnerAccount')
69240
70465
  if m.get('ResourceOwnerId') is not None:
@@ -69255,6 +70480,7 @@ class ModifyMaskingRulesShrinkRequest(TeaModel):
69255
70480
  enabled: str = None,
69256
70481
  masking_algo: str = None,
69257
70482
  owner_id: str = None,
70483
+ region_id: str = None,
69258
70484
  resource_owner_account: str = None,
69259
70485
  resource_owner_id: int = None,
69260
70486
  rule_config_shrink: str = None,
@@ -69266,6 +70492,7 @@ class ModifyMaskingRulesShrinkRequest(TeaModel):
69266
70492
  self.enabled = enabled
69267
70493
  self.masking_algo = masking_algo
69268
70494
  self.owner_id = owner_id
70495
+ self.region_id = region_id
69269
70496
  self.resource_owner_account = resource_owner_account
69270
70497
  self.resource_owner_id = resource_owner_id
69271
70498
  self.rule_config_shrink = rule_config_shrink
@@ -69291,6 +70518,8 @@ class ModifyMaskingRulesShrinkRequest(TeaModel):
69291
70518
  result['MaskingAlgo'] = self.masking_algo
69292
70519
  if self.owner_id is not None:
69293
70520
  result['OwnerId'] = self.owner_id
70521
+ if self.region_id is not None:
70522
+ result['RegionId'] = self.region_id
69294
70523
  if self.resource_owner_account is not None:
69295
70524
  result['ResourceOwnerAccount'] = self.resource_owner_account
69296
70525
  if self.resource_owner_id is not None:
@@ -69313,6 +70542,8 @@ class ModifyMaskingRulesShrinkRequest(TeaModel):
69313
70542
  self.masking_algo = m.get('MaskingAlgo')
69314
70543
  if m.get('OwnerId') is not None:
69315
70544
  self.owner_id = m.get('OwnerId')
70545
+ if m.get('RegionId') is not None:
70546
+ self.region_id = m.get('RegionId')
69316
70547
  if m.get('ResourceOwnerAccount') is not None:
69317
70548
  self.resource_owner_account = m.get('ResourceOwnerAccount')
69318
70549
  if m.get('ResourceOwnerId') is not None:
@@ -70064,11 +71295,30 @@ class ModifyRCInstanceRequest(TeaModel):
70064
71295
  instance_type: str = None,
70065
71296
  region_id: str = None,
70066
71297
  ):
71298
+ # Specifies whether to enable the automatic payment feature. Valid values:
71299
+ #
71300
+ # * **true** (default): enables the feature. You must make sure that your account balance is sufficient.
71301
+ # * **false**: disables the feature. An unpaid order is generated.
71302
+ #
71303
+ # > If your account balance is insufficient, you can set AutoPay to false. In this case, an unpaid order is generated. You can complete the payment in the Expenses and Costs console.
70067
71304
  self.auto_pay = auto_pay
71305
+ # The type of the change that you want to perform on the instance. Valid values:
71306
+ #
71307
+ # > This parameter is optional. The system can automatically determine whether the instance change is an upgrade or a downgrade. If you want to specify this parameter, take note of the following items:
71308
+ #
71309
+ # * **Upgrade** (default): upgrades the instance type. Make sure that your account balance is sufficient.
71310
+ # * **Down**: downgrades the instance type. If the new instance type specified by InstanceType has lower specifications than the current instance type, set Direction to Down.
70068
71311
  self.direction = direction
71312
+ # Specifies whether to perform only a dry run, without performing the actual request. Valid values:
71313
+ #
71314
+ # * **true**: performs only a dry run. The system checks the request for potential issues, including missing parameter values, incorrect request syntax, service limits, and resource inventory.
71315
+ # * **false**: performs a dry run and performs the actual request. If the request passes the dry run, the operation is performed.
70069
71316
  self.dry_run = dry_run
71317
+ # The instance ID.
70070
71318
  self.instance_id = instance_id
71319
+ # The new instance type. For more information about the instance types that are supported by RDS Custom instances, see [Instance types of RDS Custom instances](https://help.aliyun.com/document_detail/2844823.html).
70071
71320
  self.instance_type = instance_type
71321
+ # The region ID of the instance.
70072
71322
  self.region_id = region_id
70073
71323
 
70074
71324
  def validate(self):
@@ -70117,7 +71367,9 @@ class ModifyRCInstanceResponseBody(TeaModel):
70117
71367
  order_id: int = None,
70118
71368
  request_id: str = None,
70119
71369
  ):
71370
+ # The order ID.
70120
71371
  self.order_id = order_id
71372
+ # The request ID.
70121
71373
  self.request_id = request_id
70122
71374
 
70123
71375
  def validate(self):
@@ -71425,7 +72677,7 @@ class ModifySecurityIpsRequest(TeaModel):
71425
72677
  # Default value: **Cover**.
71426
72678
  self.modify_mode = modify_mode
71427
72679
  self.resource_owner_id = resource_owner_id
71428
- # The type of the IP addresses in the IP address whitelist. Set the value to IPv4. IPv6 is not supported.
72680
+ # The IP address type. The value is fixed as IPv4.
71429
72681
  self.security_iptype = security_iptype
71430
72682
  # The IP addresses in an IP address whitelist. Separate multiple IP addresses with commas (,). Each IP address in the IP address whitelist must be unique. The entries in the IP address whitelist must be in one of the following formats:
71431
72683
  #
@@ -73056,10 +74308,23 @@ class RebootRCInstanceRequest(TeaModel):
73056
74308
  instance_id: str = None,
73057
74309
  region_id: str = None,
73058
74310
  ):
74311
+ # Specifies whether to perform only a dry run, without performing the actual request. Valid values:
74312
+ #
74313
+ # * **true**: performs only a dry run. The system checks the request for potential issues, including missing parameter values, incorrect request syntax, service limits, and insufficient inventory errors. If the request passes the dry run, the DryRunOperation error code is returned. Otherwise, an error message is returned.
74314
+ # * **false**: performs a dry run and performs the actual request. If the request passes the dry run, the instance is restarted.
74315
+ #
74316
+ # Default value: false
73059
74317
  self.dry_run = dry_run
74318
+ # Specifies whether to forcefully stop the instance before you restart the instance Valid values:
74319
+ #
74320
+ # * **true**: forcefully stops the instance. This operation is equivalent to the typical power-off operation. Cache data that is not written to storage devices on the instance is lost.
74321
+ # * **false** (default): normally stops the instance.
73060
74322
  self.force_stop = force_stop
74323
+ # The instance ID.
74324
+ #
73061
74325
  # This parameter is required.
73062
74326
  self.instance_id = instance_id
74327
+ # The region ID.
73063
74328
  self.region_id = region_id
73064
74329
 
73065
74330
  def validate(self):
@@ -73099,6 +74364,7 @@ class RebootRCInstanceResponseBody(TeaModel):
73099
74364
  self,
73100
74365
  request_id: str = None,
73101
74366
  ):
74367
+ # The request ID.
73102
74368
  self.request_id = request_id
73103
74369
 
73104
74370
  def validate(self):
@@ -74932,11 +76198,28 @@ class ResizeRCInstanceDiskRequest(TeaModel):
74932
76198
  region_id: str = None,
74933
76199
  type: str = None,
74934
76200
  ):
76201
+ # Specifies whether to enable the automatic payment feature for the instance. Valid values:
76202
+ #
76203
+ # * **true** (default): enables the feature. Make sure that your account balance is sufficient.
76204
+ # * **false**: disables the feature. An unpaid order is generated.
76205
+ #
76206
+ # > If your account balance is insufficient, you can set AutoPay to false. In this case, an unpaid order is generated. You can complete the payment in the Expenses and Costs console.
74935
76207
  self.auto_pay = auto_pay
76208
+ # Specifies whether to perform only a dry run, without performing the actual request. Valid values:
76209
+ #
76210
+ # * **true**: performs only a dry run. The system checks the request for potential issues, including missing parameter values, incorrect request syntax, service limits, and insufficient inventory errors.
76211
+ # * **false**: performs a dry run and performs the actual request. If the request passes the dry run, the instance is created.
74936
76212
  self.dry_run = dry_run
76213
+ # The instance ID.
74937
76214
  self.instance_id = instance_id
76215
+ # The new disk size. Unit: GiB.
74938
76216
  self.new_size = new_size
76217
+ # The region ID of the instance.
74939
76218
  self.region_id = region_id
76219
+ # The method that you want to use to resize the disk. Valid values:
76220
+ #
76221
+ # * **offline** (default): resizes disks offline. After you resize a disk offline, you must restart the instance for the resizing operation to take effect.
76222
+ # * **online**: resizes disks online. After you resize a disk online, the resizing operation takes effect immediately and you do not need to restart the instance.
74940
76223
  self.type = type
74941
76224
 
74942
76225
  def validate(self):
@@ -74985,7 +76268,9 @@ class ResizeRCInstanceDiskResponseBody(TeaModel):
74985
76268
  order_id: int = None,
74986
76269
  request_id: str = None,
74987
76270
  ):
76271
+ # The order ID.
74988
76272
  self.order_id = order_id
76273
+ # The request ID.
74989
76274
  self.request_id = request_id
74990
76275
 
74991
76276
  def validate(self):
@@ -75839,10 +77124,18 @@ class RunRCInstancesRequestDataDisk(TeaModel):
75839
77124
  performance_level: str = None,
75840
77125
  size: int = None,
75841
77126
  ):
77127
+ # The type of the data disk. Set the value to **cloud_essd**, which indicates Enterprise SSDs (ESSDs).
75842
77128
  self.category = category
77129
+ # The reserved parameter. This parameter is not supported.
75843
77130
  self.delete_with_instance = delete_with_instance
77131
+ # Specifies whether to encrypt the cloud disk. Valid values:
77132
+ #
77133
+ # * **true**\
77134
+ # * **false** (default)
75844
77135
  self.encrypted = encrypted
77136
+ # The reserved parameter. This parameter is not supported.
75845
77137
  self.performance_level = performance_level
77138
+ # The size of the data disk. Unit: GiB.
75846
77139
  self.size = size
75847
77140
 
75848
77141
  def validate(self):
@@ -75887,7 +77180,9 @@ class RunRCInstancesRequestSystemDisk(TeaModel):
75887
77180
  category: str = None,
75888
77181
  size: str = None,
75889
77182
  ):
77183
+ # The type of the system disk. Set the value to **cloud_essd**, which indicates ESSDs.
75890
77184
  self.category = category
77185
+ # The size of the system disk. Unit: GiB. Only performance level 1 (PL1) ESSDs are supported. Valid values: 20 to 2048.
75891
77186
  self.size = size
75892
77187
 
75893
77188
  def validate(self):
@@ -75943,34 +77238,85 @@ class RunRCInstancesRequest(TeaModel):
75943
77238
  v_switch_id: str = None,
75944
77239
  zone_id: str = None,
75945
77240
  ):
77241
+ # The number of RDS Custom instances that you want to create. The parameter is available if you want to create multiple RDS Custom instances at a time.
77242
+ #
77243
+ # Valid values: **1** to **10**. Default value: **1**.
77244
+ #
75946
77245
  # This parameter is required.
75947
77246
  self.amount = amount
77247
+ # Specifies whether to enable the automatic payment feature. Valid values:
77248
+ #
77249
+ # * **true** (default): enables the feature. Make sure that your account balance is sufficient.
77250
+ # * **false**: disables the feature. An unpaid order is generated.
77251
+ #
77252
+ # > If your account balance is insufficient, you can set the AutoPay parameter to false. In this case, an unpaid order is generated. You can complete the payment in the Expenses and Costs console.
75948
77253
  self.auto_pay = auto_pay
77254
+ # Specifies whether to enable auto-renewal for the instance. Valid values:
77255
+ #
77256
+ # * **true** (default)
77257
+ # * **false**\
75949
77258
  self.auto_renew = auto_renew
77259
+ # The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length.
75950
77260
  self.client_token = client_token
77261
+ # The information about the data disks.
75951
77262
  self.data_disk = data_disk
77263
+ # The deployment set ID.
75952
77264
  self.deployment_set_id = deployment_set_id
77265
+ # The instance description. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
75953
77266
  self.description = description
77267
+ # Specifies whether to perform only a dry run, without performing the actual request. Valid values:
77268
+ #
77269
+ # * **true**: performs only a dry run. The system checks the request for potential issues, including missing parameter values, incorrect request syntax, service limits, and insufficient inventory errors.
77270
+ # * **false** (default): performs a dry run and performs the actual request. If the request passes the dry run, the instance is directly created.
75954
77271
  self.dry_run = dry_run
77272
+ # The ID of the image used by the instance.
75955
77273
  self.image_id = image_id
77274
+ # The billing method of the instance. Set the value to **Prepaid**, which indicates the subscription billing method.
75956
77275
  self.instance_charge_type = instance_charge_type
77276
+ # The instance name.
75957
77277
  self.instance_name = instance_name
77278
+ # The instance type. For more information about the instance types that are supported by RDS Custom instances, see [Instance types for RDS Custom instances](https://help.aliyun.com/document_detail/2844823.html).
77279
+ #
75958
77280
  # This parameter is required.
75959
77281
  self.instance_type = instance_type
77282
+ # The reserved parameter. This parameter is not supported.
75960
77283
  self.internet_charge_type = internet_charge_type
77284
+ # The reserved parameter. This parameter is not supported.
75961
77285
  self.internet_max_bandwidth_out = internet_max_bandwidth_out
77286
+ # The reserved parameter. This parameter is not supported.
75962
77287
  self.io_optimized = io_optimized
77288
+ # The name of the AccessKey pair. You can specify only one name.
75963
77289
  self.key_pair_name = key_pair_name
77290
+ # The password of the account that is used to log on to the instance.
75964
77291
  self.password = password
77292
+ # The subscription duration of the instance. Default value: **1**.
75965
77293
  self.period = period
77294
+ # The unit of the subscription duration. Valid values:
77295
+ #
77296
+ # * **Year**\
77297
+ # * **Month** (default)
75966
77298
  self.period_unit = period_unit
77299
+ # The region ID. You can call the DescribeRegions operation to query the most recent region list.
77300
+ #
75967
77301
  # This parameter is required.
75968
77302
  self.region_id = region_id
77303
+ # The reserved parameter. This parameter is not supported.
75969
77304
  self.security_enhancement_strategy = security_enhancement_strategy
77305
+ # The ID of the security group to which you want to add the new instance. Instances in the same security group can communicate with each other. The maximum number of instances allowed in a security group varies based on the type of the security group. For more information, see the "Security group limits" section in [Limits](https://help.aliyun.com/document_detail/25412.html).
77306
+ #
77307
+ # > The network type of the instance is determined by the security group specified by the SecurityGroupId parameter. For example, if the network type of the specified security group is VPC, the instance is a VPC-type instance. In this case, you must specify the VSwitchId parameter.
75970
77308
  self.security_group_id = security_group_id
77309
+ # The specification of the system disk.
75971
77310
  self.system_disk = system_disk
77311
+ # The vSwitch ID of the instance. You must specify this parameter when you create an instance of the virtual private cloud (VPC) type. The specified vSwitch and security group must belong to the same VPC.
77312
+ #
77313
+ # > If you specify the VSwitchId parameter, the zone specified by the ZoneId parameter must be the same as the zone in which the specified vSwitch resides. You can leave the ZoneId parameter empty. In this case, the system uses the zone in which the specified vSwitch resides.
77314
+ #
75972
77315
  # This parameter is required.
75973
77316
  self.v_switch_id = v_switch_id
77317
+ # The zone ID of the instance. You can call the DescribeZones operation to query the zone IDs.
77318
+ #
77319
+ # > If you specify the VSwitchId parameter, the zone specified by the ZoneId parameter must be the same as the zone in which the specified vSwitch resides. You can leave the ZoneId parameter empty. In this case, the system uses the zone in which the specified vSwitch resides.
75974
77320
  self.zone_id = zone_id
75975
77321
 
75976
77322
  def validate(self):
@@ -76129,34 +77475,85 @@ class RunRCInstancesShrinkRequest(TeaModel):
76129
77475
  v_switch_id: str = None,
76130
77476
  zone_id: str = None,
76131
77477
  ):
77478
+ # The number of RDS Custom instances that you want to create. The parameter is available if you want to create multiple RDS Custom instances at a time.
77479
+ #
77480
+ # Valid values: **1** to **10**. Default value: **1**.
77481
+ #
76132
77482
  # This parameter is required.
76133
77483
  self.amount = amount
77484
+ # Specifies whether to enable the automatic payment feature. Valid values:
77485
+ #
77486
+ # * **true** (default): enables the feature. Make sure that your account balance is sufficient.
77487
+ # * **false**: disables the feature. An unpaid order is generated.
77488
+ #
77489
+ # > If your account balance is insufficient, you can set the AutoPay parameter to false. In this case, an unpaid order is generated. You can complete the payment in the Expenses and Costs console.
76134
77490
  self.auto_pay = auto_pay
77491
+ # Specifies whether to enable auto-renewal for the instance. Valid values:
77492
+ #
77493
+ # * **true** (default)
77494
+ # * **false**\
76135
77495
  self.auto_renew = auto_renew
77496
+ # The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length.
76136
77497
  self.client_token = client_token
77498
+ # The information about the data disks.
76137
77499
  self.data_disk_shrink = data_disk_shrink
77500
+ # The deployment set ID.
76138
77501
  self.deployment_set_id = deployment_set_id
77502
+ # The instance description. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
76139
77503
  self.description = description
77504
+ # Specifies whether to perform only a dry run, without performing the actual request. Valid values:
77505
+ #
77506
+ # * **true**: performs only a dry run. The system checks the request for potential issues, including missing parameter values, incorrect request syntax, service limits, and insufficient inventory errors.
77507
+ # * **false** (default): performs a dry run and performs the actual request. If the request passes the dry run, the instance is directly created.
76140
77508
  self.dry_run = dry_run
77509
+ # The ID of the image used by the instance.
76141
77510
  self.image_id = image_id
77511
+ # The billing method of the instance. Set the value to **Prepaid**, which indicates the subscription billing method.
76142
77512
  self.instance_charge_type = instance_charge_type
77513
+ # The instance name.
76143
77514
  self.instance_name = instance_name
77515
+ # The instance type. For more information about the instance types that are supported by RDS Custom instances, see [Instance types for RDS Custom instances](https://help.aliyun.com/document_detail/2844823.html).
77516
+ #
76144
77517
  # This parameter is required.
76145
77518
  self.instance_type = instance_type
77519
+ # The reserved parameter. This parameter is not supported.
76146
77520
  self.internet_charge_type = internet_charge_type
77521
+ # The reserved parameter. This parameter is not supported.
76147
77522
  self.internet_max_bandwidth_out = internet_max_bandwidth_out
77523
+ # The reserved parameter. This parameter is not supported.
76148
77524
  self.io_optimized = io_optimized
77525
+ # The name of the AccessKey pair. You can specify only one name.
76149
77526
  self.key_pair_name = key_pair_name
77527
+ # The password of the account that is used to log on to the instance.
76150
77528
  self.password = password
77529
+ # The subscription duration of the instance. Default value: **1**.
76151
77530
  self.period = period
77531
+ # The unit of the subscription duration. Valid values:
77532
+ #
77533
+ # * **Year**\
77534
+ # * **Month** (default)
76152
77535
  self.period_unit = period_unit
77536
+ # The region ID. You can call the DescribeRegions operation to query the most recent region list.
77537
+ #
76153
77538
  # This parameter is required.
76154
77539
  self.region_id = region_id
77540
+ # The reserved parameter. This parameter is not supported.
76155
77541
  self.security_enhancement_strategy = security_enhancement_strategy
77542
+ # The ID of the security group to which you want to add the new instance. Instances in the same security group can communicate with each other. The maximum number of instances allowed in a security group varies based on the type of the security group. For more information, see the "Security group limits" section in [Limits](https://help.aliyun.com/document_detail/25412.html).
77543
+ #
77544
+ # > The network type of the instance is determined by the security group specified by the SecurityGroupId parameter. For example, if the network type of the specified security group is VPC, the instance is a VPC-type instance. In this case, you must specify the VSwitchId parameter.
76156
77545
  self.security_group_id = security_group_id
77546
+ # The specification of the system disk.
76157
77547
  self.system_disk_shrink = system_disk_shrink
77548
+ # The vSwitch ID of the instance. You must specify this parameter when you create an instance of the virtual private cloud (VPC) type. The specified vSwitch and security group must belong to the same VPC.
77549
+ #
77550
+ # > If you specify the VSwitchId parameter, the zone specified by the ZoneId parameter must be the same as the zone in which the specified vSwitch resides. You can leave the ZoneId parameter empty. In this case, the system uses the zone in which the specified vSwitch resides.
77551
+ #
76158
77552
  # This parameter is required.
76159
77553
  self.v_switch_id = v_switch_id
77554
+ # The zone ID of the instance. You can call the DescribeZones operation to query the zone IDs.
77555
+ #
77556
+ # > If you specify the VSwitchId parameter, the zone specified by the ZoneId parameter must be the same as the zone in which the specified vSwitch resides. You can leave the ZoneId parameter empty. In this case, the system uses the zone in which the specified vSwitch resides.
76160
77557
  self.zone_id = zone_id
76161
77558
 
76162
77559
  def validate(self):
@@ -76309,8 +77706,11 @@ class RunRCInstancesResponseBody(TeaModel):
76309
77706
  order_id: str = None,
76310
77707
  request_id: str = None,
76311
77708
  ):
77709
+ # The instance IDs (InstanceIdSet).
76312
77710
  self.instance_id_sets = instance_id_sets
77711
+ # The order ID.
76313
77712
  self.order_id = order_id
77713
+ # The request ID.
76314
77714
  self.request_id = request_id
76315
77715
 
76316
77716
  def validate(self):
@@ -76628,8 +78028,11 @@ class StartRCInstanceRequest(TeaModel):
76628
78028
  instance_id: str = None,
76629
78029
  region_id: str = None,
76630
78030
  ):
78031
+ # The instance ID.
78032
+ #
76631
78033
  # This parameter is required.
76632
78034
  self.instance_id = instance_id
78035
+ # The region ID.
76633
78036
  self.region_id = region_id
76634
78037
 
76635
78038
  def validate(self):
@@ -76661,6 +78064,7 @@ class StartRCInstanceResponseBody(TeaModel):
76661
78064
  self,
76662
78065
  request_id: str = None,
76663
78066
  ):
78067
+ # The request ID.
76664
78068
  self.request_id = request_id
76665
78069
 
76666
78070
  def validate(self):
@@ -76857,9 +78261,16 @@ class StopRCInstanceRequest(TeaModel):
76857
78261
  instance_id: str = None,
76858
78262
  region_id: str = None,
76859
78263
  ):
78264
+ # Specifies whether to forcefully stop the instance. Valid values:
78265
+ #
78266
+ # * **true**\
78267
+ # * **false** (default)
76860
78268
  self.force_stop = force_stop
78269
+ # The instance ID.
78270
+ #
76861
78271
  # This parameter is required.
76862
78272
  self.instance_id = instance_id
78273
+ # The region ID.
76863
78274
  self.region_id = region_id
76864
78275
 
76865
78276
  def validate(self):
@@ -76895,6 +78306,7 @@ class StopRCInstanceResponseBody(TeaModel):
76895
78306
  self,
76896
78307
  request_id: str = None,
76897
78308
  ):
78309
+ # The request ID.
76898
78310
  self.request_id = request_id
76899
78311
 
76900
78312
  def validate(self):
@@ -77427,9 +78839,13 @@ class SyncRCKeyPairRequest(TeaModel):
77427
78839
  self,
77428
78840
  key_pair_name: str = None,
77429
78841
  region_id: str = None,
78842
+ sync_mode: bool = None,
77430
78843
  ):
78844
+ # The name of the key pair.
77431
78845
  self.key_pair_name = key_pair_name
78846
+ # The region ID.
77432
78847
  self.region_id = region_id
78848
+ self.sync_mode = sync_mode
77433
78849
 
77434
78850
  def validate(self):
77435
78851
  pass
@@ -77444,6 +78860,8 @@ class SyncRCKeyPairRequest(TeaModel):
77444
78860
  result['KeyPairName'] = self.key_pair_name
77445
78861
  if self.region_id is not None:
77446
78862
  result['RegionId'] = self.region_id
78863
+ if self.sync_mode is not None:
78864
+ result['SyncMode'] = self.sync_mode
77447
78865
  return result
77448
78866
 
77449
78867
  def from_map(self, m: dict = None):
@@ -77452,6 +78870,8 @@ class SyncRCKeyPairRequest(TeaModel):
77452
78870
  self.key_pair_name = m.get('KeyPairName')
77453
78871
  if m.get('RegionId') is not None:
77454
78872
  self.region_id = m.get('RegionId')
78873
+ if m.get('SyncMode') is not None:
78874
+ self.sync_mode = m.get('SyncMode')
77455
78875
  return self
77456
78876
 
77457
78877
 
@@ -77460,6 +78880,10 @@ class SyncRCKeyPairResponseBodyData(TeaModel):
77460
78880
  self,
77461
78881
  is_sync_info: bool = None,
77462
78882
  ):
78883
+ # Indicates whether the synchronization succeeded. Valid values:
78884
+ #
78885
+ # * **true**\
78886
+ # * **false**\
77463
78887
  self.is_sync_info = is_sync_info
77464
78888
 
77465
78889
  def validate(self):
@@ -77488,7 +78912,9 @@ class SyncRCKeyPairResponseBody(TeaModel):
77488
78912
  data: SyncRCKeyPairResponseBodyData = None,
77489
78913
  request_id: str = None,
77490
78914
  ):
78915
+ # The details of the result.
77491
78916
  self.data = data
78917
+ # The request ID.
77492
78918
  self.request_id = request_id
77493
78919
 
77494
78920
  def validate(self):