@alicloud/ecs20140526 3.0.3 → 3.0.5

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.
package/src/client.ts CHANGED
@@ -14337,6 +14337,7 @@ export class DescribeImageSharePermissionResponse extends $tea.Model {
14337
14337
  }
14338
14338
 
14339
14339
  export class DescribeImageSupportInstanceTypesRequest extends $tea.Model {
14340
+ actionType?: string;
14340
14341
  filter?: DescribeImageSupportInstanceTypesRequestFilter[];
14341
14342
  imageId?: string;
14342
14343
  ownerId?: number;
@@ -14345,6 +14346,7 @@ export class DescribeImageSupportInstanceTypesRequest extends $tea.Model {
14345
14346
  resourceOwnerId?: number;
14346
14347
  static names(): { [key: string]: string } {
14347
14348
  return {
14349
+ actionType: 'ActionType',
14348
14350
  filter: 'Filter',
14349
14351
  imageId: 'ImageId',
14350
14352
  ownerId: 'OwnerId',
@@ -14356,6 +14358,7 @@ export class DescribeImageSupportInstanceTypesRequest extends $tea.Model {
14356
14358
 
14357
14359
  static types(): { [key: string]: any } {
14358
14360
  return {
14361
+ actionType: 'string',
14359
14362
  filter: { 'type': 'array', 'itemType': DescribeImageSupportInstanceTypesRequestFilter },
14360
14363
  imageId: 'string',
14361
14364
  ownerId: 'number',
@@ -18873,6 +18876,7 @@ export class DescribeResourceByTagsResponse extends $tea.Model {
18873
18876
  }
18874
18877
 
18875
18878
  export class DescribeResourcesModificationRequest extends $tea.Model {
18879
+ conditions?: string[];
18876
18880
  cores?: number;
18877
18881
  destinationResource?: string;
18878
18882
  instanceType?: string;
@@ -18888,6 +18892,7 @@ export class DescribeResourcesModificationRequest extends $tea.Model {
18888
18892
  zoneId?: string;
18889
18893
  static names(): { [key: string]: string } {
18890
18894
  return {
18895
+ conditions: 'Conditions',
18891
18896
  cores: 'Cores',
18892
18897
  destinationResource: 'DestinationResource',
18893
18898
  instanceType: 'InstanceType',
@@ -18906,6 +18911,7 @@ export class DescribeResourcesModificationRequest extends $tea.Model {
18906
18911
 
18907
18912
  static types(): { [key: string]: any } {
18908
18913
  return {
18914
+ conditions: { 'type': 'array', 'itemType': 'string' },
18909
18915
  cores: 'number',
18910
18916
  destinationResource: 'string',
18911
18917
  instanceType: 'string',
@@ -25569,12 +25575,103 @@ export class ModifyDiskChargeTypeResponse extends $tea.Model {
25569
25575
  }
25570
25576
  }
25571
25577
 
25578
+ export class ModifyDiskDeploymentRequest extends $tea.Model {
25579
+ diskCategory?: string;
25580
+ diskId?: string;
25581
+ dryRun?: boolean;
25582
+ ownerAccount?: string;
25583
+ ownerId?: number;
25584
+ performanceLevel?: string;
25585
+ resourceOwnerAccount?: string;
25586
+ resourceOwnerId?: number;
25587
+ storageClusterId?: string;
25588
+ static names(): { [key: string]: string } {
25589
+ return {
25590
+ diskCategory: 'DiskCategory',
25591
+ diskId: 'DiskId',
25592
+ dryRun: 'DryRun',
25593
+ ownerAccount: 'OwnerAccount',
25594
+ ownerId: 'OwnerId',
25595
+ performanceLevel: 'PerformanceLevel',
25596
+ resourceOwnerAccount: 'ResourceOwnerAccount',
25597
+ resourceOwnerId: 'ResourceOwnerId',
25598
+ storageClusterId: 'StorageClusterId',
25599
+ };
25600
+ }
25601
+
25602
+ static types(): { [key: string]: any } {
25603
+ return {
25604
+ diskCategory: 'string',
25605
+ diskId: 'string',
25606
+ dryRun: 'boolean',
25607
+ ownerAccount: 'string',
25608
+ ownerId: 'number',
25609
+ performanceLevel: 'string',
25610
+ resourceOwnerAccount: 'string',
25611
+ resourceOwnerId: 'number',
25612
+ storageClusterId: 'string',
25613
+ };
25614
+ }
25615
+
25616
+ constructor(map?: { [key: string]: any }) {
25617
+ super(map);
25618
+ }
25619
+ }
25620
+
25621
+ export class ModifyDiskDeploymentResponseBody extends $tea.Model {
25622
+ requestId?: string;
25623
+ taskId?: string;
25624
+ static names(): { [key: string]: string } {
25625
+ return {
25626
+ requestId: 'RequestId',
25627
+ taskId: 'TaskId',
25628
+ };
25629
+ }
25630
+
25631
+ static types(): { [key: string]: any } {
25632
+ return {
25633
+ requestId: 'string',
25634
+ taskId: 'string',
25635
+ };
25636
+ }
25637
+
25638
+ constructor(map?: { [key: string]: any }) {
25639
+ super(map);
25640
+ }
25641
+ }
25642
+
25643
+ export class ModifyDiskDeploymentResponse extends $tea.Model {
25644
+ headers: { [key: string]: string };
25645
+ statusCode: number;
25646
+ body: ModifyDiskDeploymentResponseBody;
25647
+ static names(): { [key: string]: string } {
25648
+ return {
25649
+ headers: 'headers',
25650
+ statusCode: 'statusCode',
25651
+ body: 'body',
25652
+ };
25653
+ }
25654
+
25655
+ static types(): { [key: string]: any } {
25656
+ return {
25657
+ headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
25658
+ statusCode: 'number',
25659
+ body: ModifyDiskDeploymentResponseBody,
25660
+ };
25661
+ }
25662
+
25663
+ constructor(map?: { [key: string]: any }) {
25664
+ super(map);
25665
+ }
25666
+ }
25667
+
25572
25668
  export class ModifyDiskSpecRequest extends $tea.Model {
25573
25669
  diskCategory?: string;
25574
25670
  diskId?: string;
25575
25671
  dryRun?: boolean;
25576
25672
  ownerAccount?: string;
25577
25673
  ownerId?: number;
25674
+ performanceControlOptions?: ModifyDiskSpecRequestPerformanceControlOptions;
25578
25675
  performanceLevel?: string;
25579
25676
  provisionedIops?: number;
25580
25677
  resourceOwnerAccount?: string;
@@ -25586,6 +25683,7 @@ export class ModifyDiskSpecRequest extends $tea.Model {
25586
25683
  dryRun: 'DryRun',
25587
25684
  ownerAccount: 'OwnerAccount',
25588
25685
  ownerId: 'OwnerId',
25686
+ performanceControlOptions: 'PerformanceControlOptions',
25589
25687
  performanceLevel: 'PerformanceLevel',
25590
25688
  provisionedIops: 'ProvisionedIops',
25591
25689
  resourceOwnerAccount: 'ResourceOwnerAccount',
@@ -25600,6 +25698,7 @@ export class ModifyDiskSpecRequest extends $tea.Model {
25600
25698
  dryRun: 'boolean',
25601
25699
  ownerAccount: 'string',
25602
25700
  ownerId: 'number',
25701
+ performanceControlOptions: ModifyDiskSpecRequestPerformanceControlOptions,
25603
25702
  performanceLevel: 'string',
25604
25703
  provisionedIops: 'number',
25605
25704
  resourceOwnerAccount: 'string',
@@ -27228,10 +27327,12 @@ export class ModifyInstanceSpecRequest extends $tea.Model {
27228
27327
  allowMigrateAcrossZone?: boolean;
27229
27328
  async?: boolean;
27230
27329
  clientToken?: string;
27330
+ disk?: ModifyInstanceSpecRequestDisk[];
27231
27331
  instanceId?: string;
27232
27332
  instanceType?: string;
27233
27333
  internetMaxBandwidthIn?: number;
27234
27334
  internetMaxBandwidthOut?: number;
27335
+ modifyMode?: string;
27235
27336
  ownerAccount?: string;
27236
27337
  ownerId?: number;
27237
27338
  resourceOwnerAccount?: string;
@@ -27243,10 +27344,12 @@ export class ModifyInstanceSpecRequest extends $tea.Model {
27243
27344
  allowMigrateAcrossZone: 'AllowMigrateAcrossZone',
27244
27345
  async: 'Async',
27245
27346
  clientToken: 'ClientToken',
27347
+ disk: 'Disk',
27246
27348
  instanceId: 'InstanceId',
27247
27349
  instanceType: 'InstanceType',
27248
27350
  internetMaxBandwidthIn: 'InternetMaxBandwidthIn',
27249
27351
  internetMaxBandwidthOut: 'InternetMaxBandwidthOut',
27352
+ modifyMode: 'ModifyMode',
27250
27353
  ownerAccount: 'OwnerAccount',
27251
27354
  ownerId: 'OwnerId',
27252
27355
  resourceOwnerAccount: 'ResourceOwnerAccount',
@@ -27261,10 +27364,12 @@ export class ModifyInstanceSpecRequest extends $tea.Model {
27261
27364
  allowMigrateAcrossZone: 'boolean',
27262
27365
  async: 'boolean',
27263
27366
  clientToken: 'string',
27367
+ disk: { 'type': 'array', 'itemType': ModifyInstanceSpecRequestDisk },
27264
27368
  instanceId: 'string',
27265
27369
  instanceType: 'string',
27266
27370
  internetMaxBandwidthIn: 'number',
27267
27371
  internetMaxBandwidthOut: 'number',
27372
+ modifyMode: 'string',
27268
27373
  ownerAccount: 'string',
27269
27374
  ownerId: 'number',
27270
27375
  resourceOwnerAccount: 'string',
@@ -27952,10 +28057,12 @@ export class ModifyPrepayInstanceSpecRequest extends $tea.Model {
27952
28057
  systemDisk?: ModifyPrepayInstanceSpecRequestSystemDisk;
27953
28058
  autoPay?: boolean;
27954
28059
  clientToken?: string;
28060
+ disk?: ModifyPrepayInstanceSpecRequestDisk[];
27955
28061
  endTime?: string;
27956
28062
  instanceId?: string;
27957
28063
  instanceType?: string;
27958
28064
  migrateAcrossZone?: boolean;
28065
+ modifyMode?: string;
27959
28066
  operatorType?: string;
27960
28067
  ownerAccount?: string;
27961
28068
  ownerId?: number;
@@ -27969,10 +28076,12 @@ export class ModifyPrepayInstanceSpecRequest extends $tea.Model {
27969
28076
  systemDisk: 'SystemDisk',
27970
28077
  autoPay: 'AutoPay',
27971
28078
  clientToken: 'ClientToken',
28079
+ disk: 'Disk',
27972
28080
  endTime: 'EndTime',
27973
28081
  instanceId: 'InstanceId',
27974
28082
  instanceType: 'InstanceType',
27975
28083
  migrateAcrossZone: 'MigrateAcrossZone',
28084
+ modifyMode: 'ModifyMode',
27976
28085
  operatorType: 'OperatorType',
27977
28086
  ownerAccount: 'OwnerAccount',
27978
28087
  ownerId: 'OwnerId',
@@ -27989,10 +28098,12 @@ export class ModifyPrepayInstanceSpecRequest extends $tea.Model {
27989
28098
  systemDisk: ModifyPrepayInstanceSpecRequestSystemDisk,
27990
28099
  autoPay: 'boolean',
27991
28100
  clientToken: 'string',
28101
+ disk: { 'type': 'array', 'itemType': ModifyPrepayInstanceSpecRequestDisk },
27992
28102
  endTime: 'string',
27993
28103
  instanceId: 'string',
27994
28104
  instanceType: 'string',
27995
28105
  migrateAcrossZone: 'boolean',
28106
+ modifyMode: 'string',
27996
28107
  operatorType: 'string',
27997
28108
  ownerAccount: 'string',
27998
28109
  ownerId: 'number',
@@ -32284,6 +32395,7 @@ export class RunInstancesRequest extends $tea.Model {
32284
32395
  httpTokens?: string;
32285
32396
  imageFamily?: string;
32286
32397
  imageId?: string;
32398
+ imageOptions?: RunInstancesRequestImageOptions;
32287
32399
  instanceChargeType?: string;
32288
32400
  instanceName?: string;
32289
32401
  instanceType?: string;
@@ -32360,6 +32472,7 @@ export class RunInstancesRequest extends $tea.Model {
32360
32472
  httpTokens: 'HttpTokens',
32361
32473
  imageFamily: 'ImageFamily',
32362
32474
  imageId: 'ImageId',
32475
+ imageOptions: 'ImageOptions',
32363
32476
  instanceChargeType: 'InstanceChargeType',
32364
32477
  instanceName: 'InstanceName',
32365
32478
  instanceType: 'InstanceType',
@@ -32439,6 +32552,7 @@ export class RunInstancesRequest extends $tea.Model {
32439
32552
  httpTokens: 'string',
32440
32553
  imageFamily: 'string',
32441
32554
  imageId: 'string',
32555
+ imageOptions: RunInstancesRequestImageOptions,
32442
32556
  instanceChargeType: 'string',
32443
32557
  instanceName: 'string',
32444
32558
  instanceType: 'string',
@@ -48232,6 +48346,100 @@ export class DescribeResourceByTagsResponseBodyResources extends $tea.Model {
48232
48346
  }
48233
48347
  }
48234
48348
 
48349
+ export class DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResourceConditionSupportedResourcesConditionSupportedResourceConditionsCondition extends $tea.Model {
48350
+ key?: string;
48351
+ static names(): { [key: string]: string } {
48352
+ return {
48353
+ key: 'Key',
48354
+ };
48355
+ }
48356
+
48357
+ static types(): { [key: string]: any } {
48358
+ return {
48359
+ key: 'string',
48360
+ };
48361
+ }
48362
+
48363
+ constructor(map?: { [key: string]: any }) {
48364
+ super(map);
48365
+ }
48366
+ }
48367
+
48368
+ export class DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResourceConditionSupportedResourcesConditionSupportedResourceConditions extends $tea.Model {
48369
+ condition?: DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResourceConditionSupportedResourcesConditionSupportedResourceConditionsCondition[];
48370
+ static names(): { [key: string]: string } {
48371
+ return {
48372
+ condition: 'Condition',
48373
+ };
48374
+ }
48375
+
48376
+ static types(): { [key: string]: any } {
48377
+ return {
48378
+ condition: { 'type': 'array', 'itemType': DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResourceConditionSupportedResourcesConditionSupportedResourceConditionsCondition },
48379
+ };
48380
+ }
48381
+
48382
+ constructor(map?: { [key: string]: any }) {
48383
+ super(map);
48384
+ }
48385
+ }
48386
+
48387
+ export class DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResourceConditionSupportedResourcesConditionSupportedResource extends $tea.Model {
48388
+ conditions?: DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResourceConditionSupportedResourcesConditionSupportedResourceConditions;
48389
+ max?: number;
48390
+ min?: number;
48391
+ status?: string;
48392
+ statusCategory?: string;
48393
+ unit?: string;
48394
+ value?: string;
48395
+ static names(): { [key: string]: string } {
48396
+ return {
48397
+ conditions: 'Conditions',
48398
+ max: 'Max',
48399
+ min: 'Min',
48400
+ status: 'Status',
48401
+ statusCategory: 'StatusCategory',
48402
+ unit: 'Unit',
48403
+ value: 'Value',
48404
+ };
48405
+ }
48406
+
48407
+ static types(): { [key: string]: any } {
48408
+ return {
48409
+ conditions: DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResourceConditionSupportedResourcesConditionSupportedResourceConditions,
48410
+ max: 'number',
48411
+ min: 'number',
48412
+ status: 'string',
48413
+ statusCategory: 'string',
48414
+ unit: 'string',
48415
+ value: 'string',
48416
+ };
48417
+ }
48418
+
48419
+ constructor(map?: { [key: string]: any }) {
48420
+ super(map);
48421
+ }
48422
+ }
48423
+
48424
+ export class DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResourceConditionSupportedResources extends $tea.Model {
48425
+ conditionSupportedResource?: DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResourceConditionSupportedResourcesConditionSupportedResource[];
48426
+ static names(): { [key: string]: string } {
48427
+ return {
48428
+ conditionSupportedResource: 'ConditionSupportedResource',
48429
+ };
48430
+ }
48431
+
48432
+ static types(): { [key: string]: any } {
48433
+ return {
48434
+ conditionSupportedResource: { 'type': 'array', 'itemType': DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResourceConditionSupportedResourcesConditionSupportedResource },
48435
+ };
48436
+ }
48437
+
48438
+ constructor(map?: { [key: string]: any }) {
48439
+ super(map);
48440
+ }
48441
+ }
48442
+
48235
48443
  export class DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResourceSupportedResourcesSupportedResource extends $tea.Model {
48236
48444
  max?: number;
48237
48445
  min?: number;
@@ -48286,10 +48494,12 @@ export class DescribeResourcesModificationResponseBodyAvailableZonesAvailableZon
48286
48494
  }
48287
48495
 
48288
48496
  export class DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResource extends $tea.Model {
48497
+ conditionSupportedResources?: DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResourceConditionSupportedResources;
48289
48498
  supportedResources?: DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResourceSupportedResources;
48290
48499
  type?: string;
48291
48500
  static names(): { [key: string]: string } {
48292
48501
  return {
48502
+ conditionSupportedResources: 'ConditionSupportedResources',
48293
48503
  supportedResources: 'SupportedResources',
48294
48504
  type: 'Type',
48295
48505
  };
@@ -48297,6 +48507,7 @@ export class DescribeResourcesModificationResponseBodyAvailableZonesAvailableZon
48297
48507
 
48298
48508
  static types(): { [key: string]: any } {
48299
48509
  return {
48510
+ conditionSupportedResources: DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResourceConditionSupportedResources,
48300
48511
  supportedResources: DescribeResourcesModificationResponseBodyAvailableZonesAvailableZoneAvailableResourcesAvailableResourceSupportedResources,
48301
48512
  type: 'string',
48302
48513
  };
@@ -51826,6 +52037,31 @@ export class ModifyDedicatedHostsChargeTypeResponseBodyFeeOfInstances extends $t
51826
52037
  }
51827
52038
  }
51828
52039
 
52040
+ export class ModifyDiskSpecRequestPerformanceControlOptions extends $tea.Model {
52041
+ IOPS?: number;
52042
+ recover?: string;
52043
+ throughput?: number;
52044
+ static names(): { [key: string]: string } {
52045
+ return {
52046
+ IOPS: 'IOPS',
52047
+ recover: 'Recover',
52048
+ throughput: 'Throughput',
52049
+ };
52050
+ }
52051
+
52052
+ static types(): { [key: string]: any } {
52053
+ return {
52054
+ IOPS: 'number',
52055
+ recover: 'string',
52056
+ throughput: 'number',
52057
+ };
52058
+ }
52059
+
52060
+ constructor(map?: { [key: string]: any }) {
52061
+ super(map);
52062
+ }
52063
+ }
52064
+
51829
52065
  export class ModifyElasticityAssuranceRequestPrivatePoolOptions extends $tea.Model {
51830
52066
  id?: string;
51831
52067
  name?: string;
@@ -52021,6 +52257,31 @@ export class ModifyInstanceSpecRequestTemporary extends $tea.Model {
52021
52257
  }
52022
52258
  }
52023
52259
 
52260
+ export class ModifyInstanceSpecRequestDisk extends $tea.Model {
52261
+ category?: string;
52262
+ diskId?: string;
52263
+ performanceLevel?: string;
52264
+ static names(): { [key: string]: string } {
52265
+ return {
52266
+ category: 'Category',
52267
+ diskId: 'DiskId',
52268
+ performanceLevel: 'PerformanceLevel',
52269
+ };
52270
+ }
52271
+
52272
+ static types(): { [key: string]: any } {
52273
+ return {
52274
+ category: 'string',
52275
+ diskId: 'string',
52276
+ performanceLevel: 'string',
52277
+ };
52278
+ }
52279
+
52280
+ constructor(map?: { [key: string]: any }) {
52281
+ super(map);
52282
+ }
52283
+ }
52284
+
52024
52285
  export class ModifyManagedInstanceResponseBodyInstance extends $tea.Model {
52025
52286
  instanceId?: string;
52026
52287
  instanceName?: string;
@@ -52103,6 +52364,31 @@ export class ModifyPrepayInstanceSpecRequestSystemDisk extends $tea.Model {
52103
52364
  }
52104
52365
  }
52105
52366
 
52367
+ export class ModifyPrepayInstanceSpecRequestDisk extends $tea.Model {
52368
+ category?: string;
52369
+ diskId?: string;
52370
+ performanceLevel?: string;
52371
+ static names(): { [key: string]: string } {
52372
+ return {
52373
+ category: 'Category',
52374
+ diskId: 'DiskId',
52375
+ performanceLevel: 'PerformanceLevel',
52376
+ };
52377
+ }
52378
+
52379
+ static types(): { [key: string]: any } {
52380
+ return {
52381
+ category: 'string',
52382
+ diskId: 'string',
52383
+ performanceLevel: 'string',
52384
+ };
52385
+ }
52386
+
52387
+ constructor(map?: { [key: string]: any }) {
52388
+ super(map);
52389
+ }
52390
+ }
52391
+
52106
52392
  export class ModifyReservedInstancesRequestConfiguration extends $tea.Model {
52107
52393
  instanceAmount?: number;
52108
52394
  instanceType?: string;
@@ -52910,6 +53196,25 @@ export class RunInstancesRequestDataDisk extends $tea.Model {
52910
53196
  }
52911
53197
  }
52912
53198
 
53199
+ export class RunInstancesRequestImageOptions extends $tea.Model {
53200
+ loginAsNonRoot?: boolean;
53201
+ static names(): { [key: string]: string } {
53202
+ return {
53203
+ loginAsNonRoot: 'LoginAsNonRoot',
53204
+ };
53205
+ }
53206
+
53207
+ static types(): { [key: string]: any } {
53208
+ return {
53209
+ loginAsNonRoot: 'boolean',
53210
+ };
53211
+ }
53212
+
53213
+ constructor(map?: { [key: string]: any }) {
53214
+ super(map);
53215
+ }
53216
+ }
53217
+
52913
53218
  export class RunInstancesRequestNetworkInterface extends $tea.Model {
52914
53219
  description?: string;
52915
53220
  instanceType?: string;
@@ -53681,6 +53986,7 @@ export default class Client extends OpenApi {
53681
53986
 
53682
53987
  /**
53683
53988
  * @deprecated
53989
+ * > This operation has been upgraded. We recommend that you do not use it. For information about the new version of this operation, see [AllocateEipAddress](~~120192~~).
53684
53990
  *
53685
53991
  * @param request AllocateEipAddressRequest
53686
53992
  * @param runtime runtime options for this request RuntimeOptions
@@ -53749,6 +54055,7 @@ export default class Client extends OpenApi {
53749
54055
 
53750
54056
  /**
53751
54057
  * @deprecated
54058
+ * > This operation has been upgraded. We recommend that you do not use it. For information about the new version of this operation, see [AllocateEipAddress](~~120192~~).
53752
54059
  *
53753
54060
  * @param request AllocateEipAddressRequest
53754
54061
  * @return AllocateEipAddressResponse
@@ -53839,7 +54146,7 @@ export default class Client extends OpenApi {
53839
54146
 
53840
54147
  /**
53841
54148
  * * Each disk can have only one automatic snapshot policy applied.
53842
- * * A single automatic snapshot policy can be applied to multiple disks.
54149
+ * * Each automatic snapshot policy can be applied to multiple disks.
53843
54150
  *
53844
54151
  * @param request ApplyAutoSnapshotPolicyRequest
53845
54152
  * @param runtime runtime options for this request RuntimeOptions
@@ -53891,7 +54198,7 @@ export default class Client extends OpenApi {
53891
54198
 
53892
54199
  /**
53893
54200
  * * Each disk can have only one automatic snapshot policy applied.
53894
- * * A single automatic snapshot policy can be applied to multiple disks.
54201
+ * * Each automatic snapshot policy can be applied to multiple disks.
53895
54202
  *
53896
54203
  * @param request ApplyAutoSnapshotPolicyRequest
53897
54204
  * @return ApplyAutoSnapshotPolicyResponse
@@ -54637,18 +54944,17 @@ export default class Client extends OpenApi {
54637
54944
  }
54638
54945
 
54639
54946
  /**
54640
- * ## Description
54641
54947
  * When you call this operation, take note of the following items:
54642
54948
  * * The total number of inbound and outbound security group rules in each security group cannot exceed 200. For more information, see the "Security group limits" section in [Limits](~~25412#SecurityGroupQuota1~~).
54643
54949
  * * The valid value of Priority ranges from 1 to 100. A smaller value indicates a higher priority.
54644
54950
  * * When multiple security group rules have the same priority, drop rules take precedence.
54645
54951
  * * The source can be a CIDR block specified by SourceCidrIp, Ipv6SourceCidrIp, or SourcePrefixListId or can be Elastic Compute Service (ECS) instances in a security group specified by SourceGroupId.
54646
- * * For advanced security groups, security groups cannot be used as authorization objects.
54647
- * * For each basic security group, a maximum of 20 security groups can be used as authorization objects.
54952
+ * * Security groups cannot be referenced as authorization objects in rules of advanced security groups.
54953
+ * * Up to 20 security groups can be referenced as authorization objects in the rules of each basic security group.
54648
54954
  * * If the specified security group rule exists in the security group, the call is successful but no security group rule is created.
54649
- * * The `Permissions.N` prefix is added to some parameters to generate new parameters. Original parameters and corresponding parameters prefixed with Permissions.N cannot be specified together. We recommend that you use parameters prefixed with `Permissions.N`.
54955
+ * * The `Permissions.N` prefix is added to some parameters to generate new parameters. Original parameters andparameters prefixed with Permissions.N cannot be specified together. We recommend that you use parameters prefixed with `Permissions.N`.
54650
54956
  * * You can determine a security group rule by specifying one of the following groups of parameters. You cannot determine a security group rule by specifying only one parameter.
54651
- * * Parameters used to specify a security group rule that controls access from a specified CIDR block: IpProtocol, PortRange, SourcePortRange, NicType, Policy, and SourceCidrIp. For a security group of the Virtual Private Cloud (VPC) type, you must set the NicType parameter to intranet. For a security group of the classic network type, you can set the NicType parameter to either internet or intranet. Sample request:
54957
+ * * Parameters used to specify an inbound security group rule that controls access from a specific CIDR block: IpProtocol, PortRange, SourcePortRange (optional), NicType, Policy, and SourceCidrIp. For a security group of the Virtual Private Cloud (VPC) type, you must set the NicType parameter to intranet. For a security group of the classic network type, you can set the NicType parameter to either internet or intranet. Sample request:
54652
54958
  * http(s)://ecs.aliyuncs.com/?Action=AuthorizeSecurityGroup
54653
54959
  * &SecurityGroupId=sg-bp67acfmxazb4p****
54654
54960
  * &Permissions.1.SourceCidrIp=10.0.0.0/8
@@ -54657,7 +54963,7 @@ export default class Client extends OpenApi {
54657
54963
  * &Permissions.1.NicType=intranet
54658
54964
  * &Permissions.1.Policy=Accept
54659
54965
  * &<Common request parameters>
54660
- * * Parameters used to specify a security group rule that controls access from a security group: IpProtocol, PortRange, SourcePortRange (optional), NicType, Policy, SourceGroupOwnerAccount, and SourceGroupId. In this case, you must set the NicType parameter to intranet. To allow mutual access between security groups in the classic network, you can allow or deny another security group within the same region access to your security group. The security group that is allowed access to your security group can belong to your own Alibaba Cloud account or another Alibaba Cloud account specified by the SourceGroupOwnerAccount parameter. To allow mutual access between security groups in VPCs, you can allow or deny another security group within the same VPC access to your security group. Sample request:
54966
+ * * Parameters used to specify an inbound security group rule that controls access from a security group: IpProtocol, PortRange, SourcePortRange (optional), NicType, Policy, SourceGroupOwnerAccount, and SourceGroupId. In this case, you must set the NicType parameter to intranet. For access control between security groups in the classic network, you can allow or deny other security groups within the same region to access your security group. The security groups that are allowed to access your security group can belong to your own Alibaba Cloud account or another Alibaba Cloud account specified by the SourceGroupOwnerAccount parameter. For access control between security groups in VPCs, you can allow or deny another security group within the same VPC to access your security group. Sample request:
54661
54967
  * http(s)://ecs.aliyuncs.com/?Action=AuthorizeSecurityGroup
54662
54968
  * &SecurityGroupId=sg-bp67acfmxazb4p****
54663
54969
  * &Permissions.1.SourceGroupId=sg-1651FBB**
@@ -54667,7 +54973,7 @@ export default class Client extends OpenApi {
54667
54973
  * &Permissions.1.NicType=intranet
54668
54974
  * &Permissions.1.Policy=Drop
54669
54975
  * &<Common request parameters>
54670
- * * Parameters used to specify a security group rule that controls access from a prefix list: IpProtocol, PortRange, SourcePortRange (optional), NicType, Policy, and DestPrefixListId. In this case, prefix lists support only security groups in VPCs. NicType must be set to intranet. Sample request:
54976
+ * * Parameters used to specify an outbound security group rule that controls access to a prefix list: IpProtocol, PortRange, SourcePortRange (optional), NicType, Policy, and DestPrefixListId. In this case, prefix lists support only security groups in VPCs. NicType must be set to intranet. Sample request:
54671
54977
  * http(s)://ecs.aliyuncs.com/?Action=AuthorizeSecurityGroup
54672
54978
  * &SecurityGroupId=sg-bp67acfmxazb4p****
54673
54979
  * &Permissions.1.SourcePrefixListId=pl-x1j1k5ykzqlixdcy****
@@ -54812,18 +55118,17 @@ export default class Client extends OpenApi {
54812
55118
  }
54813
55119
 
54814
55120
  /**
54815
- * ## Description
54816
55121
  * When you call this operation, take note of the following items:
54817
55122
  * * The total number of inbound and outbound security group rules in each security group cannot exceed 200. For more information, see the "Security group limits" section in [Limits](~~25412#SecurityGroupQuota1~~).
54818
55123
  * * The valid value of Priority ranges from 1 to 100. A smaller value indicates a higher priority.
54819
55124
  * * When multiple security group rules have the same priority, drop rules take precedence.
54820
55125
  * * The source can be a CIDR block specified by SourceCidrIp, Ipv6SourceCidrIp, or SourcePrefixListId or can be Elastic Compute Service (ECS) instances in a security group specified by SourceGroupId.
54821
- * * For advanced security groups, security groups cannot be used as authorization objects.
54822
- * * For each basic security group, a maximum of 20 security groups can be used as authorization objects.
55126
+ * * Security groups cannot be referenced as authorization objects in rules of advanced security groups.
55127
+ * * Up to 20 security groups can be referenced as authorization objects in the rules of each basic security group.
54823
55128
  * * If the specified security group rule exists in the security group, the call is successful but no security group rule is created.
54824
- * * The `Permissions.N` prefix is added to some parameters to generate new parameters. Original parameters and corresponding parameters prefixed with Permissions.N cannot be specified together. We recommend that you use parameters prefixed with `Permissions.N`.
55129
+ * * The `Permissions.N` prefix is added to some parameters to generate new parameters. Original parameters andparameters prefixed with Permissions.N cannot be specified together. We recommend that you use parameters prefixed with `Permissions.N`.
54825
55130
  * * You can determine a security group rule by specifying one of the following groups of parameters. You cannot determine a security group rule by specifying only one parameter.
54826
- * * Parameters used to specify a security group rule that controls access from a specified CIDR block: IpProtocol, PortRange, SourcePortRange, NicType, Policy, and SourceCidrIp. For a security group of the Virtual Private Cloud (VPC) type, you must set the NicType parameter to intranet. For a security group of the classic network type, you can set the NicType parameter to either internet or intranet. Sample request:
55131
+ * * Parameters used to specify an inbound security group rule that controls access from a specific CIDR block: IpProtocol, PortRange, SourcePortRange (optional), NicType, Policy, and SourceCidrIp. For a security group of the Virtual Private Cloud (VPC) type, you must set the NicType parameter to intranet. For a security group of the classic network type, you can set the NicType parameter to either internet or intranet. Sample request:
54827
55132
  * http(s)://ecs.aliyuncs.com/?Action=AuthorizeSecurityGroup
54828
55133
  * &SecurityGroupId=sg-bp67acfmxazb4p****
54829
55134
  * &Permissions.1.SourceCidrIp=10.0.0.0/8
@@ -54832,7 +55137,7 @@ export default class Client extends OpenApi {
54832
55137
  * &Permissions.1.NicType=intranet
54833
55138
  * &Permissions.1.Policy=Accept
54834
55139
  * &<Common request parameters>
54835
- * * Parameters used to specify a security group rule that controls access from a security group: IpProtocol, PortRange, SourcePortRange (optional), NicType, Policy, SourceGroupOwnerAccount, and SourceGroupId. In this case, you must set the NicType parameter to intranet. To allow mutual access between security groups in the classic network, you can allow or deny another security group within the same region access to your security group. The security group that is allowed access to your security group can belong to your own Alibaba Cloud account or another Alibaba Cloud account specified by the SourceGroupOwnerAccount parameter. To allow mutual access between security groups in VPCs, you can allow or deny another security group within the same VPC access to your security group. Sample request:
55140
+ * * Parameters used to specify an inbound security group rule that controls access from a security group: IpProtocol, PortRange, SourcePortRange (optional), NicType, Policy, SourceGroupOwnerAccount, and SourceGroupId. In this case, you must set the NicType parameter to intranet. For access control between security groups in the classic network, you can allow or deny other security groups within the same region to access your security group. The security groups that are allowed to access your security group can belong to your own Alibaba Cloud account or another Alibaba Cloud account specified by the SourceGroupOwnerAccount parameter. For access control between security groups in VPCs, you can allow or deny another security group within the same VPC to access your security group. Sample request:
54836
55141
  * http(s)://ecs.aliyuncs.com/?Action=AuthorizeSecurityGroup
54837
55142
  * &SecurityGroupId=sg-bp67acfmxazb4p****
54838
55143
  * &Permissions.1.SourceGroupId=sg-1651FBB**
@@ -54842,7 +55147,7 @@ export default class Client extends OpenApi {
54842
55147
  * &Permissions.1.NicType=intranet
54843
55148
  * &Permissions.1.Policy=Drop
54844
55149
  * &<Common request parameters>
54845
- * * Parameters used to specify a security group rule that controls access from a prefix list: IpProtocol, PortRange, SourcePortRange (optional), NicType, Policy, and DestPrefixListId. In this case, prefix lists support only security groups in VPCs. NicType must be set to intranet. Sample request:
55150
+ * * Parameters used to specify an outbound security group rule that controls access to a prefix list: IpProtocol, PortRange, SourcePortRange (optional), NicType, Policy, and DestPrefixListId. In this case, prefix lists support only security groups in VPCs. NicType must be set to intranet. Sample request:
54846
55151
  * http(s)://ecs.aliyuncs.com/?Action=AuthorizeSecurityGroup
54847
55152
  * &SecurityGroupId=sg-bp67acfmxazb4p****
54848
55153
  * &Permissions.1.SourcePrefixListId=pl-x1j1k5ykzqlixdcy****
@@ -54863,17 +55168,16 @@ export default class Client extends OpenApi {
54863
55168
  }
54864
55169
 
54865
55170
  /**
54866
- * ## Description
54867
55171
  * When you call this operation, take note of the following items:
54868
55172
  * * The total number of inbound and outbound security group rules in each security group cannot exceed 200. For more information, see the "Security group limits" section in [](~~25412#SecurityGroupQuota1~~).
54869
55173
  * * You can set Policy to accept or drop for each security group rule to allow or deny access.
54870
55174
  * * The valid value of Priority ranges from 1 to 100. A smaller value indicates a higher priority.
54871
55175
  * * When several security group rules have the same priority, drop rules take precedence.
54872
55176
  * * The destination can be a CIDR block specified by DestCidrIp, Ipv6DestCidrIp, or DestPrefixListId or can be Elastic Compute Service (ECS) instances in a security group specified by DestGroupId.
54873
- * * For advanced security groups, security groups cannot be used as authorization objects.
54874
- * * For each basic security group, a maximum of 20 security groups can be used as authorization objects.
55177
+ * * Security groups cannot be referenced as authorization objects in the rules of advanced security groups.
55178
+ * * Up to 20 security groups can be referenced as authorization objects in the rules of each basic security group.
54875
55179
  * * If the specified security group rule exists in the security group, the call is successful but no security group rule is created.
54876
- * * The `Permissions.N` prefix is added to some parameters to generate new parameters. Original parameters and corresponding parameters prefixed with Permissions.N cannot be specified together. We recommend that you use parameters prefixed with `Permissions.N`.
55180
+ * * The `Permissions.N` prefix is added to certain parameters to generate new parameters. Original parameters and parameters prefixed with Permissions.N cannot be specified together. We recommend that you use parameters prefixed with `Permissions.N`.
54877
55181
  * * You can determine a security group rule by specifying one of the following groups of parameters. You cannot determine a security group rule by specifying only one parameter.
54878
55182
  * * Parameters used to specify a security group rule that controls access to a specified CIDR block: IpProtocol, PortRange, SourcePortRange (optional), NicType, Policy, and DestCidrIp. Sample request:
54879
55183
  * http(s)://ecs.aliyuncs.com/?Action=AuthorizeSecurityGroupEgress
@@ -55038,17 +55342,16 @@ export default class Client extends OpenApi {
55038
55342
  }
55039
55343
 
55040
55344
  /**
55041
- * ## Description
55042
55345
  * When you call this operation, take note of the following items:
55043
55346
  * * The total number of inbound and outbound security group rules in each security group cannot exceed 200. For more information, see the "Security group limits" section in [](~~25412#SecurityGroupQuota1~~).
55044
55347
  * * You can set Policy to accept or drop for each security group rule to allow or deny access.
55045
55348
  * * The valid value of Priority ranges from 1 to 100. A smaller value indicates a higher priority.
55046
55349
  * * When several security group rules have the same priority, drop rules take precedence.
55047
55350
  * * The destination can be a CIDR block specified by DestCidrIp, Ipv6DestCidrIp, or DestPrefixListId or can be Elastic Compute Service (ECS) instances in a security group specified by DestGroupId.
55048
- * * For advanced security groups, security groups cannot be used as authorization objects.
55049
- * * For each basic security group, a maximum of 20 security groups can be used as authorization objects.
55351
+ * * Security groups cannot be referenced as authorization objects in the rules of advanced security groups.
55352
+ * * Up to 20 security groups can be referenced as authorization objects in the rules of each basic security group.
55050
55353
  * * If the specified security group rule exists in the security group, the call is successful but no security group rule is created.
55051
- * * The `Permissions.N` prefix is added to some parameters to generate new parameters. Original parameters and corresponding parameters prefixed with Permissions.N cannot be specified together. We recommend that you use parameters prefixed with `Permissions.N`.
55354
+ * * The `Permissions.N` prefix is added to certain parameters to generate new parameters. Original parameters and parameters prefixed with Permissions.N cannot be specified together. We recommend that you use parameters prefixed with `Permissions.N`.
55052
55355
  * * You can determine a security group rule by specifying one of the following groups of parameters. You cannot determine a security group rule by specifying only one parameter.
55053
55356
  * * Parameters used to specify a security group rule that controls access to a specified CIDR block: IpProtocol, PortRange, SourcePortRange (optional), NicType, Policy, and DestCidrIp. Sample request:
55054
55357
  * http(s)://ecs.aliyuncs.com/?Action=AuthorizeSecurityGroupEgress
@@ -55500,9 +55803,9 @@ export default class Client extends OpenApi {
55500
55803
  }
55501
55804
 
55502
55805
  /**
55503
- * After a public IP address is converted into an EIP, the EIP is billed separately. Make sure that you understand the billing methods of EIPs. For more information, see [Billing overview](~~122035~~).
55806
+ * After a public IP address is converted to an EIP, the EIP is billed separately. Make sure that you understand the billing methods of EIPs. For more information, see [Billing overview](~~122035~~).
55504
55807
  * Before you call this operation, make sure that the following requirements are met:
55505
- * * The instance is in the `Stopped` or `Running` state.
55808
+ * * The instance is in the **Stopped** (`Stopped`) or **Running** (`Running`) state.
55506
55809
  * * No EIPs are associated with the instance.
55507
55810
  * * The instance has no configuration change tasks that have not taken effect.
55508
55811
  * * The public bandwidth of the instance is not 0 Mbit/s.
@@ -55554,9 +55857,9 @@ export default class Client extends OpenApi {
55554
55857
  }
55555
55858
 
55556
55859
  /**
55557
- * After a public IP address is converted into an EIP, the EIP is billed separately. Make sure that you understand the billing methods of EIPs. For more information, see [Billing overview](~~122035~~).
55860
+ * After a public IP address is converted to an EIP, the EIP is billed separately. Make sure that you understand the billing methods of EIPs. For more information, see [Billing overview](~~122035~~).
55558
55861
  * Before you call this operation, make sure that the following requirements are met:
55559
- * * The instance is in the `Stopped` or `Running` state.
55862
+ * * The instance is in the **Stopped** (`Stopped`) or **Running** (`Running`) state.
55560
55863
  * * No EIPs are associated with the instance.
55561
55864
  * * The instance has no configuration change tasks that have not taken effect.
55562
55865
  * * The public bandwidth of the instance is not 0 Mbit/s.
@@ -59564,16 +59867,16 @@ export default class Client extends OpenApi {
59564
59867
  }
59565
59868
 
59566
59869
  /**
59567
- * You can specify `InstanceId` to create a snapshot-consistent group for the specified disks of the instance. You can also specify `DiskId.N` to create a snapshot-consistent group for multiple disks that are attached to multiple instances within the same zone.
59568
- * > You cannot specify both `DiskId.N` and `ExcludeDiskId.N`. If `InstanceId` is specified, `DiskId.N` is only used to specify the disks that are attached to the instance specified by InstanceId.
59870
+ * You can specify `InstanceId` to create a snapshot-consistent group for the specified disks in an instance. You can also specify `DiskId.N` to create a snapshot-consistent group for multiple disks that are attached to multiple instances within the same zone.
59871
+ * > You cannot specify both `DiskId.N` and `ExcludeDiskId.N`. If `InstanceId` is set, you can use `DiskId.N` to specify only disks attached to the instance specified by InstanceId. You cannot use DiskId.N to specify disks attached to multiple instances.
59569
59872
  * When you call this operation, take note of the following items:
59570
59873
  * * The disk for which you want to create a snapshot must be in the **In Use** (`In_use`) or **Unattached** (`Available`) state.
59571
- * * If the disk is in the **In Use** (`In_use`) state, the instance to which the disk is attached must be in the **Running** (`Running`) or **Stopped** (`Stopped`) state.
59874
+ * * If the disk is in the **In Use** (`In_use`) state, the instance to which the disk is attached must be in the **Running** or **Stopped** state.````
59572
59875
  * * If the disk is in the **Unattached** (`Available`) state, make sure that the disk has been attached to an ECS instance. Snapshots cannot be created for disks that have never been attached to ECS instances.
59573
59876
  * * The snapshot-consistent group feature can be used to create snapshots only for enhanced SSDs (ESSDs).
59574
- * * A single snapshot-consistent group can contain snapshots of up to 16 disks including the system disk and data disks and cannot exceed 32 TiB in size.
59877
+ * * A single snapshot-consistent group can contain snapshots of up to 16 disks including the system disk and data disks. A single snapshot-consistent group cannot exceed 32 TiB in size.
59575
59878
  * * Snapshots that you created by using the snapshot-consistent group feature are retained until they are deleted. We recommend that you delete unnecessary snapshots on a regular basis to prevent them from incurring excessive fees.
59576
- * * Snapshot-consistent groups cannot be created for disks that have the multi-attach feature enabled. If disks that have the multi-attach feature enabled are attached to the instance for which you want to create a snapshot-consistent group, you must set the `ExcludeDiskId.N` parameter to exclude these disks.
59879
+ * * Snapshot-consistent groups cannot be created for disks that have the multi-attach feature enabled. If disks that have the multi-attach feature enabled are attached to an instance, you must set the `ExcludeDiskId.N` parameter to exclude these disks.
59577
59880
  * For information about the snapshot-consistent group feature and its billing, see [Create a snapshot-consistent group](~~199625~~).
59578
59881
  *
59579
59882
  * @param request CreateSnapshotGroupRequest
@@ -59661,16 +59964,16 @@ export default class Client extends OpenApi {
59661
59964
  }
59662
59965
 
59663
59966
  /**
59664
- * You can specify `InstanceId` to create a snapshot-consistent group for the specified disks of the instance. You can also specify `DiskId.N` to create a snapshot-consistent group for multiple disks that are attached to multiple instances within the same zone.
59665
- * > You cannot specify both `DiskId.N` and `ExcludeDiskId.N`. If `InstanceId` is specified, `DiskId.N` is only used to specify the disks that are attached to the instance specified by InstanceId.
59967
+ * You can specify `InstanceId` to create a snapshot-consistent group for the specified disks in an instance. You can also specify `DiskId.N` to create a snapshot-consistent group for multiple disks that are attached to multiple instances within the same zone.
59968
+ * > You cannot specify both `DiskId.N` and `ExcludeDiskId.N`. If `InstanceId` is set, you can use `DiskId.N` to specify only disks attached to the instance specified by InstanceId. You cannot use DiskId.N to specify disks attached to multiple instances.
59666
59969
  * When you call this operation, take note of the following items:
59667
59970
  * * The disk for which you want to create a snapshot must be in the **In Use** (`In_use`) or **Unattached** (`Available`) state.
59668
- * * If the disk is in the **In Use** (`In_use`) state, the instance to which the disk is attached must be in the **Running** (`Running`) or **Stopped** (`Stopped`) state.
59971
+ * * If the disk is in the **In Use** (`In_use`) state, the instance to which the disk is attached must be in the **Running** or **Stopped** state.````
59669
59972
  * * If the disk is in the **Unattached** (`Available`) state, make sure that the disk has been attached to an ECS instance. Snapshots cannot be created for disks that have never been attached to ECS instances.
59670
59973
  * * The snapshot-consistent group feature can be used to create snapshots only for enhanced SSDs (ESSDs).
59671
- * * A single snapshot-consistent group can contain snapshots of up to 16 disks including the system disk and data disks and cannot exceed 32 TiB in size.
59974
+ * * A single snapshot-consistent group can contain snapshots of up to 16 disks including the system disk and data disks. A single snapshot-consistent group cannot exceed 32 TiB in size.
59672
59975
  * * Snapshots that you created by using the snapshot-consistent group feature are retained until they are deleted. We recommend that you delete unnecessary snapshots on a regular basis to prevent them from incurring excessive fees.
59673
- * * Snapshot-consistent groups cannot be created for disks that have the multi-attach feature enabled. If disks that have the multi-attach feature enabled are attached to the instance for which you want to create a snapshot-consistent group, you must set the `ExcludeDiskId.N` parameter to exclude these disks.
59976
+ * * Snapshot-consistent groups cannot be created for disks that have the multi-attach feature enabled. If disks that have the multi-attach feature enabled are attached to an instance, you must set the `ExcludeDiskId.N` parameter to exclude these disks.
59674
59977
  * For information about the snapshot-consistent group feature and its billing, see [Create a snapshot-consistent group](~~199625~~).
59675
59978
  *
59676
59979
  * @param request CreateSnapshotGroupRequest
@@ -61996,7 +62299,7 @@ export default class Client extends OpenApi {
61996
62299
  /**
61997
62300
  * When you call this operation, take note of the following items:
61998
62301
  * * If the specified snapshot does not exist, the request is ignored.
61999
- * * If the specified snapshot has been used to create custom images, the snapshot cannot be deleted. You must call the [DeleteImage](~~25537~~) operation to delete the custom images before you can delete the snapshot.
62302
+ * * If a snapshot has been used to create custom images, the snapshot cannot be deleted. You must call the [DeleteImage](~~25537~~) operation to delete the custom images before you can delete the snapshot.
62000
62303
  * * If the specified snapshot has been used to create disks and the `Force` parameter is not specified or is set to `false`, the snapshot cannot be deleted directly. If you want to delete the snapshot, set the `Force` parameter to true to forcefully delete the snapshot. The disks created from the snapshot cannot be re-initialized after the snapshot is forcefully deleted.
62001
62304
  *
62002
62305
  * @param request DeleteSnapshotRequest
@@ -62050,7 +62353,7 @@ export default class Client extends OpenApi {
62050
62353
  /**
62051
62354
  * When you call this operation, take note of the following items:
62052
62355
  * * If the specified snapshot does not exist, the request is ignored.
62053
- * * If the specified snapshot has been used to create custom images, the snapshot cannot be deleted. You must call the [DeleteImage](~~25537~~) operation to delete the custom images before you can delete the snapshot.
62356
+ * * If a snapshot has been used to create custom images, the snapshot cannot be deleted. You must call the [DeleteImage](~~25537~~) operation to delete the custom images before you can delete the snapshot.
62054
62357
  * * If the specified snapshot has been used to create disks and the `Force` parameter is not specified or is set to `false`, the snapshot cannot be deleted directly. If you want to delete the snapshot, set the `Force` parameter to true to forcefully delete the snapshot. The disks created from the snapshot cannot be re-initialized after the snapshot is forcefully deleted.
62055
62358
  *
62056
62359
  * @param request DeleteSnapshotRequest
@@ -62505,7 +62808,7 @@ export default class Client extends OpenApi {
62505
62808
 
62506
62809
  /**
62507
62810
  * After you [create](https://account.alibabacloud.com/register/intl_register.htm) an Alibaba Cloud account, you can create a specific number of ECS instances in different regions within the account. For more information, see [Limits](~~25412~~).
62508
- * You can also [submit a ticket](https://workorder-intl.console.aliyun.com/#/ticket/createIndex) to request a quota increase.
62811
+ * You can apply for a quota increase in the [Quota Center console](https://ecs.console.aliyun.com/?#/privilegeQuotaV2/region/cn-hangzhou?subTab=userQuota).
62509
62812
  *
62510
62813
  * @param request DescribeAccountAttributesRequest
62511
62814
  * @param runtime runtime options for this request RuntimeOptions
@@ -62557,7 +62860,7 @@ export default class Client extends OpenApi {
62557
62860
 
62558
62861
  /**
62559
62862
  * After you [create](https://account.alibabacloud.com/register/intl_register.htm) an Alibaba Cloud account, you can create a specific number of ECS instances in different regions within the account. For more information, see [Limits](~~25412~~).
62560
- * You can also [submit a ticket](https://workorder-intl.console.aliyun.com/#/ticket/createIndex) to request a quota increase.
62863
+ * You can apply for a quota increase in the [Quota Center console](https://ecs.console.aliyun.com/?#/privilegeQuotaV2/region/cn-hangzhou?subTab=userQuota).
62561
62864
  *
62562
62865
  * @param request DescribeAccountAttributesRequest
62563
62866
  * @return DescribeAccountAttributesResponse
@@ -64896,7 +65199,7 @@ export default class Client extends OpenApi {
64896
65199
  }
64897
65200
 
64898
65201
  /**
64899
- * When an elasticity assurance expires, data about the association between instances and the private pool generated by the elasticity assurance becomes invalid. When you call this operation to query the expired elasticity assurance, no value is returned.
65202
+ * When an elasticity assurance expires, data about the association between the instances and the private pool generated by the elasticity assurance becomes invalid. When you call this operation to query the expired elasticity assurance, no value is returned.
64900
65203
  *
64901
65204
  * @param request DescribeElasticityAssuranceInstancesRequest
64902
65205
  * @param runtime runtime options for this request RuntimeOptions
@@ -64955,7 +65258,7 @@ export default class Client extends OpenApi {
64955
65258
  }
64956
65259
 
64957
65260
  /**
64958
- * When an elasticity assurance expires, data about the association between instances and the private pool generated by the elasticity assurance becomes invalid. When you call this operation to query the expired elasticity assurance, no value is returned.
65261
+ * When an elasticity assurance expires, data about the association between the instances and the private pool generated by the elasticity assurance becomes invalid. When you call this operation to query the expired elasticity assurance, no value is returned.
64959
65262
  *
64960
65263
  * @param request DescribeElasticityAssuranceInstancesRequest
64961
65264
  * @return DescribeElasticityAssuranceInstancesResponse
@@ -65747,6 +66050,10 @@ export default class Client extends OpenApi {
65747
66050
  async describeImageSupportInstanceTypesWithOptions(request: DescribeImageSupportInstanceTypesRequest, runtime: $Util.RuntimeOptions): Promise<DescribeImageSupportInstanceTypesResponse> {
65748
66051
  Util.validateModel(request);
65749
66052
  let query = { };
66053
+ if (!Util.isUnset(request.actionType)) {
66054
+ query["ActionType"] = request.actionType;
66055
+ }
66056
+
65750
66057
  if (!Util.isUnset(request.filter)) {
65751
66058
  query["Filter"] = request.filter;
65752
66059
  }
@@ -66645,7 +66952,7 @@ export default class Client extends OpenApi {
66645
66952
  }
66646
66953
 
66647
66954
  /**
66648
- * > The DescribeInstanceTopology operation is in invitational preview and is not commercially available.
66955
+ * > The DescribeInstanceTopology operation is in invitational preview and is not commercially available.
66649
66956
  *
66650
66957
  * @param request DescribeInstanceTopologyRequest
66651
66958
  * @param runtime runtime options for this request RuntimeOptions
@@ -66692,7 +66999,7 @@ export default class Client extends OpenApi {
66692
66999
  }
66693
67000
 
66694
67001
  /**
66695
- * > The DescribeInstanceTopology operation is in invitational preview and is not commercially available.
67002
+ * > The DescribeInstanceTopology operation is in invitational preview and is not commercially available.
66696
67003
  *
66697
67004
  * @param request DescribeInstanceTopologyRequest
66698
67005
  * @return DescribeInstanceTopologyResponse
@@ -67031,13 +67338,13 @@ export default class Client extends OpenApi {
67031
67338
  * When you call this operation, take note of the following items:
67032
67339
  * * The URL returned is valid only for 15 seconds. If a connection is not established within 15 seconds after a successful query, the URL expires and you must query it again.
67033
67340
  * * The **KeepAlive** time of a connection to a VNC management terminal is 60 seconds. If you do not interact with the VNC management terminal within 60 seconds, the VNC management terminal is automatically disconnected.
67034
- * * When the VNC management terminal is disconnected, you can only reconnect to the VNC management terminal up to 30 times a minute.
67035
- * * You need to add `vncUrl`, `instanceId`, `isWindows`, and `password` parameters at the end of the URL `https://g.alicdn.com/aliyun/ecs-console-vnc2/0.0.8/index.html?`. Separate each parameter with an ampersand (`&`).`` Where,
67036
- * * `vncUrl:` the `VncUrl` value returned after a successful query.
67341
+ * * After the VNC management terminal is disconnected, you can only reconnect to the VNC management terminal a maximum of 30 times a minute.
67342
+ * * You need to add `vncUrl`, `instanceId`, `isWindows`, and `password` parameters at the end of the URL `https://g.alicdn.com/aliyun/ecs-console-vnc2/0.0.8/index.html?`. Separate each parameter with an ampersand (`&`).``
67343
+ * * `vncUrl:` the value of the `VncUrl` parameter that is returned after a successful query.
67037
67344
  * * `instanceId:` the ID of your instance.
67038
67345
  * * `isWindows:` specifies whether the operating system of the instance is Windows. Set the parameter to `true` if the operating system is Windows. Set the parameter to `false` if the operating system is not Windows.
67039
- * * `password:` Optional. A six-character password used to connect to the VNC management terminal. It can contain digits and letters. You do not need to enter your password again when the connection is being established if you set this parameter.
67040
- * Example:
67346
+ * * `password:` Optional. A six-character password that is used to connect to the VNC management terminal. It can contain digits and letters. If you specify this parameter, you do not need to enter your password again when the connection is being established.
67347
+ * Examples:
67041
67348
  * ```
67042
67349
  * ```
67043
67350
  * <https://g.alicdn.com/aliyun/ecs-console-vnc2/0.0.8/index.html?vncUrl=ws%3A%2F%\\\\*\\\\*\\\\*\\\\*&instanceId=i-wz9hhwq5a6tm\\\\*\\\\*\\\\*\\\\*&isWindows=true> \\`\\`\\`
@@ -67097,13 +67404,13 @@ export default class Client extends OpenApi {
67097
67404
  * When you call this operation, take note of the following items:
67098
67405
  * * The URL returned is valid only for 15 seconds. If a connection is not established within 15 seconds after a successful query, the URL expires and you must query it again.
67099
67406
  * * The **KeepAlive** time of a connection to a VNC management terminal is 60 seconds. If you do not interact with the VNC management terminal within 60 seconds, the VNC management terminal is automatically disconnected.
67100
- * * When the VNC management terminal is disconnected, you can only reconnect to the VNC management terminal up to 30 times a minute.
67101
- * * You need to add `vncUrl`, `instanceId`, `isWindows`, and `password` parameters at the end of the URL `https://g.alicdn.com/aliyun/ecs-console-vnc2/0.0.8/index.html?`. Separate each parameter with an ampersand (`&`).`` Where,
67102
- * * `vncUrl:` the `VncUrl` value returned after a successful query.
67407
+ * * After the VNC management terminal is disconnected, you can only reconnect to the VNC management terminal a maximum of 30 times a minute.
67408
+ * * You need to add `vncUrl`, `instanceId`, `isWindows`, and `password` parameters at the end of the URL `https://g.alicdn.com/aliyun/ecs-console-vnc2/0.0.8/index.html?`. Separate each parameter with an ampersand (`&`).``
67409
+ * * `vncUrl:` the value of the `VncUrl` parameter that is returned after a successful query.
67103
67410
  * * `instanceId:` the ID of your instance.
67104
67411
  * * `isWindows:` specifies whether the operating system of the instance is Windows. Set the parameter to `true` if the operating system is Windows. Set the parameter to `false` if the operating system is not Windows.
67105
- * * `password:` Optional. A six-character password used to connect to the VNC management terminal. It can contain digits and letters. You do not need to enter your password again when the connection is being established if you set this parameter.
67106
- * Example:
67412
+ * * `password:` Optional. A six-character password that is used to connect to the VNC management terminal. It can contain digits and letters. If you specify this parameter, you do not need to enter your password again when the connection is being established.
67413
+ * Examples:
67107
67414
  * ```
67108
67415
  * ```
67109
67416
  * <https://g.alicdn.com/aliyun/ecs-console-vnc2/0.0.8/index.html?vncUrl=ws%3A%2F%\\\\*\\\\*\\\\*\\\\*&instanceId=i-wz9hhwq5a6tm\\\\*\\\\*\\\\*\\\\*&isWindows=true> \\`\\`\\`
@@ -67338,7 +67645,7 @@ export default class Client extends OpenApi {
67338
67645
  }
67339
67646
 
67340
67647
  /**
67341
- * The response includes instance states and instance system events in the Scheduled state.
67648
+ * The response includes instance states and instance system events that are in the Scheduled state.
67342
67649
  * If a period is specified, events are queried based on the specified period.
67343
67650
  *
67344
67651
  * @param request DescribeInstancesFullStatusRequest
@@ -67430,7 +67737,7 @@ export default class Client extends OpenApi {
67430
67737
  }
67431
67738
 
67432
67739
  /**
67433
- * The response includes instance states and instance system events in the Scheduled state.
67740
+ * The response includes instance states and instance system events that are in the Scheduled state.
67434
67741
  * If a period is specified, events are queried based on the specified period.
67435
67742
  *
67436
67743
  * @param request DescribeInstancesFullStatusRequest
@@ -69364,6 +69671,10 @@ export default class Client extends OpenApi {
69364
69671
  async describeResourcesModificationWithOptions(request: DescribeResourcesModificationRequest, runtime: $Util.RuntimeOptions): Promise<DescribeResourcesModificationResponse> {
69365
69672
  Util.validateModel(request);
69366
69673
  let query = { };
69674
+ if (!Util.isUnset(request.conditions)) {
69675
+ query["Conditions"] = request.conditions;
69676
+ }
69677
+
69367
69678
  if (!Util.isUnset(request.cores)) {
69368
69679
  query["Cores"] = request.cores;
69369
69680
  }
@@ -71685,11 +71996,11 @@ export default class Client extends OpenApi {
71685
71996
 
71686
71997
  /**
71687
71998
  * When you call this operation, take note of the following items:
71688
- * * The disk you want to detach must be in the `In_Use` state.
71689
- * * The instance from which you want to detach a data disk must be in the `Running` or `Stopped`state.********
71690
- * * The instance from which you want to detach the system disk must be in the `Stopped` state.****
71691
- * * If the response contains `{"OperationLocks": {"LockReason" : "security"}}`, the instance is locked for security reasons. No operations are allowed on the instance.``
71692
- * * DetachDisk is an asynchronous operation. It takes about one minute for a disk to be detached from an instance after the operation is called.
71999
+ * * The disk that you want to detach must be in the In Use (`In_Use`) state.
72000
+ * * The instance from which you want to detach a data disk must be in the **Running** (`Running`) or **Stopped** (`Stopped`) state.
72001
+ * * The instance from which you want to detach the system disk must be in the **Stopped** (`Stopped`) state.
72002
+ * * If the `OperationLocks` parameter in the response contains `"LockReason" : "security"` when you query the instance information, the instance is locked for security reasons and all operations do not take effect on the instance.
72003
+ * * DetachDisk is an asynchronous operation. It takes about 1 minute for a disk to be detached from an instance after the operation is called.
71693
72004
  *
71694
72005
  * @param request DetachDiskRequest
71695
72006
  * @param runtime runtime options for this request RuntimeOptions
@@ -71745,11 +72056,11 @@ export default class Client extends OpenApi {
71745
72056
 
71746
72057
  /**
71747
72058
  * When you call this operation, take note of the following items:
71748
- * * The disk you want to detach must be in the `In_Use` state.
71749
- * * The instance from which you want to detach a data disk must be in the `Running` or `Stopped`state.********
71750
- * * The instance from which you want to detach the system disk must be in the `Stopped` state.****
71751
- * * If the response contains `{"OperationLocks": {"LockReason" : "security"}}`, the instance is locked for security reasons. No operations are allowed on the instance.``
71752
- * * DetachDisk is an asynchronous operation. It takes about one minute for a disk to be detached from an instance after the operation is called.
72059
+ * * The disk that you want to detach must be in the In Use (`In_Use`) state.
72060
+ * * The instance from which you want to detach a data disk must be in the **Running** (`Running`) or **Stopped** (`Stopped`) state.
72061
+ * * The instance from which you want to detach the system disk must be in the **Stopped** (`Stopped`) state.
72062
+ * * If the `OperationLocks` parameter in the response contains `"LockReason" : "security"` when you query the instance information, the instance is locked for security reasons and all operations do not take effect on the instance.
72063
+ * * DetachDisk is an asynchronous operation. It takes about 1 minute for a disk to be detached from an instance after the operation is called.
71753
72064
  *
71754
72065
  * @param request DetachDiskRequest
71755
72066
  * @return DetachDiskResponse
@@ -73052,6 +73363,13 @@ export default class Client extends OpenApi {
73052
73363
  return await this.importSnapshotWithOptions(request, runtime);
73053
73364
  }
73054
73365
 
73366
+ /**
73367
+ * After you call the InstallCloudAssistant operation and then the [RebootInstance](~~25502~~) operation, the Cloud Assistant client is installed and takes effect.
73368
+ *
73369
+ * @param request InstallCloudAssistantRequest
73370
+ * @param runtime runtime options for this request RuntimeOptions
73371
+ * @return InstallCloudAssistantResponse
73372
+ */
73055
73373
  async installCloudAssistantWithOptions(request: InstallCloudAssistantRequest, runtime: $Util.RuntimeOptions): Promise<InstallCloudAssistantResponse> {
73056
73374
  Util.validateModel(request);
73057
73375
  let query = { };
@@ -73100,6 +73418,12 @@ export default class Client extends OpenApi {
73100
73418
  return $tea.cast<InstallCloudAssistantResponse>(await this.callApi(params, req, runtime), new InstallCloudAssistantResponse({}));
73101
73419
  }
73102
73420
 
73421
+ /**
73422
+ * After you call the InstallCloudAssistant operation and then the [RebootInstance](~~25502~~) operation, the Cloud Assistant client is installed and takes effect.
73423
+ *
73424
+ * @param request InstallCloudAssistantRequest
73425
+ * @return InstallCloudAssistantResponse
73426
+ */
73103
73427
  async installCloudAssistant(request: InstallCloudAssistantRequest): Promise<InstallCloudAssistantResponse> {
73104
73428
  let runtime = new $Util.RuntimeOptions({ });
73105
73429
  return await this.installCloudAssistantWithOptions(request, runtime);
@@ -73665,7 +73989,7 @@ export default class Client extends OpenApi {
73665
73989
 
73666
73990
  /**
73667
73991
  * Before you call this operation, take note of the following items:
73668
- * * If you modify the capacity or capacity-related settings of an auto provisioning group, the group executes the scheduling task once after the modification.
73992
+ * * If you modify the capacity or capacity-related settings of an auto provisioning group, the group executes a scheduling task once after the group is modified.
73669
73993
  * * You cannot modify an auto provisioning group when the group is being deleted.
73670
73994
  *
73671
73995
  * @param request ModifyAutoProvisioningGroupRequest
@@ -73754,7 +74078,7 @@ export default class Client extends OpenApi {
73754
74078
 
73755
74079
  /**
73756
74080
  * Before you call this operation, take note of the following items:
73757
- * * If you modify the capacity or capacity-related settings of an auto provisioning group, the group executes the scheduling task once after the modification.
74081
+ * * If you modify the capacity or capacity-related settings of an auto provisioning group, the group executes a scheduling task once after the group is modified.
73758
74082
  * * You cannot modify an auto provisioning group when the group is being deleted.
73759
74083
  *
73760
74084
  * @param request ModifyAutoProvisioningGroupRequest
@@ -74535,6 +74859,14 @@ export default class Client extends OpenApi {
74535
74859
  return await this.modifyDedicatedHostsChargeTypeWithOptions(request, runtime);
74536
74860
  }
74537
74861
 
74862
+ /**
74863
+ * You can call this operation to modify the demand information about instance types. Alibaba Cloud provides the requested resources based on your demand. You can file demands only for I/O optimized instance types and instances of the virtual private cloud (VPC) type. Parameters except `DemandName` and `DemandDescription` can be modified only for demands that are in the Rejected state.
74864
+ * > This operation is in internal preview and has not been officially released. We recommend that you do not use this operation.
74865
+ *
74866
+ * @param request ModifyDemandRequest
74867
+ * @param runtime runtime options for this request RuntimeOptions
74868
+ * @return ModifyDemandResponse
74869
+ */
74538
74870
  async modifyDemandWithOptions(request: ModifyDemandRequest, runtime: $Util.RuntimeOptions): Promise<ModifyDemandResponse> {
74539
74871
  Util.validateModel(request);
74540
74872
  let query = { };
@@ -74623,6 +74955,13 @@ export default class Client extends OpenApi {
74623
74955
  return $tea.cast<ModifyDemandResponse>(await this.callApi(params, req, runtime), new ModifyDemandResponse({}));
74624
74956
  }
74625
74957
 
74958
+ /**
74959
+ * You can call this operation to modify the demand information about instance types. Alibaba Cloud provides the requested resources based on your demand. You can file demands only for I/O optimized instance types and instances of the virtual private cloud (VPC) type. Parameters except `DemandName` and `DemandDescription` can be modified only for demands that are in the Rejected state.
74960
+ * > This operation is in internal preview and has not been officially released. We recommend that you do not use this operation.
74961
+ *
74962
+ * @param request ModifyDemandRequest
74963
+ * @return ModifyDemandResponse
74964
+ */
74626
74965
  async modifyDemand(request: ModifyDemandRequest): Promise<ModifyDemandResponse> {
74627
74966
  let runtime = new $Util.RuntimeOptions({ });
74628
74967
  return await this.modifyDemandWithOptions(request, runtime);
@@ -74920,6 +75259,83 @@ export default class Client extends OpenApi {
74920
75259
  return await this.modifyDiskChargeTypeWithOptions(request, runtime);
74921
75260
  }
74922
75261
 
75262
+ async modifyDiskDeploymentWithOptions(request: ModifyDiskDeploymentRequest, runtime: $Util.RuntimeOptions): Promise<ModifyDiskDeploymentResponse> {
75263
+ Util.validateModel(request);
75264
+ let query = { };
75265
+ if (!Util.isUnset(request.diskCategory)) {
75266
+ query["DiskCategory"] = request.diskCategory;
75267
+ }
75268
+
75269
+ if (!Util.isUnset(request.diskId)) {
75270
+ query["DiskId"] = request.diskId;
75271
+ }
75272
+
75273
+ if (!Util.isUnset(request.dryRun)) {
75274
+ query["DryRun"] = request.dryRun;
75275
+ }
75276
+
75277
+ if (!Util.isUnset(request.ownerAccount)) {
75278
+ query["OwnerAccount"] = request.ownerAccount;
75279
+ }
75280
+
75281
+ if (!Util.isUnset(request.ownerId)) {
75282
+ query["OwnerId"] = request.ownerId;
75283
+ }
75284
+
75285
+ if (!Util.isUnset(request.performanceLevel)) {
75286
+ query["PerformanceLevel"] = request.performanceLevel;
75287
+ }
75288
+
75289
+ if (!Util.isUnset(request.resourceOwnerAccount)) {
75290
+ query["ResourceOwnerAccount"] = request.resourceOwnerAccount;
75291
+ }
75292
+
75293
+ if (!Util.isUnset(request.resourceOwnerId)) {
75294
+ query["ResourceOwnerId"] = request.resourceOwnerId;
75295
+ }
75296
+
75297
+ if (!Util.isUnset(request.storageClusterId)) {
75298
+ query["StorageClusterId"] = request.storageClusterId;
75299
+ }
75300
+
75301
+ let req = new $OpenApi.OpenApiRequest({
75302
+ query: OpenApiUtil.query(query),
75303
+ });
75304
+ let params = new $OpenApi.Params({
75305
+ action: "ModifyDiskDeployment",
75306
+ version: "2014-05-26",
75307
+ protocol: "HTTPS",
75308
+ pathname: "/",
75309
+ method: "POST",
75310
+ authType: "AK",
75311
+ style: "RPC",
75312
+ reqBodyType: "formData",
75313
+ bodyType: "json",
75314
+ });
75315
+ return $tea.cast<ModifyDiskDeploymentResponse>(await this.callApi(params, req, runtime), new ModifyDiskDeploymentResponse({}));
75316
+ }
75317
+
75318
+ async modifyDiskDeployment(request: ModifyDiskDeploymentRequest): Promise<ModifyDiskDeploymentResponse> {
75319
+ let runtime = new $Util.RuntimeOptions({ });
75320
+ return await this.modifyDiskDeploymentWithOptions(request, runtime);
75321
+ }
75322
+
75323
+ /**
75324
+ * ## Description
75325
+ * When you call this operation, take note of the following items:
75326
+ * * To modify the performance level of an ESSD, take note of the following items:
75327
+ * * For a subscription ESSD, you can only upgrade its performance level.
75328
+ * * For a pay-as-you-go ESSD, You can upgrade or downgrade its performance level. However, you cannot downgrade the performance level to PL0.
75329
+ * * The ESSD must be in the **In Use** (In_Use) or **Unattached** (Available) state.
75330
+ * * If the ESSD is attached to an ECS instance, the instance must be in the **Running** (Running) or **Stopped** (Stopped) state. The instance cannot be in the Expired state or stopped due to an overdue payment.
75331
+ * * If you cannot upgrade the performance level of the ESSD due to its capacity, resize the ESSD by calling the [ResizeDisk](~~25522~~) operation and then try again. For more information, see [Enhanced SSDs](~~122389~~).
75332
+ * * For more information about the limits on changing the category of a disk, see the "Limits" section of the [Change the category of a disk](~~161980~~) topic.
75333
+ * The new disk category or performance level takes effect immediately after this operation is executed. Alibaba Cloud calculates the bill based on the new disk category and performance level.
75334
+ *
75335
+ * @param request ModifyDiskSpecRequest
75336
+ * @param runtime runtime options for this request RuntimeOptions
75337
+ * @return ModifyDiskSpecResponse
75338
+ */
74923
75339
  async modifyDiskSpecWithOptions(request: ModifyDiskSpecRequest, runtime: $Util.RuntimeOptions): Promise<ModifyDiskSpecResponse> {
74924
75340
  Util.validateModel(request);
74925
75341
  let query = { };
@@ -74943,6 +75359,10 @@ export default class Client extends OpenApi {
74943
75359
  query["OwnerId"] = request.ownerId;
74944
75360
  }
74945
75361
 
75362
+ if (!Util.isUnset(request.performanceControlOptions)) {
75363
+ query["PerformanceControlOptions"] = request.performanceControlOptions;
75364
+ }
75365
+
74946
75366
  if (!Util.isUnset(request.performanceLevel)) {
74947
75367
  query["PerformanceLevel"] = request.performanceLevel;
74948
75368
  }
@@ -74976,6 +75396,21 @@ export default class Client extends OpenApi {
74976
75396
  return $tea.cast<ModifyDiskSpecResponse>(await this.callApi(params, req, runtime), new ModifyDiskSpecResponse({}));
74977
75397
  }
74978
75398
 
75399
+ /**
75400
+ * ## Description
75401
+ * When you call this operation, take note of the following items:
75402
+ * * To modify the performance level of an ESSD, take note of the following items:
75403
+ * * For a subscription ESSD, you can only upgrade its performance level.
75404
+ * * For a pay-as-you-go ESSD, You can upgrade or downgrade its performance level. However, you cannot downgrade the performance level to PL0.
75405
+ * * The ESSD must be in the **In Use** (In_Use) or **Unattached** (Available) state.
75406
+ * * If the ESSD is attached to an ECS instance, the instance must be in the **Running** (Running) or **Stopped** (Stopped) state. The instance cannot be in the Expired state or stopped due to an overdue payment.
75407
+ * * If you cannot upgrade the performance level of the ESSD due to its capacity, resize the ESSD by calling the [ResizeDisk](~~25522~~) operation and then try again. For more information, see [Enhanced SSDs](~~122389~~).
75408
+ * * For more information about the limits on changing the category of a disk, see the "Limits" section of the [Change the category of a disk](~~161980~~) topic.
75409
+ * The new disk category or performance level takes effect immediately after this operation is executed. Alibaba Cloud calculates the bill based on the new disk category and performance level.
75410
+ *
75411
+ * @param request ModifyDiskSpecRequest
75412
+ * @return ModifyDiskSpecResponse
75413
+ */
74979
75414
  async modifyDiskSpec(request: ModifyDiskSpecRequest): Promise<ModifyDiskSpecResponse> {
74980
75415
  let runtime = new $Util.RuntimeOptions({ });
74981
75416
  return await this.modifyDiskSpecWithOptions(request, runtime);
@@ -75574,6 +76009,20 @@ export default class Client extends OpenApi {
75574
76009
  return await this.modifyImageSharePermissionWithOptions(request, runtime);
75575
76010
  }
75576
76011
 
76012
+ /**
76013
+ * A private pool is generated after an elasticity assurance or a capacity reservation is created. The private pool is associated with information about instances that are created by using the private pool. You can also use a private pool when you create an ECS instance, so that the instance can be matched to the elasticity assurance or capacity reservation associated with the private pool.
76014
+ * * After you call this operation to modify the attributes of the private pool for an instance, you do not need to restart the instance.
76015
+ * * When you call the following operations, the system rematches the instance with private pools. If the instance already matches a specified private pool, the call to an operation may fail when the private pool capacity is used up or because the private pool expires. If the call fails, call the ModifyInstanceAttachmentAttributes operation to change the match mode of the private pool to `Open`.
76016
+ * * StartInstance
76017
+ * * ReActivateInstances
76018
+ * * ModifyInstanceChargeType
76019
+ * * ModifyPrepayInstanceSpec
76020
+ * * ReplaceSystemDisk
76021
+ *
76022
+ * @param request ModifyInstanceAttachmentAttributesRequest
76023
+ * @param runtime runtime options for this request RuntimeOptions
76024
+ * @return ModifyInstanceAttachmentAttributesResponse
76025
+ */
75577
76026
  async modifyInstanceAttachmentAttributesWithOptions(request: ModifyInstanceAttachmentAttributesRequest, runtime: $Util.RuntimeOptions): Promise<ModifyInstanceAttachmentAttributesResponse> {
75578
76027
  Util.validateModel(request);
75579
76028
  let query = { };
@@ -75622,6 +76071,19 @@ export default class Client extends OpenApi {
75622
76071
  return $tea.cast<ModifyInstanceAttachmentAttributesResponse>(await this.callApi(params, req, runtime), new ModifyInstanceAttachmentAttributesResponse({}));
75623
76072
  }
75624
76073
 
76074
+ /**
76075
+ * A private pool is generated after an elasticity assurance or a capacity reservation is created. The private pool is associated with information about instances that are created by using the private pool. You can also use a private pool when you create an ECS instance, so that the instance can be matched to the elasticity assurance or capacity reservation associated with the private pool.
76076
+ * * After you call this operation to modify the attributes of the private pool for an instance, you do not need to restart the instance.
76077
+ * * When you call the following operations, the system rematches the instance with private pools. If the instance already matches a specified private pool, the call to an operation may fail when the private pool capacity is used up or because the private pool expires. If the call fails, call the ModifyInstanceAttachmentAttributes operation to change the match mode of the private pool to `Open`.
76078
+ * * StartInstance
76079
+ * * ReActivateInstances
76080
+ * * ModifyInstanceChargeType
76081
+ * * ModifyPrepayInstanceSpec
76082
+ * * ReplaceSystemDisk
76083
+ *
76084
+ * @param request ModifyInstanceAttachmentAttributesRequest
76085
+ * @return ModifyInstanceAttachmentAttributesResponse
76086
+ */
75625
76087
  async modifyInstanceAttachmentAttributes(request: ModifyInstanceAttachmentAttributesRequest): Promise<ModifyInstanceAttachmentAttributesResponse> {
75626
76088
  let runtime = new $Util.RuntimeOptions({ });
75627
76089
  return await this.modifyInstanceAttachmentAttributesWithOptions(request, runtime);
@@ -75819,9 +76281,8 @@ export default class Client extends OpenApi {
75819
76281
  }
75820
76282
 
75821
76283
  /**
75822
- * Before you call this operation, make sure that you understand the billing methods and pricing schedule of Elastic Compute Service (ECS). For more information, see the [Elastic Compute Service](https://www.aliyun.com/price/product#/ecs/detail) product page.
75823
- * * The payment for auto-renewal is first deducted automatically at 08:00:00 (UTC+8) nine days before the instance expires.
75824
- * * If the subscription period of a new instance is one week, the renewal payment is automatically deducted on the day the instance is created.
76284
+ * Before you call this operation, make sure that you are familiar with the billing methods and pricing schedule of Elastic Compute Service (ECS). For more information, see the [Elastic Compute Service](https://www.alibabacloud.com/product/ecs#pricing) product page.
76285
+ * * The payment for auto-renewal is deducted automatically at 08:00:00 (UTC+8) nine days before the instance expires.
75825
76286
  * * If the first deduction attempt fails, Alibaba Cloud attempts to deduct the payment each day until the payment is deducted or until the instance is locked after the nine-day period ends. Make sure that your account balance or credit balance is sufficient.
75826
76287
  *
75827
76288
  * @param request ModifyInstanceAutoRenewAttributeRequest
@@ -75889,9 +76350,8 @@ export default class Client extends OpenApi {
75889
76350
  }
75890
76351
 
75891
76352
  /**
75892
- * Before you call this operation, make sure that you understand the billing methods and pricing schedule of Elastic Compute Service (ECS). For more information, see the [Elastic Compute Service](https://www.aliyun.com/price/product#/ecs/detail) product page.
75893
- * * The payment for auto-renewal is first deducted automatically at 08:00:00 (UTC+8) nine days before the instance expires.
75894
- * * If the subscription period of a new instance is one week, the renewal payment is automatically deducted on the day the instance is created.
76353
+ * Before you call this operation, make sure that you are familiar with the billing methods and pricing schedule of Elastic Compute Service (ECS). For more information, see the [Elastic Compute Service](https://www.alibabacloud.com/product/ecs#pricing) product page.
76354
+ * * The payment for auto-renewal is deducted automatically at 08:00:00 (UTC+8) nine days before the instance expires.
75895
76355
  * * If the first deduction attempt fails, Alibaba Cloud attempts to deduct the payment each day until the payment is deducted or until the instance is locked after the nine-day period ends. Make sure that your account balance or credit balance is sufficient.
75896
76356
  *
75897
76357
  * @param request ModifyInstanceAutoRenewAttributeRequest
@@ -75903,17 +76363,17 @@ export default class Client extends OpenApi {
75903
76363
  }
75904
76364
 
75905
76365
  /**
75906
- * Before you call this operation, make sure that you understand the billing methods and pricing schedule of ECS. For more information, see the [Elastic Compute Service](https://www.alibabacloud.com/product/ecs#pricing) product page.
76366
+ * Before you call this operation, make sure that you are familiar with the billing methods and pricing of ECS. For more information, see the [Elastic Compute Service](https://www.alibabacloud.com/product/ecs#pricing) product page.
75907
76367
  * When you call this operation, take note of the following items:
75908
- * * The instances must be in the **Running** (`Running`) or **Stopped** (`Stopped`) state, and you have no overdue payments for them.
75909
- * * After you change the billing method, automatic payment is enabled by default. Make sure that you have sufficient balance in your account. Otherwise, your order becomes invalid and is canceled. 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 [ECS console](https://ecs.console.aliyun.com/) to pay for the order.
75910
- * * **Change the billing method from subscription to pay-as-you-go**:
75911
- * * Your ECS usage determines whether the billing method of an instance can be changed from subscription to pay-as-you-go.
75912
- * * After you change the billing method of an instance from subscription to pay-as-you-go, the new billing method remains in effect for the remaining lifecycle of the instance. The price difference is refunded to the payment account that you used. Vouchers that have been redeemed are not refundable.
75913
- * * **Refund rule**: You have a quota for the total refund amount each month, and unused balance of this quota is not carried forward into the next month. After you use up the refund quota of the current month, you can change the billing method only when the next month arrives. The refund amount incurred when you change the billing method is calculated based on the following formula: **Number of vCPUs × (Number of remaining days × 24 ± Number of remaining or elapsed hours)**.
75914
- * * **Change the billing method from pay-as-you-go to subscription**:
75915
- * * You can change the billing method of all data disks attached to an instance from pay-as-you-go to subscription.
75916
- * * This operation cannot be called for a pay-as-you-go instance that has an automatic release time set.
76368
+ * * The instances must be in the **Running** (`Running`) or **Stopped** (`Stopped`) state, and you cannot have overdue payments associated with them.
76369
+ * * After you change the billing method, the payment (if any) is automatically completed. Make sure that the balance in your account is sufficient. Otherwise, your order becomes invalid and is canceled. 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 [ECS console](https://ecs.console.aliyun.com/) to pay for the order.
76370
+ * * **Change the billing method from subscription to pay-as-you-go**:
76371
+ * * Your ECS usage determines whether the billing method of an instance can be changed from subscription to pay-as-you-go.
76372
+ * * After you change the billing method of an instance from subscription to pay-as-you-go, the new billing method remains in effect for the remaining lifecycle of the instance. The price difference is refunded to the payment account that you used. Vouchers that have been redeemed are not refundable.
76373
+ * * **Refund rule**: You have a quota for the total refund amount each month, and the unused balance of this quota is not carried over to the next month. If you use up the refund quota of the current month, you can change the billing method only in the next month. The refund amount incurred after you change the billing method is calculated based on the following formula: **Number of vCPUs × (Number of remaining days × 24 ± Number of remaining or elapsed hours)**.
76374
+ * * **Change the billing method from pay-as-you-go to subscription**:
76375
+ * * You can change the billing method of all data disks that are attached to an instance from pay-as-you-go to subscription.
76376
+ * * This operation cannot be called for a pay-as-you-go instance that has an automatic release time set.
75917
76377
  *
75918
76378
  * @param request ModifyInstanceChargeTypeRequest
75919
76379
  * @param runtime runtime options for this request RuntimeOptions
@@ -75996,17 +76456,17 @@ export default class Client extends OpenApi {
75996
76456
  }
75997
76457
 
75998
76458
  /**
75999
- * Before you call this operation, make sure that you understand the billing methods and pricing schedule of ECS. For more information, see the [Elastic Compute Service](https://www.alibabacloud.com/product/ecs#pricing) product page.
76459
+ * Before you call this operation, make sure that you are familiar with the billing methods and pricing of ECS. For more information, see the [Elastic Compute Service](https://www.alibabacloud.com/product/ecs#pricing) product page.
76000
76460
  * When you call this operation, take note of the following items:
76001
- * * The instances must be in the **Running** (`Running`) or **Stopped** (`Stopped`) state, and you have no overdue payments for them.
76002
- * * After you change the billing method, automatic payment is enabled by default. Make sure that you have sufficient balance in your account. Otherwise, your order becomes invalid and is canceled. 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 [ECS console](https://ecs.console.aliyun.com/) to pay for the order.
76003
- * * **Change the billing method from subscription to pay-as-you-go**:
76004
- * * Your ECS usage determines whether the billing method of an instance can be changed from subscription to pay-as-you-go.
76005
- * * After you change the billing method of an instance from subscription to pay-as-you-go, the new billing method remains in effect for the remaining lifecycle of the instance. The price difference is refunded to the payment account that you used. Vouchers that have been redeemed are not refundable.
76006
- * * **Refund rule**: You have a quota for the total refund amount each month, and unused balance of this quota is not carried forward into the next month. After you use up the refund quota of the current month, you can change the billing method only when the next month arrives. The refund amount incurred when you change the billing method is calculated based on the following formula: **Number of vCPUs × (Number of remaining days × 24 ± Number of remaining or elapsed hours)**.
76007
- * * **Change the billing method from pay-as-you-go to subscription**:
76008
- * * You can change the billing method of all data disks attached to an instance from pay-as-you-go to subscription.
76009
- * * This operation cannot be called for a pay-as-you-go instance that has an automatic release time set.
76461
+ * * The instances must be in the **Running** (`Running`) or **Stopped** (`Stopped`) state, and you cannot have overdue payments associated with them.
76462
+ * * After you change the billing method, the payment (if any) is automatically completed. Make sure that the balance in your account is sufficient. Otherwise, your order becomes invalid and is canceled. 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 [ECS console](https://ecs.console.aliyun.com/) to pay for the order.
76463
+ * * **Change the billing method from subscription to pay-as-you-go**:
76464
+ * * Your ECS usage determines whether the billing method of an instance can be changed from subscription to pay-as-you-go.
76465
+ * * After you change the billing method of an instance from subscription to pay-as-you-go, the new billing method remains in effect for the remaining lifecycle of the instance. The price difference is refunded to the payment account that you used. Vouchers that have been redeemed are not refundable.
76466
+ * * **Refund rule**: You have a quota for the total refund amount each month, and the unused balance of this quota is not carried over to the next month. If you use up the refund quota of the current month, you can change the billing method only in the next month. The refund amount incurred after you change the billing method is calculated based on the following formula: **Number of vCPUs × (Number of remaining days × 24 ± Number of remaining or elapsed hours)**.
76467
+ * * **Change the billing method from pay-as-you-go to subscription**:
76468
+ * * You can change the billing method of all data disks that are attached to an instance from pay-as-you-go to subscription.
76469
+ * * This operation cannot be called for a pay-as-you-go instance that has an automatic release time set.
76010
76470
  *
76011
76471
  * @param request ModifyInstanceChargeTypeRequest
76012
76472
  * @return ModifyInstanceChargeTypeResponse
@@ -76412,6 +76872,10 @@ export default class Client extends OpenApi {
76412
76872
  query["ClientToken"] = request.clientToken;
76413
76873
  }
76414
76874
 
76875
+ if (!Util.isUnset(request.disk)) {
76876
+ query["Disk"] = request.disk;
76877
+ }
76878
+
76415
76879
  if (!Util.isUnset(request.instanceId)) {
76416
76880
  query["InstanceId"] = request.instanceId;
76417
76881
  }
@@ -76428,6 +76892,10 @@ export default class Client extends OpenApi {
76428
76892
  query["InternetMaxBandwidthOut"] = request.internetMaxBandwidthOut;
76429
76893
  }
76430
76894
 
76895
+ if (!Util.isUnset(request.modifyMode)) {
76896
+ query["ModifyMode"] = request.modifyMode;
76897
+ }
76898
+
76431
76899
  if (!Util.isUnset(request.ownerAccount)) {
76432
76900
  query["OwnerAccount"] = request.ownerAccount;
76433
76901
  }
@@ -76746,6 +77214,14 @@ export default class Client extends OpenApi {
76746
77214
  return await this.modifyLaunchTemplateDefaultVersionWithOptions(request, runtime);
76747
77215
  }
76748
77216
 
77217
+ /**
77218
+ * ## Description
77219
+ * The ModifyManagedInstance operation can be called to modify only the name of a single managed instance.
77220
+ *
77221
+ * @param request ModifyManagedInstanceRequest
77222
+ * @param runtime runtime options for this request RuntimeOptions
77223
+ * @return ModifyManagedInstanceResponse
77224
+ */
76749
77225
  async modifyManagedInstanceWithOptions(request: ModifyManagedInstanceRequest, runtime: $Util.RuntimeOptions): Promise<ModifyManagedInstanceResponse> {
76750
77226
  Util.validateModel(request);
76751
77227
  let query = { };
@@ -76798,6 +77274,13 @@ export default class Client extends OpenApi {
76798
77274
  return $tea.cast<ModifyManagedInstanceResponse>(await this.callApi(params, req, runtime), new ModifyManagedInstanceResponse({}));
76799
77275
  }
76800
77276
 
77277
+ /**
77278
+ * ## Description
77279
+ * The ModifyManagedInstance operation can be called to modify only the name of a single managed instance.
77280
+ *
77281
+ * @param request ModifyManagedInstanceRequest
77282
+ * @return ModifyManagedInstanceResponse
77283
+ */
76801
77284
  async modifyManagedInstance(request: ModifyManagedInstanceRequest): Promise<ModifyManagedInstanceResponse> {
76802
77285
  let runtime = new $Util.RuntimeOptions({ });
76803
77286
  return await this.modifyManagedInstanceWithOptions(request, runtime);
@@ -77076,17 +77559,17 @@ export default class Client extends OpenApi {
77076
77559
 
77077
77560
  /**
77078
77561
  * Before you call this operation, make sure that you understand the billing methods, pricing schedule, and refund policies of [ECS](https://www.alibabacloud.com/product/ecs#pricing). For more information, see [Request a refund for the downgrade of resource specifications](~~201955~~).
77079
- * Before you change the instance type of a subscription instance, you can call the [DescribeResourcesModification](~~66187~~) operation to query the supported instance types. You can use ECS SDK for Python to query the instance types to which you can change. For more information, see [Query available resources for configuration changes](~~109517~~).
77080
- * When you call this operation, take note of the following item:
77081
- * * You cannot change the instance type of an expired instance. Renew the instance and try again.
77562
+ * Before you change the instance type of a subscription instance, you can call the [DescribeResourcesModification](~~66187~~) operation to query the instance types to which you can change. You can use ECS SDK for Python to query the instance types to which you can change. For more information, see [Query available resources for configuration changes](~~109517~~).
77563
+ * When you call this operation, take note of the following items:
77564
+ * * The instance type of an expired instance cannot be changed. You can renew the instance and try again.
77082
77565
  * * When you downgrade the instance type of an instance, take note of the following items:
77083
- * * The instance must be in the **Stopped** (`Stopped`) state.
77084
- * * You must specify the operation type by setting the `OperatorType` parameter to downgrade.
77085
- * * You can downgrade the configurations of an instance for up to three times. In this case, you can apply for up to three refunds for price differences for an instance. Downgrade operations include instance type downgrades, bandwidth configuration downgrades, and the change of the disk billing method from subscription to pay-as-you-go.
77086
- * * The price difference is refunded to the payment account that you used to purchase the instance. You cannot apply for a refund for vouchers that you already redeemed.
77087
- * * This operation is asynchronous. The system requires 5 to 10 seconds to change the instance type of an instance. For the instance type change to take effect, you must restart the instance in the ECS console or by calling the RebootInstance operation. If you restart only the operating system of the instance, the instance type change does not take effect.
77088
- * * If the instance is in the **Stopped** state, you need to only start the instance. You do not need to restart the instance after it enters the Running state.
77089
- * * If you set the `RebootWhenFinished` parameter to true for the instance, you do not need to restart the instance.
77566
+ * * The instance must be in the **Stopped** state.``
77567
+ * * You must specify the operation type by setting `OperatorType` to downgrade.
77568
+ * * You can downgrade the configurations of an instance up to three times. Therefore, a maximum of three refunds for price difference can be made for an instance. Downgrade operations include instance type downgrades, bandwidth configuration downgrades, and the change of the disk billing method from subscription to pay-as-you-go.
77569
+ * * The price difference is refunded to the payment account you used. Vouchers that have been redeemed are not refundable.
77570
+ * * This operation is asynchronous. It takes 5 to 10 seconds for the instance type to change. You must restart the instance by calling the RebootInstance operation or by using the ECS console for the instance type change to take effect. If you restart only the operating system of the instance, the instance type change does not take effect.
77571
+ * * If the instance is in the **Stopped** state, you only need to start the instance. You do not need to restart the instance after it enters the Running state.
77572
+ * * If `RebootWhenFinished` is set to true for the instance, you do not need to manually restart the instance.
77090
77573
  *
77091
77574
  * @param request ModifyPrepayInstanceSpecRequest
77092
77575
  * @param runtime runtime options for this request RuntimeOptions
@@ -77103,6 +77586,10 @@ export default class Client extends OpenApi {
77103
77586
  query["ClientToken"] = request.clientToken;
77104
77587
  }
77105
77588
 
77589
+ if (!Util.isUnset(request.disk)) {
77590
+ query["Disk"] = request.disk;
77591
+ }
77592
+
77106
77593
  if (!Util.isUnset(request.endTime)) {
77107
77594
  query["EndTime"] = request.endTime;
77108
77595
  }
@@ -77119,6 +77606,10 @@ export default class Client extends OpenApi {
77119
77606
  query["MigrateAcrossZone"] = request.migrateAcrossZone;
77120
77607
  }
77121
77608
 
77609
+ if (!Util.isUnset(request.modifyMode)) {
77610
+ query["ModifyMode"] = request.modifyMode;
77611
+ }
77612
+
77122
77613
  if (!Util.isUnset(request.operatorType)) {
77123
77614
  query["OperatorType"] = request.operatorType;
77124
77615
  }
@@ -77174,17 +77665,17 @@ export default class Client extends OpenApi {
77174
77665
 
77175
77666
  /**
77176
77667
  * Before you call this operation, make sure that you understand the billing methods, pricing schedule, and refund policies of [ECS](https://www.alibabacloud.com/product/ecs#pricing). For more information, see [Request a refund for the downgrade of resource specifications](~~201955~~).
77177
- * Before you change the instance type of a subscription instance, you can call the [DescribeResourcesModification](~~66187~~) operation to query the supported instance types. You can use ECS SDK for Python to query the instance types to which you can change. For more information, see [Query available resources for configuration changes](~~109517~~).
77178
- * When you call this operation, take note of the following item:
77179
- * * You cannot change the instance type of an expired instance. Renew the instance and try again.
77668
+ * Before you change the instance type of a subscription instance, you can call the [DescribeResourcesModification](~~66187~~) operation to query the instance types to which you can change. You can use ECS SDK for Python to query the instance types to which you can change. For more information, see [Query available resources for configuration changes](~~109517~~).
77669
+ * When you call this operation, take note of the following items:
77670
+ * * The instance type of an expired instance cannot be changed. You can renew the instance and try again.
77180
77671
  * * When you downgrade the instance type of an instance, take note of the following items:
77181
- * * The instance must be in the **Stopped** (`Stopped`) state.
77182
- * * You must specify the operation type by setting the `OperatorType` parameter to downgrade.
77183
- * * You can downgrade the configurations of an instance for up to three times. In this case, you can apply for up to three refunds for price differences for an instance. Downgrade operations include instance type downgrades, bandwidth configuration downgrades, and the change of the disk billing method from subscription to pay-as-you-go.
77184
- * * The price difference is refunded to the payment account that you used to purchase the instance. You cannot apply for a refund for vouchers that you already redeemed.
77185
- * * This operation is asynchronous. The system requires 5 to 10 seconds to change the instance type of an instance. For the instance type change to take effect, you must restart the instance in the ECS console or by calling the RebootInstance operation. If you restart only the operating system of the instance, the instance type change does not take effect.
77186
- * * If the instance is in the **Stopped** state, you need to only start the instance. You do not need to restart the instance after it enters the Running state.
77187
- * * If you set the `RebootWhenFinished` parameter to true for the instance, you do not need to restart the instance.
77672
+ * * The instance must be in the **Stopped** state.``
77673
+ * * You must specify the operation type by setting `OperatorType` to downgrade.
77674
+ * * You can downgrade the configurations of an instance up to three times. Therefore, a maximum of three refunds for price difference can be made for an instance. Downgrade operations include instance type downgrades, bandwidth configuration downgrades, and the change of the disk billing method from subscription to pay-as-you-go.
77675
+ * * The price difference is refunded to the payment account you used. Vouchers that have been redeemed are not refundable.
77676
+ * * This operation is asynchronous. It takes 5 to 10 seconds for the instance type to change. You must restart the instance by calling the RebootInstance operation or by using the ECS console for the instance type change to take effect. If you restart only the operating system of the instance, the instance type change does not take effect.
77677
+ * * If the instance is in the **Stopped** state, you only need to start the instance. You do not need to restart the instance after it enters the Running state.
77678
+ * * If `RebootWhenFinished` is set to true for the instance, you do not need to manually restart the instance.
77188
77679
  *
77189
77680
  * @param request ModifyPrepayInstanceSpecRequest
77190
77681
  * @return ModifyPrepayInstanceSpecResponse
@@ -77312,6 +77803,18 @@ export default class Client extends OpenApi {
77312
77803
  return await this.modifyReservedInstanceAutoRenewAttributeWithOptions(request, runtime);
77313
77804
  }
77314
77805
 
77806
+ /**
77807
+ * ## Description
77808
+ * When you call this operation, take note of the following items:
77809
+ * * For information about limits on reserved instances, see the "Limits" section in [Reserved instance overview](~~100370~~).
77810
+ * * Before you call this operation to split a reserved instance, make sure that you fully understand the limits on splitting a reserved instance. For more information, see [Split a reserved instance](~~100375~~).
77811
+ * * Before you call this operation to merge reserved instances, make sure that you fully understand the limits on merging reserved instances. For more information, see [Merge reserved instances](~~132229~~).
77812
+ * * Before you call this operation to modify a reserved instance, make sure that you fully understand the limits and methods of modifying a reserved instance. For more information, see [Modify a reserved instance](~~132230~~).
77813
+ *
77814
+ * @param request ModifyReservedInstancesRequest
77815
+ * @param runtime runtime options for this request RuntimeOptions
77816
+ * @return ModifyReservedInstancesResponse
77817
+ */
77315
77818
  async modifyReservedInstancesWithOptions(request: ModifyReservedInstancesRequest, runtime: $Util.RuntimeOptions): Promise<ModifyReservedInstancesResponse> {
77316
77819
  Util.validateModel(request);
77317
77820
  let query = { };
@@ -77360,6 +77863,17 @@ export default class Client extends OpenApi {
77360
77863
  return $tea.cast<ModifyReservedInstancesResponse>(await this.callApi(params, req, runtime), new ModifyReservedInstancesResponse({}));
77361
77864
  }
77362
77865
 
77866
+ /**
77867
+ * ## Description
77868
+ * When you call this operation, take note of the following items:
77869
+ * * For information about limits on reserved instances, see the "Limits" section in [Reserved instance overview](~~100370~~).
77870
+ * * Before you call this operation to split a reserved instance, make sure that you fully understand the limits on splitting a reserved instance. For more information, see [Split a reserved instance](~~100375~~).
77871
+ * * Before you call this operation to merge reserved instances, make sure that you fully understand the limits on merging reserved instances. For more information, see [Merge reserved instances](~~132229~~).
77872
+ * * Before you call this operation to modify a reserved instance, make sure that you fully understand the limits and methods of modifying a reserved instance. For more information, see [Modify a reserved instance](~~132230~~).
77873
+ *
77874
+ * @param request ModifyReservedInstancesRequest
77875
+ * @return ModifyReservedInstancesResponse
77876
+ */
77363
77877
  async modifyReservedInstances(request: ModifyReservedInstancesRequest): Promise<ModifyReservedInstancesResponse> {
77364
77878
  let runtime = new $Util.RuntimeOptions({ });
77365
77879
  return await this.modifyReservedInstancesWithOptions(request, runtime);
@@ -77590,6 +78104,18 @@ export default class Client extends OpenApi {
77590
78104
  return await this.modifySecurityGroupAttributeWithOptions(request, runtime);
77591
78105
  }
77592
78106
 
78107
+ /**
78108
+ * ## Description
78109
+ * When you modify the rules of a security group by specifying the rule IDs, take note of the following limits:
78110
+ * * If the type of the authorization object (source or destination) is IP address or CIDR block, security group, or prefix list, the type cannot be changed. If the original authorization object is an IP address, you can change it to another IP address or a CIDR block, but not to a security group or prefix list.
78111
+ * * The IP address family of the authorization object cannot be changed. For example, if the original authorization object is an IPv4 CIDR block, you cannot change it to an IPv6 CIDR block. If the original authorization object is an IPv4 prefix list, you cannot change it to an IPv6 prefix list.
78112
+ * * The modified security group rule cannot be the same as other existing rules.
78113
+ * * If you want to delete the values of non-empty parameters for the rule, we recommend that you create a new rule and delete the original rule.
78114
+ *
78115
+ * @param request ModifySecurityGroupEgressRuleRequest
78116
+ * @param runtime runtime options for this request RuntimeOptions
78117
+ * @return ModifySecurityGroupEgressRuleResponse
78118
+ */
77593
78119
  async modifySecurityGroupEgressRuleWithOptions(request: ModifySecurityGroupEgressRuleRequest, runtime: $Util.RuntimeOptions): Promise<ModifySecurityGroupEgressRuleResponse> {
77594
78120
  Util.validateModel(request);
77595
78121
  let query = { };
@@ -77706,6 +78232,17 @@ export default class Client extends OpenApi {
77706
78232
  return $tea.cast<ModifySecurityGroupEgressRuleResponse>(await this.callApi(params, req, runtime), new ModifySecurityGroupEgressRuleResponse({}));
77707
78233
  }
77708
78234
 
78235
+ /**
78236
+ * ## Description
78237
+ * When you modify the rules of a security group by specifying the rule IDs, take note of the following limits:
78238
+ * * If the type of the authorization object (source or destination) is IP address or CIDR block, security group, or prefix list, the type cannot be changed. If the original authorization object is an IP address, you can change it to another IP address or a CIDR block, but not to a security group or prefix list.
78239
+ * * The IP address family of the authorization object cannot be changed. For example, if the original authorization object is an IPv4 CIDR block, you cannot change it to an IPv6 CIDR block. If the original authorization object is an IPv4 prefix list, you cannot change it to an IPv6 prefix list.
78240
+ * * The modified security group rule cannot be the same as other existing rules.
78241
+ * * If you want to delete the values of non-empty parameters for the rule, we recommend that you create a new rule and delete the original rule.
78242
+ *
78243
+ * @param request ModifySecurityGroupEgressRuleRequest
78244
+ * @return ModifySecurityGroupEgressRuleResponse
78245
+ */
77709
78246
  async modifySecurityGroupEgressRule(request: ModifySecurityGroupEgressRuleRequest): Promise<ModifySecurityGroupEgressRuleResponse> {
77710
78247
  let runtime = new $Util.RuntimeOptions({ });
77711
78248
  return await this.modifySecurityGroupEgressRuleWithOptions(request, runtime);
@@ -77787,6 +78324,17 @@ export default class Client extends OpenApi {
77787
78324
  return await this.modifySecurityGroupPolicyWithOptions(request, runtime);
77788
78325
  }
77789
78326
 
78327
+ /**
78328
+ * When you modify a security group rule by specifying its ID, take note of the following items:
78329
+ * * If the type of the authorization object (source or destination) is IP address or CIDR block, security group, or prefix list, the authorization object type cannot be changed. The type of an existing security group authorization object cannot be modified. If the original authorization object is an IP address, you can change it to another IP address or a CIDR block, but not to a security group or prefix list.
78330
+ * * The IP address family of the authorization object cannot be changed. For example, if the original authorization object is an IPv4 CIDR block, you cannot change it to an IPv6 CIDR block. If the original authorization object is an IPv4 prefix list, you cannot change it to an IPv6 prefix list.
78331
+ * * The modified security group rule cannot be the same as other existing rules.
78332
+ * * If you want to delete the values of non-empty parameters for the rule, we recommend that you create a new rule and delete the original rule.
78333
+ *
78334
+ * @param request ModifySecurityGroupRuleRequest
78335
+ * @param runtime runtime options for this request RuntimeOptions
78336
+ * @return ModifySecurityGroupRuleResponse
78337
+ */
77790
78338
  async modifySecurityGroupRuleWithOptions(request: ModifySecurityGroupRuleRequest, runtime: $Util.RuntimeOptions): Promise<ModifySecurityGroupRuleResponse> {
77791
78339
  Util.validateModel(request);
77792
78340
  let query = { };
@@ -77903,6 +78451,16 @@ export default class Client extends OpenApi {
77903
78451
  return $tea.cast<ModifySecurityGroupRuleResponse>(await this.callApi(params, req, runtime), new ModifySecurityGroupRuleResponse({}));
77904
78452
  }
77905
78453
 
78454
+ /**
78455
+ * When you modify a security group rule by specifying its ID, take note of the following items:
78456
+ * * If the type of the authorization object (source or destination) is IP address or CIDR block, security group, or prefix list, the authorization object type cannot be changed. The type of an existing security group authorization object cannot be modified. If the original authorization object is an IP address, you can change it to another IP address or a CIDR block, but not to a security group or prefix list.
78457
+ * * The IP address family of the authorization object cannot be changed. For example, if the original authorization object is an IPv4 CIDR block, you cannot change it to an IPv6 CIDR block. If the original authorization object is an IPv4 prefix list, you cannot change it to an IPv6 prefix list.
78458
+ * * The modified security group rule cannot be the same as other existing rules.
78459
+ * * If you want to delete the values of non-empty parameters for the rule, we recommend that you create a new rule and delete the original rule.
78460
+ *
78461
+ * @param request ModifySecurityGroupRuleRequest
78462
+ * @return ModifySecurityGroupRuleResponse
78463
+ */
77906
78464
  async modifySecurityGroupRule(request: ModifySecurityGroupRuleRequest): Promise<ModifySecurityGroupRuleResponse> {
77907
78465
  let runtime = new $Util.RuntimeOptions({ });
77908
78466
  return await this.modifySecurityGroupRuleWithOptions(request, runtime);
@@ -78652,6 +79210,13 @@ export default class Client extends OpenApi {
78652
79210
  return await this.purchaseReservedInstancesOfferingWithOptions(request, runtime);
78653
79211
  }
78654
79212
 
79213
+ /**
79214
+ * Before you call this operation, make sure that you understand the billing methods and pricing of SCUs. For more information, see [Storage capacity units](~~137897~~).
79215
+ *
79216
+ * @param request PurchaseStorageCapacityUnitRequest
79217
+ * @param runtime runtime options for this request RuntimeOptions
79218
+ * @return PurchaseStorageCapacityUnitResponse
79219
+ */
78655
79220
  async purchaseStorageCapacityUnitWithOptions(request: PurchaseStorageCapacityUnitRequest, runtime: $Util.RuntimeOptions): Promise<PurchaseStorageCapacityUnitResponse> {
78656
79221
  Util.validateModel(request);
78657
79222
  let query = { };
@@ -78732,6 +79297,12 @@ export default class Client extends OpenApi {
78732
79297
  return $tea.cast<PurchaseStorageCapacityUnitResponse>(await this.callApi(params, req, runtime), new PurchaseStorageCapacityUnitResponse({}));
78733
79298
  }
78734
79299
 
79300
+ /**
79301
+ * Before you call this operation, make sure that you understand the billing methods and pricing of SCUs. For more information, see [Storage capacity units](~~137897~~).
79302
+ *
79303
+ * @param request PurchaseStorageCapacityUnitRequest
79304
+ * @return PurchaseStorageCapacityUnitResponse
79305
+ */
78735
79306
  async purchaseStorageCapacityUnit(request: PurchaseStorageCapacityUnitRequest): Promise<PurchaseStorageCapacityUnitResponse> {
78736
79307
  let runtime = new $Util.RuntimeOptions({ });
78737
79308
  return await this.purchaseStorageCapacityUnitWithOptions(request, runtime);
@@ -78809,6 +79380,21 @@ export default class Client extends OpenApi {
78809
79380
  return await this.reActivateInstancesWithOptions(request, runtime);
78810
79381
  }
78811
79382
 
79383
+ /**
79384
+ * When you call this operation, take note of the following items:
79385
+ * * The disk that you want to re-initialize must be in the **In Use** (In_use) state and the instance to which the disk is attached must be in the **Stopped** (Stopped) state.
79386
+ * * If the instance has never been started since it was created, the disks attached to it cannot be re-initialized.
79387
+ * * If a local snapshot has been created for a disk, the disk cannot be re-initialized.
79388
+ * * Disks that have the multi-attach feature enabled cannot be re-initialized.
79389
+ * * When a system disk is re-initialized, it is restored to the state of the image from which it was created. If the source image is deleted, the system disk cannot be re-initialized.
79390
+ * * When a separately created data disk is re-initialized, it is restored to an empty data disk.
79391
+ * * When a data disk that was created from a snapshot is re-initialized, the disk is restored to the state of the snapshot.
79392
+ * > If the source snapshot is deleted, the disk cannot be re-initialized and an error is returned.
79393
+ *
79394
+ * @param request ReInitDiskRequest
79395
+ * @param runtime runtime options for this request RuntimeOptions
79396
+ * @return ReInitDiskResponse
79397
+ */
78812
79398
  async reInitDiskWithOptions(request: ReInitDiskRequest, runtime: $Util.RuntimeOptions): Promise<ReInitDiskResponse> {
78813
79399
  Util.validateModel(request);
78814
79400
  let query = { };
@@ -78865,16 +79451,30 @@ export default class Client extends OpenApi {
78865
79451
  return $tea.cast<ReInitDiskResponse>(await this.callApi(params, req, runtime), new ReInitDiskResponse({}));
78866
79452
  }
78867
79453
 
79454
+ /**
79455
+ * When you call this operation, take note of the following items:
79456
+ * * The disk that you want to re-initialize must be in the **In Use** (In_use) state and the instance to which the disk is attached must be in the **Stopped** (Stopped) state.
79457
+ * * If the instance has never been started since it was created, the disks attached to it cannot be re-initialized.
79458
+ * * If a local snapshot has been created for a disk, the disk cannot be re-initialized.
79459
+ * * Disks that have the multi-attach feature enabled cannot be re-initialized.
79460
+ * * When a system disk is re-initialized, it is restored to the state of the image from which it was created. If the source image is deleted, the system disk cannot be re-initialized.
79461
+ * * When a separately created data disk is re-initialized, it is restored to an empty data disk.
79462
+ * * When a data disk that was created from a snapshot is re-initialized, the disk is restored to the state of the snapshot.
79463
+ * > If the source snapshot is deleted, the disk cannot be re-initialized and an error is returned.
79464
+ *
79465
+ * @param request ReInitDiskRequest
79466
+ * @return ReInitDiskResponse
79467
+ */
78868
79468
  async reInitDisk(request: ReInitDiskRequest): Promise<ReInitDiskResponse> {
78869
79469
  let runtime = new $Util.RuntimeOptions({ });
78870
79470
  return await this.reInitDiskWithOptions(request, runtime);
78871
79471
  }
78872
79472
 
78873
79473
  /**
78874
- * * Only instances that are in the `Running` state can be restarted.****
78875
- * * After the ECS instance is restarted, the status of the instance changes to `Starting`.****
78876
- * * An instance can be forcibly restarted. A forced restart (`ForceStop`) is equivalent to performing a hard restart. This operation can cause data loss if data in the instance is not written to the disk.
78877
- * * If you call the DescribeInstances operation to query the details of an instance and `OperationLocks` in the response contains "LockReason": "security", the instance is locked for security reasons and cannot be restarted. For more information, see [API behavior when an instance is locked for security reasons](~~25695~~).
79474
+ * * The ECS instance to which you want to restart must be in the **Running** (`Running`) state.
79475
+ * * After this operation is called, the status of the instance changes to `Starting`.****
79476
+ * * An instance can be forcefully restarted. A forced restart (`ForceReboot`) is equivalent to powering off a traditional server and then starting the server. If data in the instance operating system is not written to block storage devices when the operation is called, the data is lost.
79477
+ * * If `OperationLocks` in the DescribeInstances response contains "LockReason" : "security" for an instance, the instance is locked for security reasons and cannot be restarted. For more information, see [API behavior when an instance is locked for security reasons](~~25695~~).
78878
79478
  *
78879
79479
  * @param request RebootInstanceRequest
78880
79480
  * @param runtime runtime options for this request RuntimeOptions
@@ -78929,10 +79529,10 @@ export default class Client extends OpenApi {
78929
79529
  }
78930
79530
 
78931
79531
  /**
78932
- * * Only instances that are in the `Running` state can be restarted.****
78933
- * * After the ECS instance is restarted, the status of the instance changes to `Starting`.****
78934
- * * An instance can be forcibly restarted. A forced restart (`ForceStop`) is equivalent to performing a hard restart. This operation can cause data loss if data in the instance is not written to the disk.
78935
- * * If you call the DescribeInstances operation to query the details of an instance and `OperationLocks` in the response contains "LockReason": "security", the instance is locked for security reasons and cannot be restarted. For more information, see [API behavior when an instance is locked for security reasons](~~25695~~).
79532
+ * * The ECS instance to which you want to restart must be in the **Running** (`Running`) state.
79533
+ * * After this operation is called, the status of the instance changes to `Starting`.****
79534
+ * * An instance can be forcefully restarted. A forced restart (`ForceReboot`) is equivalent to powering off a traditional server and then starting the server. If data in the instance operating system is not written to block storage devices when the operation is called, the data is lost.
79535
+ * * If `OperationLocks` in the DescribeInstances response contains "LockReason" : "security" for an instance, the instance is locked for security reasons and cannot be restarted. For more information, see [API behavior when an instance is locked for security reasons](~~25695~~).
78936
79536
  *
78937
79537
  * @param request RebootInstanceRequest
78938
79538
  * @return RebootInstanceResponse
@@ -79075,6 +79675,13 @@ export default class Client extends OpenApi {
79075
79675
  return await this.recoverVirtualBorderRouterWithOptions(request, runtime);
79076
79676
  }
79077
79677
 
79678
+ /**
79679
+ * If a dedicated host is in the UnderAssessment state, we recommend that you call this operation to migrate ECS instances away from the dedicated host to prevent permanent failures. You can call the [DescribeDedicatedHosts](~~134242~~) operation to query the status of a dedicated host.
79680
+ *
79681
+ * @param request RedeployDedicatedHostRequest
79682
+ * @param runtime runtime options for this request RuntimeOptions
79683
+ * @return RedeployDedicatedHostResponse
79684
+ */
79078
79685
  async redeployDedicatedHostWithOptions(request: RedeployDedicatedHostRequest, runtime: $Util.RuntimeOptions): Promise<RedeployDedicatedHostResponse> {
79079
79686
  Util.validateModel(request);
79080
79687
  let query = { };
@@ -79119,22 +79726,28 @@ export default class Client extends OpenApi {
79119
79726
  return $tea.cast<RedeployDedicatedHostResponse>(await this.callApi(params, req, runtime), new RedeployDedicatedHostResponse({}));
79120
79727
  }
79121
79728
 
79729
+ /**
79730
+ * If a dedicated host is in the UnderAssessment state, we recommend that you call this operation to migrate ECS instances away from the dedicated host to prevent permanent failures. You can call the [DescribeDedicatedHosts](~~134242~~) operation to query the status of a dedicated host.
79731
+ *
79732
+ * @param request RedeployDedicatedHostRequest
79733
+ * @return RedeployDedicatedHostResponse
79734
+ */
79122
79735
  async redeployDedicatedHost(request: RedeployDedicatedHostRequest): Promise<RedeployDedicatedHostResponse> {
79123
79736
  let runtime = new $Util.RuntimeOptions({ });
79124
79737
  return await this.redeployDedicatedHostWithOptions(request, runtime);
79125
79738
  }
79126
79739
 
79127
79740
  /**
79128
- * RedeployInstance is an asynchronous operation. This operation migrates data before it restarts the instance. After the instance is redeployed, the instance enters the Running (`Running`) state. If the instance fails to be redeployed, the instance returns to the original physical server and the state before the redeployment.
79741
+ * RedeployInstance is an asynchronous operation. This operation migrates data before it restarts the instance. After the instance is redeployed, the instance enters the Running (`Running`) state. If the instance fails to be redeployed, the instance returns to the original physical server and the state before redeployment.
79129
79742
  * When you call this operation, take note of the following items:
79130
- * * The instance must be in the Running or Stopped state. After the instance is redeployed, the following changes occur to the status of the instance:
79743
+ * * The instance must be in the Running (Running) or Stopped (Stopped) state. After the instance is redeployed, the following changes occur to the status of the instance:
79131
79744
  * * If the instance is in the Running (`Running`) state, the instance enters the Stopping (`Stopping`) state.
79132
79745
  * * If the instance is in the Stopped (`Stopped`) state, the instance enters the Starting (`Starting`) state.
79133
79746
  * * If an instance is deployed on a dedicated host, you cannot redeploy the instance.
79134
79747
  * * If the `OperationLocks` parameter in the DescribeInstances response contains `"LockReason" : "security"` for an instance, the instance is locked for security reasons and cannot be redeployed.
79135
79748
  * * If you receive notifications about simulated events that are created by calling the CreateSimulatedSystemEvent operation for an instance, you cannot redeploy the instance.
79136
- * * When you handle a local disk-related system event for an instance, if the damaged local disk is isolated but the **SystemMaintenance.RebootAndReInitErrorDisk** event is not sent, you can still call the RedeployInstance operation to redeploy the instance. The SystemMaintenance.RebootAndReInitErrorDisk event indicates that the instance is restarted and the damaged disks are reinitialized due to system maintenance. For more information, see [System events for ECS instances equipped with local disks](~~107693~~).
79137
- * The following table describes the system events that you can handle by calling the RedeployInstance operation. The table also provides the possible event status.
79749
+ * * If the damaged local disk is isolated but the **SystemMaintenance.RebootAndReInitErrorDisk** event is not sent when you handle a local disk-related system event for an instance, you can still call the RedeployInstance operation to redeploy the instance. The SystemMaintenance.RebootAndReInitErrorDisk event indicates that the instance is restarted and the damaged disks are reinitialized due to system maintenance. For more information, see [System events for ECS instances equipped with local disks](~~107693~~).
79750
+ * The following table describes the system events that you can handle by calling the RedeployInstance operation. The table also provides possible event status.
79138
79751
  * |System event|Event status|
79139
79752
  * |---|---|
79140
79753
  * |Instance restart due to system maintenance (SystemMaintenance.Reboot)|Inquiring and Scheduled|
@@ -79145,7 +79758,7 @@ export default class Client extends OpenApi {
79145
79758
  * |For ECS instances that use only local disks: instance restart due to a system error (SystemFailure.Reboot)|Executing|
79146
79759
  * |Isolation of damaged disks due to system maintenance (SystemMaintenance.IsolateErrorDisk)|Inquiring|
79147
79760
  * |Re-initialization of damaged disks due to system maintenance (SystemMaintenance.ReInitErrorDisk)|Inquiring|
79148
- * **Note**When instances that use local disks are redeployed, the local disks are re-initialized and data in the local disks is cleared.
79761
+ * **Note**When instances that use local disks are redeployed, the local disks are re-initialized and data on the local disks is cleared.
79149
79762
  *
79150
79763
  * @param request RedeployInstanceRequest
79151
79764
  * @param runtime runtime options for this request RuntimeOptions
@@ -79196,16 +79809,16 @@ export default class Client extends OpenApi {
79196
79809
  }
79197
79810
 
79198
79811
  /**
79199
- * RedeployInstance is an asynchronous operation. This operation migrates data before it restarts the instance. After the instance is redeployed, the instance enters the Running (`Running`) state. If the instance fails to be redeployed, the instance returns to the original physical server and the state before the redeployment.
79812
+ * RedeployInstance is an asynchronous operation. This operation migrates data before it restarts the instance. After the instance is redeployed, the instance enters the Running (`Running`) state. If the instance fails to be redeployed, the instance returns to the original physical server and the state before redeployment.
79200
79813
  * When you call this operation, take note of the following items:
79201
- * * The instance must be in the Running or Stopped state. After the instance is redeployed, the following changes occur to the status of the instance:
79814
+ * * The instance must be in the Running (Running) or Stopped (Stopped) state. After the instance is redeployed, the following changes occur to the status of the instance:
79202
79815
  * * If the instance is in the Running (`Running`) state, the instance enters the Stopping (`Stopping`) state.
79203
79816
  * * If the instance is in the Stopped (`Stopped`) state, the instance enters the Starting (`Starting`) state.
79204
79817
  * * If an instance is deployed on a dedicated host, you cannot redeploy the instance.
79205
79818
  * * If the `OperationLocks` parameter in the DescribeInstances response contains `"LockReason" : "security"` for an instance, the instance is locked for security reasons and cannot be redeployed.
79206
79819
  * * If you receive notifications about simulated events that are created by calling the CreateSimulatedSystemEvent operation for an instance, you cannot redeploy the instance.
79207
- * * When you handle a local disk-related system event for an instance, if the damaged local disk is isolated but the **SystemMaintenance.RebootAndReInitErrorDisk** event is not sent, you can still call the RedeployInstance operation to redeploy the instance. The SystemMaintenance.RebootAndReInitErrorDisk event indicates that the instance is restarted and the damaged disks are reinitialized due to system maintenance. For more information, see [System events for ECS instances equipped with local disks](~~107693~~).
79208
- * The following table describes the system events that you can handle by calling the RedeployInstance operation. The table also provides the possible event status.
79820
+ * * If the damaged local disk is isolated but the **SystemMaintenance.RebootAndReInitErrorDisk** event is not sent when you handle a local disk-related system event for an instance, you can still call the RedeployInstance operation to redeploy the instance. The SystemMaintenance.RebootAndReInitErrorDisk event indicates that the instance is restarted and the damaged disks are reinitialized due to system maintenance. For more information, see [System events for ECS instances equipped with local disks](~~107693~~).
79821
+ * The following table describes the system events that you can handle by calling the RedeployInstance operation. The table also provides possible event status.
79209
79822
  * |System event|Event status|
79210
79823
  * |---|---|
79211
79824
  * |Instance restart due to system maintenance (SystemMaintenance.Reboot)|Inquiring and Scheduled|
@@ -79216,7 +79829,7 @@ export default class Client extends OpenApi {
79216
79829
  * |For ECS instances that use only local disks: instance restart due to a system error (SystemFailure.Reboot)|Executing|
79217
79830
  * |Isolation of damaged disks due to system maintenance (SystemMaintenance.IsolateErrorDisk)|Inquiring|
79218
79831
  * |Re-initialization of damaged disks due to system maintenance (SystemMaintenance.ReInitErrorDisk)|Inquiring|
79219
- * **Note**When instances that use local disks are redeployed, the local disks are re-initialized and data in the local disks is cleared.
79832
+ * **Note**When instances that use local disks are redeployed, the local disks are re-initialized and data on the local disks is cleared.
79220
79833
  *
79221
79834
  * @param request RedeployInstanceRequest
79222
79835
  * @return RedeployInstanceResponse
@@ -79227,7 +79840,7 @@ export default class Client extends OpenApi {
79227
79840
  }
79228
79841
 
79229
79842
  /**
79230
- * When the release mode of an immediate capacity reservation is set to manual release, you can call this operation to release the capacity reservation.
79843
+ * If the release mode of a capacity reservation that takes effect immediately is set to manual release, you can call this operation to release the capacity reservation.
79231
79844
  *
79232
79845
  * @param request ReleaseCapacityReservationRequest
79233
79846
  * @param runtime runtime options for this request RuntimeOptions
@@ -79282,7 +79895,7 @@ export default class Client extends OpenApi {
79282
79895
  }
79283
79896
 
79284
79897
  /**
79285
- * When the release mode of an immediate capacity reservation is set to manual release, you can call this operation to release the capacity reservation.
79898
+ * If the release mode of a capacity reservation that takes effect immediately is set to manual release, you can call this operation to release the capacity reservation.
79286
79899
  *
79287
79900
  * @param request ReleaseCapacityReservationRequest
79288
79901
  * @return ReleaseCapacityReservationResponse
@@ -79292,6 +79905,13 @@ export default class Client extends OpenApi {
79292
79905
  return await this.releaseCapacityReservationWithOptions(request, runtime);
79293
79906
  }
79294
79907
 
79908
+ /**
79909
+ * Before you release a pay-as-you-go dedicated host, make sure that no Elastic Compute Service (ECS) instances are deployed on the dedicated host.
79910
+ *
79911
+ * @param request ReleaseDedicatedHostRequest
79912
+ * @param runtime runtime options for this request RuntimeOptions
79913
+ * @return ReleaseDedicatedHostResponse
79914
+ */
79295
79915
  async releaseDedicatedHostWithOptions(request: ReleaseDedicatedHostRequest, runtime: $Util.RuntimeOptions): Promise<ReleaseDedicatedHostResponse> {
79296
79916
  Util.validateModel(request);
79297
79917
  let query = { };
@@ -79336,6 +79956,12 @@ export default class Client extends OpenApi {
79336
79956
  return $tea.cast<ReleaseDedicatedHostResponse>(await this.callApi(params, req, runtime), new ReleaseDedicatedHostResponse({}));
79337
79957
  }
79338
79958
 
79959
+ /**
79960
+ * Before you release a pay-as-you-go dedicated host, make sure that no Elastic Compute Service (ECS) instances are deployed on the dedicated host.
79961
+ *
79962
+ * @param request ReleaseDedicatedHostRequest
79963
+ * @return ReleaseDedicatedHostResponse
79964
+ */
79339
79965
  async releaseDedicatedHost(request: ReleaseDedicatedHostRequest): Promise<ReleaseDedicatedHostResponse> {
79340
79966
  let runtime = new $Util.RuntimeOptions({ });
79341
79967
  return await this.releaseDedicatedHostWithOptions(request, runtime);
@@ -79571,6 +80197,14 @@ export default class Client extends OpenApi {
79571
80197
  return await this.removeTagsWithOptions(request, runtime);
79572
80198
  }
79573
80199
 
80200
+ /**
80201
+ * ## Description
80202
+ * When you renew the subscription dedicated hosts, deductible vouchers are used first by default. Make sure that your account supports credit card payments or balance payments.
80203
+ *
80204
+ * @param request RenewDedicatedHostsRequest
80205
+ * @param runtime runtime options for this request RuntimeOptions
80206
+ * @return RenewDedicatedHostsResponse
80207
+ */
79574
80208
  async renewDedicatedHostsWithOptions(request: RenewDedicatedHostsRequest, runtime: $Util.RuntimeOptions): Promise<RenewDedicatedHostsResponse> {
79575
80209
  Util.validateModel(request);
79576
80210
  let query = { };
@@ -79627,11 +80261,28 @@ export default class Client extends OpenApi {
79627
80261
  return $tea.cast<RenewDedicatedHostsResponse>(await this.callApi(params, req, runtime), new RenewDedicatedHostsResponse({}));
79628
80262
  }
79629
80263
 
80264
+ /**
80265
+ * ## Description
80266
+ * When you renew the subscription dedicated hosts, deductible vouchers are used first by default. Make sure that your account supports credit card payments or balance payments.
80267
+ *
80268
+ * @param request RenewDedicatedHostsRequest
80269
+ * @return RenewDedicatedHostsResponse
80270
+ */
79630
80271
  async renewDedicatedHosts(request: RenewDedicatedHostsRequest): Promise<RenewDedicatedHostsResponse> {
79631
80272
  let runtime = new $Util.RuntimeOptions({ });
79632
80273
  return await this.renewDedicatedHostsWithOptions(request, runtime);
79633
80274
  }
79634
80275
 
80276
+ /**
80277
+ * * Before you call this operation, make sure that you are familiar with the billing methods and pricing schedule of ECS. For more information, see the [Elastic Compute Service](https://www.alibabacloud.com/product/ecs#pricing) product page.
80278
+ * * You can call this operation to renew a subscription ECS instance for a period of time or to a synchronized expiration date.
80279
+ * * You cannot renew a subscription instance for a specific period of time and to a synchronized expiration date at the same time by calling this operation. The parameter pair (`Period` and `PeriodUnit`) that is related to the renewal period and the `ExpectedRenewDay` parameter are mutually exclusive.
80280
+ * * Your account must have sufficient credits.
80281
+ *
80282
+ * @param request RenewInstanceRequest
80283
+ * @param runtime runtime options for this request RuntimeOptions
80284
+ * @return RenewInstanceResponse
80285
+ */
79635
80286
  async renewInstanceWithOptions(request: RenewInstanceRequest, runtime: $Util.RuntimeOptions): Promise<RenewInstanceResponse> {
79636
80287
  Util.validateModel(request);
79637
80288
  let query = { };
@@ -79688,11 +80339,28 @@ export default class Client extends OpenApi {
79688
80339
  return $tea.cast<RenewInstanceResponse>(await this.callApi(params, req, runtime), new RenewInstanceResponse({}));
79689
80340
  }
79690
80341
 
80342
+ /**
80343
+ * * Before you call this operation, make sure that you are familiar with the billing methods and pricing schedule of ECS. For more information, see the [Elastic Compute Service](https://www.alibabacloud.com/product/ecs#pricing) product page.
80344
+ * * You can call this operation to renew a subscription ECS instance for a period of time or to a synchronized expiration date.
80345
+ * * You cannot renew a subscription instance for a specific period of time and to a synchronized expiration date at the same time by calling this operation. The parameter pair (`Period` and `PeriodUnit`) that is related to the renewal period and the `ExpectedRenewDay` parameter are mutually exclusive.
80346
+ * * Your account must have sufficient credits.
80347
+ *
80348
+ * @param request RenewInstanceRequest
80349
+ * @return RenewInstanceResponse
80350
+ */
79691
80351
  async renewInstance(request: RenewInstanceRequest): Promise<RenewInstanceResponse> {
79692
80352
  let runtime = new $Util.RuntimeOptions({ });
79693
80353
  return await this.renewInstanceWithOptions(request, runtime);
79694
80354
  }
79695
80355
 
80356
+ /**
80357
+ * * Before you call this operation, make sure that you fully understand the billing method of reserved instances. For more information, see [Reserved instances](~~100371~~).
80358
+ * * You can call the [DescribeReservedInstances](~~100065~~) operation to query the reserved instances that you purchased.
80359
+ *
80360
+ * @param request RenewReservedInstancesRequest
80361
+ * @param runtime runtime options for this request RuntimeOptions
80362
+ * @return RenewReservedInstancesResponse
80363
+ */
79696
80364
  async renewReservedInstancesWithOptions(request: RenewReservedInstancesRequest, runtime: $Util.RuntimeOptions): Promise<RenewReservedInstancesResponse> {
79697
80365
  Util.validateModel(request);
79698
80366
  let query = { };
@@ -79757,11 +80425,38 @@ export default class Client extends OpenApi {
79757
80425
  return $tea.cast<RenewReservedInstancesResponse>(await this.callApi(params, req, runtime), new RenewReservedInstancesResponse({}));
79758
80426
  }
79759
80427
 
80428
+ /**
80429
+ * * Before you call this operation, make sure that you fully understand the billing method of reserved instances. For more information, see [Reserved instances](~~100371~~).
80430
+ * * You can call the [DescribeReservedInstances](~~100065~~) operation to query the reserved instances that you purchased.
80431
+ *
80432
+ * @param request RenewReservedInstancesRequest
80433
+ * @return RenewReservedInstancesResponse
80434
+ */
79760
80435
  async renewReservedInstances(request: RenewReservedInstancesRequest): Promise<RenewReservedInstancesResponse> {
79761
80436
  let runtime = new $Util.RuntimeOptions({ });
79762
80437
  return await this.renewReservedInstancesWithOptions(request, runtime);
79763
80438
  }
79764
80439
 
80440
+ /**
80441
+ * When you call this operation, take note of the following items:
80442
+ * * You must specify the `ImageId` parameter or the `DiskId` parameter. You cannot specify both parameters in the same request. Otherwise, the request fails and an error message is returned.````
80443
+ * > You can use the `DiskId` parameter to replace the operating system of an instance. This feature is in invitational preview. To use this feature, [submit a ticket](https://workorder-intl.console.aliyun.com/console.htm).
80444
+ * * The category of the system disk cannot be changed.
80445
+ * * The billing method of the system disk cannot be changed.
80446
+ * * The instance must be in the `Stopped` state.
80447
+ * **
80448
+ * **Note**This item is applicable only to instances in virtual private clouds (VPCs). If the instance is a pay-as-you-go instance and the economical mode is enabled by default for the instance, you must set the stop mode to the standard mode when you stop the instance. This prevents instance restart failures caused by insufficient resources after the system disk is replaced. For more information, see [StopInstance](~~25501~~).
80449
+ * * If the response contains `{"OperationLocks": {"LockReason" : "security"}}`, the instance is locked for security reasons. No operations are allowed on the instance.`` For more information, see [API behavior when an instance is locked for security reasons](~~25695~~).
80450
+ * * You cannot have unpaid orders that are associated with the instance.
80451
+ * * You can configure the `SystemDisk.Size` parameter to specify the capacity of the new system disk.
80452
+ * After you call this operation, you can use one of the following methods to check whether the system disk is replaced:
80453
+ * * Call the [DescribeDisks](~~25514~~) operation to query the state of the new system disk. If the new system disk is in the In_use state, the system disk is replaced.
80454
+ * * Call the [DescribeInstances](~~25506~~) operation to query the state of the instance whose system disk is replaced. If `OperationLocks` in the response is empty, the system disk is replaced.
80455
+ *
80456
+ * @param request ReplaceSystemDiskRequest
80457
+ * @param runtime runtime options for this request RuntimeOptions
80458
+ * @return ReplaceSystemDiskResponse
80459
+ */
79765
80460
  async replaceSystemDiskWithOptions(request: ReplaceSystemDiskRequest, runtime: $Util.RuntimeOptions): Promise<ReplaceSystemDiskResponse> {
79766
80461
  Util.validateModel(request);
79767
80462
  let query = { };
@@ -79862,6 +80557,25 @@ export default class Client extends OpenApi {
79862
80557
  return $tea.cast<ReplaceSystemDiskResponse>(await this.callApi(params, req, runtime), new ReplaceSystemDiskResponse({}));
79863
80558
  }
79864
80559
 
80560
+ /**
80561
+ * When you call this operation, take note of the following items:
80562
+ * * You must specify the `ImageId` parameter or the `DiskId` parameter. You cannot specify both parameters in the same request. Otherwise, the request fails and an error message is returned.````
80563
+ * > You can use the `DiskId` parameter to replace the operating system of an instance. This feature is in invitational preview. To use this feature, [submit a ticket](https://workorder-intl.console.aliyun.com/console.htm).
80564
+ * * The category of the system disk cannot be changed.
80565
+ * * The billing method of the system disk cannot be changed.
80566
+ * * The instance must be in the `Stopped` state.
80567
+ * **
80568
+ * **Note**This item is applicable only to instances in virtual private clouds (VPCs). If the instance is a pay-as-you-go instance and the economical mode is enabled by default for the instance, you must set the stop mode to the standard mode when you stop the instance. This prevents instance restart failures caused by insufficient resources after the system disk is replaced. For more information, see [StopInstance](~~25501~~).
80569
+ * * If the response contains `{"OperationLocks": {"LockReason" : "security"}}`, the instance is locked for security reasons. No operations are allowed on the instance.`` For more information, see [API behavior when an instance is locked for security reasons](~~25695~~).
80570
+ * * You cannot have unpaid orders that are associated with the instance.
80571
+ * * You can configure the `SystemDisk.Size` parameter to specify the capacity of the new system disk.
80572
+ * After you call this operation, you can use one of the following methods to check whether the system disk is replaced:
80573
+ * * Call the [DescribeDisks](~~25514~~) operation to query the state of the new system disk. If the new system disk is in the In_use state, the system disk is replaced.
80574
+ * * Call the [DescribeInstances](~~25506~~) operation to query the state of the instance whose system disk is replaced. If `OperationLocks` in the response is empty, the system disk is replaced.
80575
+ *
80576
+ * @param request ReplaceSystemDiskRequest
80577
+ * @return ReplaceSystemDiskResponse
80578
+ */
79865
80579
  async replaceSystemDisk(request: ReplaceSystemDiskRequest): Promise<ReplaceSystemDiskResponse> {
79866
80580
  let runtime = new $Util.RuntimeOptions({ });
79867
80581
  return await this.replaceSystemDiskWithOptions(request, runtime);
@@ -79948,6 +80662,17 @@ export default class Client extends OpenApi {
79948
80662
  return await this.reportInstancesStatusWithOptions(request, runtime);
79949
80663
  }
79950
80664
 
80665
+ /**
80666
+ * When you call this operation, take note of the following items:
80667
+ * * The disk must be in the In Use (In_Use) or Unattached (Available) state.
80668
+ * * The Elastic Compute Service (ECS) instance to which the disk is attached must be in the Stopped (Stopped) state. You can call the [StopInstances](~~155372~~) operation to stop an instance.
80669
+ * * The snapshot specified by the SnapshotId parameter must be created from the disk specified by the DiskId parameter.
80670
+ * * When you call the [DescribeInstances](~~25506~~) operation to query instance information, if the response contains `{"OperationLocks": {"LockReason" : "security"}}` for an instance, the instance is locked for security reasons and no operations can be performed on the instance.
80671
+ *
80672
+ * @param request ResetDiskRequest
80673
+ * @param runtime runtime options for this request RuntimeOptions
80674
+ * @return ResetDiskResponse
80675
+ */
79951
80676
  async resetDiskWithOptions(request: ResetDiskRequest, runtime: $Util.RuntimeOptions): Promise<ResetDiskResponse> {
79952
80677
  Util.validateModel(request);
79953
80678
  let query = { };
@@ -79996,6 +80721,16 @@ export default class Client extends OpenApi {
79996
80721
  return $tea.cast<ResetDiskResponse>(await this.callApi(params, req, runtime), new ResetDiskResponse({}));
79997
80722
  }
79998
80723
 
80724
+ /**
80725
+ * When you call this operation, take note of the following items:
80726
+ * * The disk must be in the In Use (In_Use) or Unattached (Available) state.
80727
+ * * The Elastic Compute Service (ECS) instance to which the disk is attached must be in the Stopped (Stopped) state. You can call the [StopInstances](~~155372~~) operation to stop an instance.
80728
+ * * The snapshot specified by the SnapshotId parameter must be created from the disk specified by the DiskId parameter.
80729
+ * * When you call the [DescribeInstances](~~25506~~) operation to query instance information, if the response contains `{"OperationLocks": {"LockReason" : "security"}}` for an instance, the instance is locked for security reasons and no operations can be performed on the instance.
80730
+ *
80731
+ * @param request ResetDiskRequest
80732
+ * @return ResetDiskResponse
80733
+ */
79999
80734
  async resetDisk(request: ResetDiskRequest): Promise<ResetDiskResponse> {
80000
80735
  let runtime = new $Util.RuntimeOptions({ });
80001
80736
  return await this.resetDiskWithOptions(request, runtime);
@@ -80067,6 +80802,19 @@ export default class Client extends OpenApi {
80067
80802
  return await this.resetDisksWithOptions(request, runtime);
80068
80803
  }
80069
80804
 
80805
+ /**
80806
+ * ## Description
80807
+ * > Before you call this operation to resize a disk, you must check the partition format of the disk. You cannot resize a master boot record (MBR) disk to greater than or equal to 2 TiB without data loss. To resize an MBR disk to greater than or equal to 2 TiB in size, we recommend that you create and attach a new data disk with the desired size. Then, you can partition and format the new data disk to GUID partition table (GPT) and copy data from the MBR disk to the new GPT data disk. For more information, see [Resize disks offline](~~44986~~).
80808
+ * * You can resize the following categories of disks: basic disks (`cloud`), ultra disks (`cloud_efficiency`), standard SSDs (`cloud_ssd`), and enhanced SSDs (ESSDs) (`cloud_essd`).
80809
+ * * You cannot resize a disk when a snapshot is being created for the disk.
80810
+ * * The instance to which the disk to be resized is attached must be in the **Running** (`Running`) or **Stopped** (`Stopped`) state.
80811
+ * * After you resize a disk, its partitions and file systems are not changed. You must manually allocate the storage space on the disk after it is resized.
80812
+ * * Disks for which the multi-attach feature is enabled can only be resized offline. Before you resize the disks, make sure that instances to which the disks are attached are in the **Stopped** (`Stopped`) state.
80813
+ *
80814
+ * @param request ResizeDiskRequest
80815
+ * @param runtime runtime options for this request RuntimeOptions
80816
+ * @return ResizeDiskResponse
80817
+ */
80070
80818
  async resizeDiskWithOptions(request: ResizeDiskRequest, runtime: $Util.RuntimeOptions): Promise<ResizeDiskResponse> {
80071
80819
  Util.validateModel(request);
80072
80820
  let query = { };
@@ -80119,11 +80867,52 @@ export default class Client extends OpenApi {
80119
80867
  return $tea.cast<ResizeDiskResponse>(await this.callApi(params, req, runtime), new ResizeDiskResponse({}));
80120
80868
  }
80121
80869
 
80870
+ /**
80871
+ * ## Description
80872
+ * > Before you call this operation to resize a disk, you must check the partition format of the disk. You cannot resize a master boot record (MBR) disk to greater than or equal to 2 TiB without data loss. To resize an MBR disk to greater than or equal to 2 TiB in size, we recommend that you create and attach a new data disk with the desired size. Then, you can partition and format the new data disk to GUID partition table (GPT) and copy data from the MBR disk to the new GPT data disk. For more information, see [Resize disks offline](~~44986~~).
80873
+ * * You can resize the following categories of disks: basic disks (`cloud`), ultra disks (`cloud_efficiency`), standard SSDs (`cloud_ssd`), and enhanced SSDs (ESSDs) (`cloud_essd`).
80874
+ * * You cannot resize a disk when a snapshot is being created for the disk.
80875
+ * * The instance to which the disk to be resized is attached must be in the **Running** (`Running`) or **Stopped** (`Stopped`) state.
80876
+ * * After you resize a disk, its partitions and file systems are not changed. You must manually allocate the storage space on the disk after it is resized.
80877
+ * * Disks for which the multi-attach feature is enabled can only be resized offline. Before you resize the disks, make sure that instances to which the disks are attached are in the **Stopped** (`Stopped`) state.
80878
+ *
80879
+ * @param request ResizeDiskRequest
80880
+ * @return ResizeDiskResponse
80881
+ */
80122
80882
  async resizeDisk(request: ResizeDiskRequest): Promise<ResizeDiskResponse> {
80123
80883
  let runtime = new $Util.RuntimeOptions({ });
80124
80884
  return await this.resizeDiskWithOptions(request, runtime);
80125
80885
  }
80126
80886
 
80887
+ /**
80888
+ * When you call this operation, you can use one of the following groups of parameters to specify the security group rules that you want to delete:
80889
+ * * Parameters used to specify the IDs of security group rules. We recommend that you specify the IDs of security group rules to delete the rules. - If the specified security group rule ID does not exist, an error is reported. - Parameters that are no longer used and their Permissions.N-prefixed counterparts cannot be specified at the same time. - Sample request:
80890
+ * http(s)://ecs.aliyuncs.com/?Action=RevokeSecurityGroup
80891
+ * &SecurityGroupId=sg-bp67acfmxazb4p****
80892
+ * &SecurityGroupRuleId.1=sgr-bpdfmk****
80893
+ * &SecurityGroupRuleId.2=sgr-bpdfmg****
80894
+ * &<Common request parameters>
80895
+ * * Parameters prefixed with Permissions.N.
80896
+ * * If no security group rule matches the specified parameters, the call to RevokeSecurityGroup is successful but no security group rule is deleted.
80897
+ * * Security group rule IDs and parameters without the Permissions.N prefix cannot be specified.
80898
+ * * You can determine an inbound rule by specifying one of the following groups of parameters. You cannot determine a security group rule by specifying only one parameter.
80899
+ * * Parameters used to determine an inbound security group rule that controls access from a specified CIDR block: SecurityGroupId, Permissions.N.IpProtocol, Permissions.N.PortRange, Permissions.N.SourcePortRange, Permissions.N.NicType, Permissions.N.Policy, Permissions.N.DestCidrIp, and Permissions.N.SourceCidrIp. The Permissions.N.SourcePortRange and Permissions.N.DestCidrIp parameters are optional. Sample request:
80900
+ * ```
80901
+ * http(s)://ecs.aliyuncs.com/?Action=RevokeSecurityGroup&SecurityGroupId=sg-bp67acfmxazb4p****&Permissions.1.SourceCidrIp=10.0.0.0/8&Permissions.1.IpProtocol=TCP&Permissions.1.PortRange=80/80&Permissions.1.NicType=intranet&Permissions.1.Policy=accept&<Common request parameters>
80902
+ * ```
80903
+ * * Parameters used to determine an inbound security group rule that controls access from a security group: SecurityGroupId, Permissions.N.IpProtocol, Permissions.N.PortRange, Permissions.N.SourcePortRange, Permissions.N.NicType, Permissions.N.Policy, Permissions.N.DestCidrIp, and Permissions.N.SourceGroupId. The Permissions.N.SourcePortRange and Permissions.N.DestCidrIp parameters are optional. Sample request:
80904
+ * ```
80905
+ * http(s)://ecs.aliyuncs.com/?Action=RevokeSecurityGroup \\&SecurityGroupId=sg-bp67acfmxazb4p****&Permissions.1.SourceGroupId=sg-bp67acfmxa123b****&Permissions.1.IpProtocol=TCP&Permissions.1.PortRange=80/80&Permissions.1.NicType=intranet&Permissions.1.Policy=accept&<Common request parameters>
80906
+ * ```
80907
+ * * Parameters used to delete an inbound security group rule that controls access from a prefix list. SecurityGroupId, Permissions.N.IpProtocol, Permissions.N.PortRange, Permissions.N.SourcePortRange, Permissions.N.NicType, Permissions.N.Policy, Permissions.N.DestCidrIp, and Permissions.N.SourcePrefixListId. The Permissions.N.SourcePortRange and Permissions.N.DestCidrIp parameters are optional. Sample request:
80908
+ * ```
80909
+ * http(s)://ecs.aliyuncs.com/?Action=RevokeSecurityGroup&SecurityGroupId=sg-bp67acfmxazb4p****&Permissions.1.SourcePrefixListId=pl-x1j1k5ykzqlixdcy****&Permissions.1.IpProtocol=TCP&Permissions.1.PortRange=80/80&Permissions.1.NicType=intranet&Permissions.1.Policy=accept&<Common request parameters>
80910
+ * ```
80911
+ *
80912
+ * @param request RevokeSecurityGroupRequest
80913
+ * @param runtime runtime options for this request RuntimeOptions
80914
+ * @return RevokeSecurityGroupResponse
80915
+ */
80127
80916
  async revokeSecurityGroupWithOptions(request: RevokeSecurityGroupRequest, runtime: $Util.RuntimeOptions): Promise<RevokeSecurityGroupResponse> {
80128
80917
  Util.validateModel(request);
80129
80918
  let query = { };
@@ -80252,6 +81041,34 @@ export default class Client extends OpenApi {
80252
81041
  return $tea.cast<RevokeSecurityGroupResponse>(await this.callApi(params, req, runtime), new RevokeSecurityGroupResponse({}));
80253
81042
  }
80254
81043
 
81044
+ /**
81045
+ * When you call this operation, you can use one of the following groups of parameters to specify the security group rules that you want to delete:
81046
+ * * Parameters used to specify the IDs of security group rules. We recommend that you specify the IDs of security group rules to delete the rules. - If the specified security group rule ID does not exist, an error is reported. - Parameters that are no longer used and their Permissions.N-prefixed counterparts cannot be specified at the same time. - Sample request:
81047
+ * http(s)://ecs.aliyuncs.com/?Action=RevokeSecurityGroup
81048
+ * &SecurityGroupId=sg-bp67acfmxazb4p****
81049
+ * &SecurityGroupRuleId.1=sgr-bpdfmk****
81050
+ * &SecurityGroupRuleId.2=sgr-bpdfmg****
81051
+ * &<Common request parameters>
81052
+ * * Parameters prefixed with Permissions.N.
81053
+ * * If no security group rule matches the specified parameters, the call to RevokeSecurityGroup is successful but no security group rule is deleted.
81054
+ * * Security group rule IDs and parameters without the Permissions.N prefix cannot be specified.
81055
+ * * You can determine an inbound rule by specifying one of the following groups of parameters. You cannot determine a security group rule by specifying only one parameter.
81056
+ * * Parameters used to determine an inbound security group rule that controls access from a specified CIDR block: SecurityGroupId, Permissions.N.IpProtocol, Permissions.N.PortRange, Permissions.N.SourcePortRange, Permissions.N.NicType, Permissions.N.Policy, Permissions.N.DestCidrIp, and Permissions.N.SourceCidrIp. The Permissions.N.SourcePortRange and Permissions.N.DestCidrIp parameters are optional. Sample request:
81057
+ * ```
81058
+ * http(s)://ecs.aliyuncs.com/?Action=RevokeSecurityGroup&SecurityGroupId=sg-bp67acfmxazb4p****&Permissions.1.SourceCidrIp=10.0.0.0/8&Permissions.1.IpProtocol=TCP&Permissions.1.PortRange=80/80&Permissions.1.NicType=intranet&Permissions.1.Policy=accept&<Common request parameters>
81059
+ * ```
81060
+ * * Parameters used to determine an inbound security group rule that controls access from a security group: SecurityGroupId, Permissions.N.IpProtocol, Permissions.N.PortRange, Permissions.N.SourcePortRange, Permissions.N.NicType, Permissions.N.Policy, Permissions.N.DestCidrIp, and Permissions.N.SourceGroupId. The Permissions.N.SourcePortRange and Permissions.N.DestCidrIp parameters are optional. Sample request:
81061
+ * ```
81062
+ * http(s)://ecs.aliyuncs.com/?Action=RevokeSecurityGroup \\&SecurityGroupId=sg-bp67acfmxazb4p****&Permissions.1.SourceGroupId=sg-bp67acfmxa123b****&Permissions.1.IpProtocol=TCP&Permissions.1.PortRange=80/80&Permissions.1.NicType=intranet&Permissions.1.Policy=accept&<Common request parameters>
81063
+ * ```
81064
+ * * Parameters used to delete an inbound security group rule that controls access from a prefix list. SecurityGroupId, Permissions.N.IpProtocol, Permissions.N.PortRange, Permissions.N.SourcePortRange, Permissions.N.NicType, Permissions.N.Policy, Permissions.N.DestCidrIp, and Permissions.N.SourcePrefixListId. The Permissions.N.SourcePortRange and Permissions.N.DestCidrIp parameters are optional. Sample request:
81065
+ * ```
81066
+ * http(s)://ecs.aliyuncs.com/?Action=RevokeSecurityGroup&SecurityGroupId=sg-bp67acfmxazb4p****&Permissions.1.SourcePrefixListId=pl-x1j1k5ykzqlixdcy****&Permissions.1.IpProtocol=TCP&Permissions.1.PortRange=80/80&Permissions.1.NicType=intranet&Permissions.1.Policy=accept&<Common request parameters>
81067
+ * ```
81068
+ *
81069
+ * @param request RevokeSecurityGroupRequest
81070
+ * @return RevokeSecurityGroupResponse
81071
+ */
80255
81072
  async revokeSecurityGroup(request: RevokeSecurityGroupRequest): Promise<RevokeSecurityGroupResponse> {
80256
81073
  let runtime = new $Util.RuntimeOptions({ });
80257
81074
  return await this.revokeSecurityGroupWithOptions(request, runtime);
@@ -80489,6 +81306,28 @@ export default class Client extends OpenApi {
80489
81306
  return await this.revokeSecurityGroupEgressWithOptions(request, runtime);
80490
81307
  }
80491
81308
 
81309
+ /**
81310
+ * Compared with the [CreateCommand](~~64844~~) and [InvokeCommand](~~64841~~) operations, you can call the RunCommand operation once to create and run a command.
81311
+ * When you call this operation, take note of the following items:
81312
+ * * The instances on which you want to run a command must reside in a virtual private cloud (VPC).
81313
+ * * The instances must be in the `Running` state.
81314
+ * * The Cloud Assistant client must be installed on the instances. For more information, see [InstallCloudAssistant](~~85916~~).
81315
+ * * Before you run a PowerShell command on a Windows instance, make sure that the PowerShell module is installed on the instance.
81316
+ * * If you want to specify a schedule by using a cron expression, you can specify a time zone based on your business requirements. If you do not specify a time zone, the schedule is determined by the system time of the instance. Make sure that the time or time zone of the instance meets your business requirements. For information about time zones, see [Configure the NTP service for ECS instances that run CentOS 6](~~92803~~) or [Configure the NTP service for Windows instances](~~51890~~).
81317
+ * * You can specify the `TimeOut` parameter to specify a timeout period for executions of the command on instances. If an execution times out, the Cloud Assistant client forcibly terminates the command process.
81318
+ * * If the one-time execution of a command times out, the execution state of the command changes to Failed. You can call the [InvokeRecordStatus](~~64845~~) operation to query the command execution state.
81319
+ * * For a scheduled task, the timeout period takes effect on each execution of the command. When a command execution times out, the subsequent executions of the command are not affected. If a scheduled execution of a command times out, the execution state of the command changes to Failed. You can call the [InvokeRecordStatus](~~64845~~) operation to query the command execution state.
81320
+ * To ensure that scheduled tasks can run as expected, make sure that the version of the Cloud Assistant client is not earlier than the following versions. A scheduled task can run a command at a specific interval, only once at a specific time, or at specific times based on a cron expression that includes a specific year or time zone. If the `ClientNeedUpgrade` error code is returned, you must update the Cloud Assistant client to the latest version. For more information, see [Upgrade or disable upgrades for the Cloud Assistant client](~~134383~~).
81321
+ * - Linux: 2.2.3.282
81322
+ * - Windows: 2.1.3.282
81323
+ * * Command executions may fail due to instance status exceptions, network exceptions, or exceptions on the Cloud Assistant client. If an execution fails, no execution information is generated.
81324
+ * * If you set the `EnableParameter` parameter to true, the custom parameter feature is enabled. If you specify the `CommandContent` parameter, you can specify custom parameters in the `{{parameter}}` format. After the command is run, the key-value pairs of the custom parameters are passed in.
81325
+ * * You can retain up to 500 to 10,000 Cloud Assistant commands in each region based on your ECS usage. You can call the [DescribeAccountAttribute](~~73772~~) operation to query quotas.
81326
+ *
81327
+ * @param tmpReq RunCommandRequest
81328
+ * @param runtime runtime options for this request RuntimeOptions
81329
+ * @return RunCommandResponse
81330
+ */
80492
81331
  async runCommandWithOptions(tmpReq: RunCommandRequest, runtime: $Util.RuntimeOptions): Promise<RunCommandResponse> {
80493
81332
  Util.validateModel(tmpReq);
80494
81333
  let request = new RunCommandShrinkRequest({ });
@@ -80619,11 +81458,59 @@ export default class Client extends OpenApi {
80619
81458
  return $tea.cast<RunCommandResponse>(await this.callApi(params, req, runtime), new RunCommandResponse({}));
80620
81459
  }
80621
81460
 
81461
+ /**
81462
+ * Compared with the [CreateCommand](~~64844~~) and [InvokeCommand](~~64841~~) operations, you can call the RunCommand operation once to create and run a command.
81463
+ * When you call this operation, take note of the following items:
81464
+ * * The instances on which you want to run a command must reside in a virtual private cloud (VPC).
81465
+ * * The instances must be in the `Running` state.
81466
+ * * The Cloud Assistant client must be installed on the instances. For more information, see [InstallCloudAssistant](~~85916~~).
81467
+ * * Before you run a PowerShell command on a Windows instance, make sure that the PowerShell module is installed on the instance.
81468
+ * * If you want to specify a schedule by using a cron expression, you can specify a time zone based on your business requirements. If you do not specify a time zone, the schedule is determined by the system time of the instance. Make sure that the time or time zone of the instance meets your business requirements. For information about time zones, see [Configure the NTP service for ECS instances that run CentOS 6](~~92803~~) or [Configure the NTP service for Windows instances](~~51890~~).
81469
+ * * You can specify the `TimeOut` parameter to specify a timeout period for executions of the command on instances. If an execution times out, the Cloud Assistant client forcibly terminates the command process.
81470
+ * * If the one-time execution of a command times out, the execution state of the command changes to Failed. You can call the [InvokeRecordStatus](~~64845~~) operation to query the command execution state.
81471
+ * * For a scheduled task, the timeout period takes effect on each execution of the command. When a command execution times out, the subsequent executions of the command are not affected. If a scheduled execution of a command times out, the execution state of the command changes to Failed. You can call the [InvokeRecordStatus](~~64845~~) operation to query the command execution state.
81472
+ * To ensure that scheduled tasks can run as expected, make sure that the version of the Cloud Assistant client is not earlier than the following versions. A scheduled task can run a command at a specific interval, only once at a specific time, or at specific times based on a cron expression that includes a specific year or time zone. If the `ClientNeedUpgrade` error code is returned, you must update the Cloud Assistant client to the latest version. For more information, see [Upgrade or disable upgrades for the Cloud Assistant client](~~134383~~).
81473
+ * - Linux: 2.2.3.282
81474
+ * - Windows: 2.1.3.282
81475
+ * * Command executions may fail due to instance status exceptions, network exceptions, or exceptions on the Cloud Assistant client. If an execution fails, no execution information is generated.
81476
+ * * If you set the `EnableParameter` parameter to true, the custom parameter feature is enabled. If you specify the `CommandContent` parameter, you can specify custom parameters in the `{{parameter}}` format. After the command is run, the key-value pairs of the custom parameters are passed in.
81477
+ * * You can retain up to 500 to 10,000 Cloud Assistant commands in each region based on your ECS usage. You can call the [DescribeAccountAttribute](~~73772~~) operation to query quotas.
81478
+ *
81479
+ * @param request RunCommandRequest
81480
+ * @return RunCommandResponse
81481
+ */
80622
81482
  async runCommand(request: RunCommandRequest): Promise<RunCommandResponse> {
80623
81483
  let runtime = new $Util.RuntimeOptions({ });
80624
81484
  return await this.runCommandWithOptions(request, runtime);
80625
81485
  }
80626
81486
 
81487
+ /**
81488
+ * * **Preparations**:
81489
+ * * The real-name verification is complete. For more information, see [Real-name verification](~~48263~~).
81490
+ * * Cost estimation: Learn about the billing methods of ECS resources. For more information, see [Billing overview](~~25398~~).
81491
+ * * Instance type selection: Call the [DescribeInstanceTypes](~~25620~~) operation to query the performance data of instance types, or see [Best practices for instance type selection](~~58291~~) to learn about how to select instance types.
81492
+ * * Query for available resources: Call the [DescribeAvailableResource](~~66186~~) operation to query available resources in a specific region or zone.
81493
+ * * Network planning: Make sure that you have security groups available for use. For more information, see [CreateSecurityGroup](~~25553~~). Before you create an instance of the Virtual Private Cloud (VPC) type, create a VPC in the region where you want to create the instance. For more information, see [Create a VPC](~~65430~~).
81494
+ * * **Precautions**:
81495
+ * * You can create a maximum of 100 instances at a time.
81496
+ * * You can use the `AutoReleaseTime` parameter to set the time when you want the instances to be automatically released.
81497
+ * * After instances are created, you can call the [DescribeInstances](~~25506~~) operation to check their states.
81498
+ * * By default, instances automatically start after they are created. Instances are ready for use when they are in the Running (`Running`) state.
81499
+ * * As of November 27, 2020, the maximum bandwidth value available for you to create ECS instances or to change ECS instance configurations is subject to the throttling policy for your account. To increase the maximum bandwidth value, submit a ticket. The throttling policy imposes the following constraints: Within a single region, the total maximum bandwidth value of all instances that use the pay-by-traffic billing method for network usage cannot exceed 5 Gbit/s and that of all instances that use the pay-by-bandwidth billing method for network usage cannot exceed 50 Gbit/s.
81500
+ * * Different from the [CreateInstance](~~25499~~) operation, the `RunInstances` operation allows the system to assign public IP addresses to the new instances if you set the `InternetMaxBandwidthOut` parameter to a value greater than 0.
81501
+ * * When you call the RunInstances operation to create an instance, you can use one of the following methods to bind a primary elastic network interface (ENI) to the instance. Note that you can use only one of the methods to configure the primary ENI in each call. Otherwise, the call fails and an error message is returned. Specify parameters such as `SecurityGroupId`, `VSwitchId`, `PrivateIpAddress`, `NetworkInterfaceQueueNumber`, and `Ipv6AddressCount` to configure the primary ENI. Specify parameters that start with `NetworkInterface.N.` to configure the primary and secondary ENIs. If `NetworkInterface.N.InstanceType` is set to `Primary`, the primary ENI is bound to the instance. If `NetworkInterface.N.InstanceType` is set to `Secondary` or left empty, a secondary ENI is bound to the instance.
81502
+ * * After you call this operation, an error is returned if a parameter is invalid or if available resources are insufficient. For more information, see the "Error codes" section of this topic.
81503
+ * > If the `QuotaExceed.ElasticQuota` error is returned when you call this operation, you have reached the maximum number of instances of the specified instance type that can be created within the specified region or the maximum number of vCPUs for all instance types in a zone. You can go to the [ECS console](https://ecs.console.aliyun.com/?spm=a2c8b.12215451.favorites.decs.5e3a336aMGTtzy#/privileges/quota) or [Quota Center](https://quotas.console.aliyun.com/products/ecs/quotas) to request a quota increase.
81504
+ * * **Best practices**:
81505
+ * * We recommend that you use auto provisioning groups in the following scenarios: Resources are insufficient to create more than 100 instances at a time, you want to quickly create instances regardless of resource configurations such as instance types or zones, or you want to create instances to consume a specific total number of vCPUs regardless of the number of the instances. You can call the [CreateAutoProvisioningGroup](~~122738~~) operation to create an auto provisioning group to deploy an instance cluster across different billing methods, instance families, and zones. For more information, see [Use auto provisioning group-related API operations to create multiple ECS instances at the same time](~~200772~~).
81506
+ * * You can call the `RunInstances` operation to batch create instances. To better manage and search for these instances, we recommend that you specify tags for the instances by using the `Tag.N.Key` and `Tag.N.Value` parameters. You can also append incremental suffixes (`UniqueSuffix`) to the hostname (`HostName`) and to the instance name (`InstanceName`).
81507
+ * * A launch template contains parameters required to create an instance so that you do not have to specify these parameters every time you create instances. You can call the [CreateLaunchTemplate](~~74686~~) operation to create a launch template. Then, in your request to call the `RunInstances` operation, you can specify the `LaunchTemplateId` and `LaunchTemplateVersion` parameters to use the launch template.
81508
+ * * When you create an instance in the [ECS console](https://ecs.console.aliyun.com/), you can view the best practices for calling the `RunInstances` operation. In the Preview step, click View Open API in the Configurations Selected section. In the dialog box that appears, the left-side **API Workflow** section shows the operations and request parameters that are related to the `RunInstances` operation. The right-side section shows SDK examples for the **Java** and **Python** programming languages.
81509
+ *
81510
+ * @param request RunInstancesRequest
81511
+ * @param runtime runtime options for this request RuntimeOptions
81512
+ * @return RunInstancesResponse
81513
+ */
80627
81514
  async runInstancesWithOptions(request: RunInstancesRequest, runtime: $Util.RuntimeOptions): Promise<RunInstancesResponse> {
80628
81515
  Util.validateModel(request);
80629
81516
  let query = { };
@@ -80719,6 +81606,10 @@ export default class Client extends OpenApi {
80719
81606
  query["ImageId"] = request.imageId;
80720
81607
  }
80721
81608
 
81609
+ if (!Util.isUnset(request.imageOptions)) {
81610
+ query["ImageOptions"] = request.imageOptions;
81611
+ }
81612
+
80722
81613
  if (!Util.isUnset(request.instanceChargeType)) {
80723
81614
  query["InstanceChargeType"] = request.instanceChargeType;
80724
81615
  }
@@ -80944,11 +81835,50 @@ export default class Client extends OpenApi {
80944
81835
  return $tea.cast<RunInstancesResponse>(await this.callApi(params, req, runtime), new RunInstancesResponse({}));
80945
81836
  }
80946
81837
 
81838
+ /**
81839
+ * * **Preparations**:
81840
+ * * The real-name verification is complete. For more information, see [Real-name verification](~~48263~~).
81841
+ * * Cost estimation: Learn about the billing methods of ECS resources. For more information, see [Billing overview](~~25398~~).
81842
+ * * Instance type selection: Call the [DescribeInstanceTypes](~~25620~~) operation to query the performance data of instance types, or see [Best practices for instance type selection](~~58291~~) to learn about how to select instance types.
81843
+ * * Query for available resources: Call the [DescribeAvailableResource](~~66186~~) operation to query available resources in a specific region or zone.
81844
+ * * Network planning: Make sure that you have security groups available for use. For more information, see [CreateSecurityGroup](~~25553~~). Before you create an instance of the Virtual Private Cloud (VPC) type, create a VPC in the region where you want to create the instance. For more information, see [Create a VPC](~~65430~~).
81845
+ * * **Precautions**:
81846
+ * * You can create a maximum of 100 instances at a time.
81847
+ * * You can use the `AutoReleaseTime` parameter to set the time when you want the instances to be automatically released.
81848
+ * * After instances are created, you can call the [DescribeInstances](~~25506~~) operation to check their states.
81849
+ * * By default, instances automatically start after they are created. Instances are ready for use when they are in the Running (`Running`) state.
81850
+ * * As of November 27, 2020, the maximum bandwidth value available for you to create ECS instances or to change ECS instance configurations is subject to the throttling policy for your account. To increase the maximum bandwidth value, submit a ticket. The throttling policy imposes the following constraints: Within a single region, the total maximum bandwidth value of all instances that use the pay-by-traffic billing method for network usage cannot exceed 5 Gbit/s and that of all instances that use the pay-by-bandwidth billing method for network usage cannot exceed 50 Gbit/s.
81851
+ * * Different from the [CreateInstance](~~25499~~) operation, the `RunInstances` operation allows the system to assign public IP addresses to the new instances if you set the `InternetMaxBandwidthOut` parameter to a value greater than 0.
81852
+ * * When you call the RunInstances operation to create an instance, you can use one of the following methods to bind a primary elastic network interface (ENI) to the instance. Note that you can use only one of the methods to configure the primary ENI in each call. Otherwise, the call fails and an error message is returned. Specify parameters such as `SecurityGroupId`, `VSwitchId`, `PrivateIpAddress`, `NetworkInterfaceQueueNumber`, and `Ipv6AddressCount` to configure the primary ENI. Specify parameters that start with `NetworkInterface.N.` to configure the primary and secondary ENIs. If `NetworkInterface.N.InstanceType` is set to `Primary`, the primary ENI is bound to the instance. If `NetworkInterface.N.InstanceType` is set to `Secondary` or left empty, a secondary ENI is bound to the instance.
81853
+ * * After you call this operation, an error is returned if a parameter is invalid or if available resources are insufficient. For more information, see the "Error codes" section of this topic.
81854
+ * > If the `QuotaExceed.ElasticQuota` error is returned when you call this operation, you have reached the maximum number of instances of the specified instance type that can be created within the specified region or the maximum number of vCPUs for all instance types in a zone. You can go to the [ECS console](https://ecs.console.aliyun.com/?spm=a2c8b.12215451.favorites.decs.5e3a336aMGTtzy#/privileges/quota) or [Quota Center](https://quotas.console.aliyun.com/products/ecs/quotas) to request a quota increase.
81855
+ * * **Best practices**:
81856
+ * * We recommend that you use auto provisioning groups in the following scenarios: Resources are insufficient to create more than 100 instances at a time, you want to quickly create instances regardless of resource configurations such as instance types or zones, or you want to create instances to consume a specific total number of vCPUs regardless of the number of the instances. You can call the [CreateAutoProvisioningGroup](~~122738~~) operation to create an auto provisioning group to deploy an instance cluster across different billing methods, instance families, and zones. For more information, see [Use auto provisioning group-related API operations to create multiple ECS instances at the same time](~~200772~~).
81857
+ * * You can call the `RunInstances` operation to batch create instances. To better manage and search for these instances, we recommend that you specify tags for the instances by using the `Tag.N.Key` and `Tag.N.Value` parameters. You can also append incremental suffixes (`UniqueSuffix`) to the hostname (`HostName`) and to the instance name (`InstanceName`).
81858
+ * * A launch template contains parameters required to create an instance so that you do not have to specify these parameters every time you create instances. You can call the [CreateLaunchTemplate](~~74686~~) operation to create a launch template. Then, in your request to call the `RunInstances` operation, you can specify the `LaunchTemplateId` and `LaunchTemplateVersion` parameters to use the launch template.
81859
+ * * When you create an instance in the [ECS console](https://ecs.console.aliyun.com/), you can view the best practices for calling the `RunInstances` operation. In the Preview step, click View Open API in the Configurations Selected section. In the dialog box that appears, the left-side **API Workflow** section shows the operations and request parameters that are related to the `RunInstances` operation. The right-side section shows SDK examples for the **Java** and **Python** programming languages.
81860
+ *
81861
+ * @param request RunInstancesRequest
81862
+ * @return RunInstancesResponse
81863
+ */
80947
81864
  async runInstances(request: RunInstancesRequest): Promise<RunInstancesResponse> {
80948
81865
  let runtime = new $Util.RuntimeOptions({ });
80949
81866
  return await this.runInstancesWithOptions(request, runtime);
80950
81867
  }
80951
81868
 
81869
+ /**
81870
+ * * The instances to which to send a file must be in the Running (`Running`) state.
81871
+ * * The Cloud Assistant client must be installed on the instances. For information about how to install the Cloud Assistant client, see [InstallCloudAssistant](~~85916~~).
81872
+ * * Only the Cloud Assistant client versions that are later than the following ones support file sending. If the `ClientNeedUpgrade` error code is returned, you must upgrade the Cloud Assistant client to the latest version. For more information, see [Update or disable updates for the Cloud Assistant client](~~134383~~).
81873
+ * * For Linux instances, the version of the Cloud Assistant client must be later than 1.0.2.569.
81874
+ * * For Windows instances, the version of the Cloud Assistant client must be later than 1.0.0.149.
81875
+ * * The file to be sent must not exceed 32 KB in size after it is encoded in Base64.
81876
+ * * The file may fail to be sent due to exceptions on the instances, network, or the Cloud Assistance client. Call the [DescribeSendFileResults](~~~~) operation to troubleshoot the issues.
81877
+ *
81878
+ * @param request SendFileRequest
81879
+ * @param runtime runtime options for this request RuntimeOptions
81880
+ * @return SendFileResponse
81881
+ */
80952
81882
  async sendFileWithOptions(request: SendFileRequest, runtime: $Util.RuntimeOptions): Promise<SendFileResponse> {
80953
81883
  Util.validateModel(request);
80954
81884
  let query = { };
@@ -81045,6 +81975,18 @@ export default class Client extends OpenApi {
81045
81975
  return $tea.cast<SendFileResponse>(await this.callApi(params, req, runtime), new SendFileResponse({}));
81046
81976
  }
81047
81977
 
81978
+ /**
81979
+ * * The instances to which to send a file must be in the Running (`Running`) state.
81980
+ * * The Cloud Assistant client must be installed on the instances. For information about how to install the Cloud Assistant client, see [InstallCloudAssistant](~~85916~~).
81981
+ * * Only the Cloud Assistant client versions that are later than the following ones support file sending. If the `ClientNeedUpgrade` error code is returned, you must upgrade the Cloud Assistant client to the latest version. For more information, see [Update or disable updates for the Cloud Assistant client](~~134383~~).
81982
+ * * For Linux instances, the version of the Cloud Assistant client must be later than 1.0.2.569.
81983
+ * * For Windows instances, the version of the Cloud Assistant client must be later than 1.0.0.149.
81984
+ * * The file to be sent must not exceed 32 KB in size after it is encoded in Base64.
81985
+ * * The file may fail to be sent due to exceptions on the instances, network, or the Cloud Assistance client. Call the [DescribeSendFileResults](~~~~) operation to troubleshoot the issues.
81986
+ *
81987
+ * @param request SendFileRequest
81988
+ * @return SendFileResponse
81989
+ */
81048
81990
  async sendFile(request: SendFileRequest): Promise<SendFileResponse> {
81049
81991
  let runtime = new $Util.RuntimeOptions({ });
81050
81992
  return await this.sendFileWithOptions(request, runtime);
@@ -81114,6 +82056,14 @@ export default class Client extends OpenApi {
81114
82056
  return await this.startElasticityAssuranceWithOptions(request, runtime);
81115
82057
  }
81116
82058
 
82059
+ /**
82060
+ * * After an image template is created, you must call the StartImagePipelineExecution operation to execute an image creation task. The system creates, distributes, and shares an image based on the parameters configured in the image template.
82061
+ * * Only one image creation task can be executed at a time based on a single image template. You can call the CancelImagePipelineExecution operation multiple times to cancel multiple image creation tasks at a time. If you cancel some image creation tasks, the other tasks are not affected.
82062
+ *
82063
+ * @param request StartImagePipelineExecutionRequest
82064
+ * @param runtime runtime options for this request RuntimeOptions
82065
+ * @return StartImagePipelineExecutionResponse
82066
+ */
81117
82067
  async startImagePipelineExecutionWithOptions(request: StartImagePipelineExecutionRequest, runtime: $Util.RuntimeOptions): Promise<StartImagePipelineExecutionResponse> {
81118
82068
  Util.validateModel(request);
81119
82069
  let query = { };
@@ -81170,11 +82120,28 @@ export default class Client extends OpenApi {
81170
82120
  return $tea.cast<StartImagePipelineExecutionResponse>(await this.callApi(params, req, runtime), new StartImagePipelineExecutionResponse({}));
81171
82121
  }
81172
82122
 
82123
+ /**
82124
+ * * After an image template is created, you must call the StartImagePipelineExecution operation to execute an image creation task. The system creates, distributes, and shares an image based on the parameters configured in the image template.
82125
+ * * Only one image creation task can be executed at a time based on a single image template. You can call the CancelImagePipelineExecution operation multiple times to cancel multiple image creation tasks at a time. If you cancel some image creation tasks, the other tasks are not affected.
82126
+ *
82127
+ * @param request StartImagePipelineExecutionRequest
82128
+ * @return StartImagePipelineExecutionResponse
82129
+ */
81173
82130
  async startImagePipelineExecution(request: StartImagePipelineExecutionRequest): Promise<StartImagePipelineExecutionResponse> {
81174
82131
  let runtime = new $Util.RuntimeOptions({ });
81175
82132
  return await this.startImagePipelineExecutionWithOptions(request, runtime);
81176
82133
  }
81177
82134
 
82135
+ /**
82136
+ * ## Usage notes
82137
+ * When you call this operation, take note of the following items:
82138
+ * * The instances that you want to start must be in the **Stopped** (`Stopped`) state.
82139
+ * * If the response contains `{"OperationLocks"`: `{"LockReason" : "security"}}` for an instance when you query the information of the instance, the instance is locked for [security reasons](~~25695~~) and cannot be started.
82140
+ *
82141
+ * @param request StartInstanceRequest
82142
+ * @param runtime runtime options for this request RuntimeOptions
82143
+ * @return StartInstanceResponse
82144
+ */
81178
82145
  async startInstanceWithOptions(request: StartInstanceRequest, runtime: $Util.RuntimeOptions): Promise<StartInstanceResponse> {
81179
82146
  Util.validateModel(request);
81180
82147
  let query = { };
@@ -81223,11 +82190,30 @@ export default class Client extends OpenApi {
81223
82190
  return $tea.cast<StartInstanceResponse>(await this.callApi(params, req, runtime), new StartInstanceResponse({}));
81224
82191
  }
81225
82192
 
82193
+ /**
82194
+ * ## Usage notes
82195
+ * When you call this operation, take note of the following items:
82196
+ * * The instances that you want to start must be in the **Stopped** (`Stopped`) state.
82197
+ * * If the response contains `{"OperationLocks"`: `{"LockReason" : "security"}}` for an instance when you query the information of the instance, the instance is locked for [security reasons](~~25695~~) and cannot be started.
82198
+ *
82199
+ * @param request StartInstanceRequest
82200
+ * @return StartInstanceResponse
82201
+ */
81226
82202
  async startInstance(request: StartInstanceRequest): Promise<StartInstanceResponse> {
81227
82203
  let runtime = new $Util.RuntimeOptions({ });
81228
82204
  return await this.startInstanceWithOptions(request, runtime);
81229
82205
  }
81230
82206
 
82207
+ /**
82208
+ * When you call this operation, take note of the following items:
82209
+ * * The ECS instances that you want to start must be in the **Stopped** (`Stopped`) state.
82210
+ * * If the response contains `{"OperationLocks": {"LockReason" : "security"}}`, the ECS instance is locked to ensure security. No operations are allowed on the ECS instance.
82211
+ * * You can start multiple ECS instances at the same time and use the `BatchOptimization` parameter to specify the batch operation mode.
82212
+ *
82213
+ * @param request StartInstancesRequest
82214
+ * @param runtime runtime options for this request RuntimeOptions
82215
+ * @return StartInstancesResponse
82216
+ */
81231
82217
  async startInstancesWithOptions(request: StartInstancesRequest, runtime: $Util.RuntimeOptions): Promise<StartInstancesResponse> {
81232
82218
  Util.validateModel(request);
81233
82219
  let query = { };
@@ -81280,11 +82266,35 @@ export default class Client extends OpenApi {
81280
82266
  return $tea.cast<StartInstancesResponse>(await this.callApi(params, req, runtime), new StartInstancesResponse({}));
81281
82267
  }
81282
82268
 
82269
+ /**
82270
+ * When you call this operation, take note of the following items:
82271
+ * * The ECS instances that you want to start must be in the **Stopped** (`Stopped`) state.
82272
+ * * If the response contains `{"OperationLocks": {"LockReason" : "security"}}`, the ECS instance is locked to ensure security. No operations are allowed on the ECS instance.
82273
+ * * You can start multiple ECS instances at the same time and use the `BatchOptimization` parameter to specify the batch operation mode.
82274
+ *
82275
+ * @param request StartInstancesRequest
82276
+ * @return StartInstancesResponse
82277
+ */
81283
82278
  async startInstances(request: StartInstancesRequest): Promise<StartInstancesResponse> {
81284
82279
  let runtime = new $Util.RuntimeOptions({ });
81285
82280
  return await this.startInstancesWithOptions(request, runtime);
81286
82281
  }
81287
82282
 
82283
+ /**
82284
+ * ## Description
82285
+ * The session management feature is in public preview. To use this feature, log on with your Alibaba Cloud account and activate this feature.
82286
+ * When you use custom code to connect to an ECS instance that serves as a client, you can call this operation to obtain the WebSocket URL that is used to connect to the instance. Before you call this operation to create a session to an ECS instance, take note of the following items:
82287
+ * - The ECS instance must be in the Running (Running) state.
82288
+ * - The Cloud Assistant client must be installed on the ECS instance. You can call the [DescribeCloudAssistantStatus](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/describecloudassistantstatus) operation to check whether the Cloud Assistant client is installed on the ECS instance and query the version number of the installed Cloud Assistant client. - If the Cloud Assistant client is not installed on the ECS instance, call the [InstallCloudAssistant](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/installcloudassistant) operation to install the client.
82289
+ * - Only the Cloud Assistant client versions that are later than the following ones support the session management feature. You can upgrade your Cloud Assistant client. For information about how to upgrade the Cloud Assistant client, see [Update or disable updates for the Cloud Assistant client](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/update-or-disable-updates-for-the-cloud-assistant-client). - For Linux operating systems: V2.2.3.256
82290
+ * - For Windows operating systems: V2.1.3.256
82291
+ * - Each WebSocket URL returned by the StartTerminalSession operation remains valid for 10 minutes.
82292
+ * - Up to 1,000 sessions can be created and available per region. Each ECS instance can have up to 10 sessions in the connected state.
82293
+ *
82294
+ * @param request StartTerminalSessionRequest
82295
+ * @param runtime runtime options for this request RuntimeOptions
82296
+ * @return StartTerminalSessionResponse
82297
+ */
81288
82298
  async startTerminalSessionWithOptions(request: StartTerminalSessionRequest, runtime: $Util.RuntimeOptions): Promise<StartTerminalSessionResponse> {
81289
82299
  Util.validateModel(request);
81290
82300
  let query = { };
@@ -81337,11 +82347,33 @@ export default class Client extends OpenApi {
81337
82347
  return $tea.cast<StartTerminalSessionResponse>(await this.callApi(params, req, runtime), new StartTerminalSessionResponse({}));
81338
82348
  }
81339
82349
 
82350
+ /**
82351
+ * ## Description
82352
+ * The session management feature is in public preview. To use this feature, log on with your Alibaba Cloud account and activate this feature.
82353
+ * When you use custom code to connect to an ECS instance that serves as a client, you can call this operation to obtain the WebSocket URL that is used to connect to the instance. Before you call this operation to create a session to an ECS instance, take note of the following items:
82354
+ * - The ECS instance must be in the Running (Running) state.
82355
+ * - The Cloud Assistant client must be installed on the ECS instance. You can call the [DescribeCloudAssistantStatus](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/describecloudassistantstatus) operation to check whether the Cloud Assistant client is installed on the ECS instance and query the version number of the installed Cloud Assistant client. - If the Cloud Assistant client is not installed on the ECS instance, call the [InstallCloudAssistant](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/installcloudassistant) operation to install the client.
82356
+ * - Only the Cloud Assistant client versions that are later than the following ones support the session management feature. You can upgrade your Cloud Assistant client. For information about how to upgrade the Cloud Assistant client, see [Update or disable updates for the Cloud Assistant client](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/update-or-disable-updates-for-the-cloud-assistant-client). - For Linux operating systems: V2.2.3.256
82357
+ * - For Windows operating systems: V2.1.3.256
82358
+ * - Each WebSocket URL returned by the StartTerminalSession operation remains valid for 10 minutes.
82359
+ * - Up to 1,000 sessions can be created and available per region. Each ECS instance can have up to 10 sessions in the connected state.
82360
+ *
82361
+ * @param request StartTerminalSessionRequest
82362
+ * @return StartTerminalSessionResponse
82363
+ */
81340
82364
  async startTerminalSession(request: StartTerminalSessionRequest): Promise<StartTerminalSessionResponse> {
81341
82365
  let runtime = new $Util.RuntimeOptions({ });
81342
82366
  return await this.startTerminalSessionWithOptions(request, runtime);
81343
82367
  }
81344
82368
 
82369
+ /**
82370
+ * * If the response contains `{"OperationLocks": {"LockReason" : "security"}}`, the instance is locked for security reasons. No operations are allowed on the instance. ``For more information, see [API behavior when an instance is locked for security reasons](~~25695~~).
82371
+ * * If economical mode is enabled, you can set `StoppedMode` to KeepCharging to switch to standard mode. This allows an instance that is stopped in standard mode to retain its instance type resources and public IP address. However, you continue to be charged for the instance.
82372
+ *
82373
+ * @param request StopInstanceRequest
82374
+ * @param runtime runtime options for this request RuntimeOptions
82375
+ * @return StopInstanceResponse
82376
+ */
81345
82377
  async stopInstanceWithOptions(request: StopInstanceRequest, runtime: $Util.RuntimeOptions): Promise<StopInstanceResponse> {
81346
82378
  Util.validateModel(request);
81347
82379
  let query = { };
@@ -81402,6 +82434,13 @@ export default class Client extends OpenApi {
81402
82434
  return $tea.cast<StopInstanceResponse>(await this.callApi(params, req, runtime), new StopInstanceResponse({}));
81403
82435
  }
81404
82436
 
82437
+ /**
82438
+ * * If the response contains `{"OperationLocks": {"LockReason" : "security"}}`, the instance is locked for security reasons. No operations are allowed on the instance. ``For more information, see [API behavior when an instance is locked for security reasons](~~25695~~).
82439
+ * * If economical mode is enabled, you can set `StoppedMode` to KeepCharging to switch to standard mode. This allows an instance that is stopped in standard mode to retain its instance type resources and public IP address. However, you continue to be charged for the instance.
82440
+ *
82441
+ * @param request StopInstanceRequest
82442
+ * @return StopInstanceResponse
82443
+ */
81405
82444
  async stopInstance(request: StopInstanceRequest): Promise<StopInstanceResponse> {
81406
82445
  let runtime = new $Util.RuntimeOptions({ });
81407
82446
  return await this.stopInstanceWithOptions(request, runtime);
@@ -81489,6 +82528,14 @@ export default class Client extends OpenApi {
81489
82528
  return await this.stopInstancesWithOptions(request, runtime);
81490
82529
  }
81491
82530
 
82531
+ /**
82532
+ * * If you stop the process of a command that runs only once, the executions that have started are not interrupted. The executions that have not started are canceled.
82533
+ * * If you stop the process of a scheduled invocation command, the executions that have started are not interrupted. However, the execution does not start in the next period.
82534
+ *
82535
+ * @param request StopInvocationRequest
82536
+ * @param runtime runtime options for this request RuntimeOptions
82537
+ * @return StopInvocationResponse
82538
+ */
81492
82539
  async stopInvocationWithOptions(request: StopInvocationRequest, runtime: $Util.RuntimeOptions): Promise<StopInvocationResponse> {
81493
82540
  Util.validateModel(request);
81494
82541
  let query = { };
@@ -81541,11 +82588,25 @@ export default class Client extends OpenApi {
81541
82588
  return $tea.cast<StopInvocationResponse>(await this.callApi(params, req, runtime), new StopInvocationResponse({}));
81542
82589
  }
81543
82590
 
82591
+ /**
82592
+ * * If you stop the process of a command that runs only once, the executions that have started are not interrupted. The executions that have not started are canceled.
82593
+ * * If you stop the process of a scheduled invocation command, the executions that have started are not interrupted. However, the execution does not start in the next period.
82594
+ *
82595
+ * @param request StopInvocationRequest
82596
+ * @return StopInvocationResponse
82597
+ */
81544
82598
  async stopInvocation(request: StopInvocationRequest): Promise<StopInvocationResponse> {
81545
82599
  let runtime = new $Util.RuntimeOptions({ });
81546
82600
  return await this.stopInvocationWithOptions(request, runtime);
81547
82601
  }
81548
82602
 
82603
+ /**
82604
+ * Before you add tags to a resource, Alibaba Cloud checks the number of existing tags of the resource. If the maximum number of tags is reached, an error message is returned. For more information, see the "Tag limits" section in [Limits](~~25412~~).
82605
+ *
82606
+ * @param request TagResourcesRequest
82607
+ * @param runtime runtime options for this request RuntimeOptions
82608
+ * @return TagResourcesResponse
82609
+ */
81549
82610
  async tagResourcesWithOptions(request: TagResourcesRequest, runtime: $Util.RuntimeOptions): Promise<TagResourcesResponse> {
81550
82611
  Util.validateModel(request);
81551
82612
  let query = { };
@@ -81598,6 +82659,12 @@ export default class Client extends OpenApi {
81598
82659
  return $tea.cast<TagResourcesResponse>(await this.callApi(params, req, runtime), new TagResourcesResponse({}));
81599
82660
  }
81600
82661
 
82662
+ /**
82663
+ * Before you add tags to a resource, Alibaba Cloud checks the number of existing tags of the resource. If the maximum number of tags is reached, an error message is returned. For more information, see the "Tag limits" section in [Limits](~~25412~~).
82664
+ *
82665
+ * @param request TagResourcesRequest
82666
+ * @return TagResourcesResponse
82667
+ */
81601
82668
  async tagResources(request: TagResourcesRequest): Promise<TagResourcesResponse> {
81602
82669
  let runtime = new $Util.RuntimeOptions({ });
81603
82670
  return await this.tagResourcesWithOptions(request, runtime);
@@ -81747,6 +82814,15 @@ export default class Client extends OpenApi {
81747
82814
  return await this.terminateVirtualBorderRouterWithOptions(request, runtime);
81748
82815
  }
81749
82816
 
82817
+ /**
82818
+ * When you call this operation, take note of the following items:
82819
+ * * The ENI must be in the **Available** (Available) or **InUse** (InUse) state.
82820
+ * * If the ENI is a primary ENI, the Elastic Compute Service (ECS) instance to which the ENI is attached must be in the **Running** (Running) or **Stopped** (Stopped) state.
82821
+ *
82822
+ * @param request UnassignIpv6AddressesRequest
82823
+ * @param runtime runtime options for this request RuntimeOptions
82824
+ * @return UnassignIpv6AddressesResponse
82825
+ */
81750
82826
  async unassignIpv6AddressesWithOptions(request: UnassignIpv6AddressesRequest, runtime: $Util.RuntimeOptions): Promise<UnassignIpv6AddressesResponse> {
81751
82827
  Util.validateModel(request);
81752
82828
  let query = { };
@@ -81803,11 +82879,27 @@ export default class Client extends OpenApi {
81803
82879
  return $tea.cast<UnassignIpv6AddressesResponse>(await this.callApi(params, req, runtime), new UnassignIpv6AddressesResponse({}));
81804
82880
  }
81805
82881
 
82882
+ /**
82883
+ * When you call this operation, take note of the following items:
82884
+ * * The ENI must be in the **Available** (Available) or **InUse** (InUse) state.
82885
+ * * If the ENI is a primary ENI, the Elastic Compute Service (ECS) instance to which the ENI is attached must be in the **Running** (Running) or **Stopped** (Stopped) state.
82886
+ *
82887
+ * @param request UnassignIpv6AddressesRequest
82888
+ * @return UnassignIpv6AddressesResponse
82889
+ */
81806
82890
  async unassignIpv6Addresses(request: UnassignIpv6AddressesRequest): Promise<UnassignIpv6AddressesResponse> {
81807
82891
  let runtime = new $Util.RuntimeOptions({ });
81808
82892
  return await this.unassignIpv6AddressesWithOptions(request, runtime);
81809
82893
  }
81810
82894
 
82895
+ /**
82896
+ * * The ENI from which to unassign secondary private IP addresses must be in the **Available** (Available) or **InUse** (InUse) state.
82897
+ * * If the ENI is a primary ENI, the Elastic Compute Service (ECS) instance to which the ENI is attached must be in the **Running** (Running) or **Stopped** (Stopped) state.
82898
+ *
82899
+ * @param request UnassignPrivateIpAddressesRequest
82900
+ * @param runtime runtime options for this request RuntimeOptions
82901
+ * @return UnassignPrivateIpAddressesResponse
82902
+ */
81811
82903
  async unassignPrivateIpAddressesWithOptions(request: UnassignPrivateIpAddressesRequest, runtime: $Util.RuntimeOptions): Promise<UnassignPrivateIpAddressesResponse> {
81812
82904
  Util.validateModel(request);
81813
82905
  let query = { };
@@ -81864,6 +82956,13 @@ export default class Client extends OpenApi {
81864
82956
  return $tea.cast<UnassignPrivateIpAddressesResponse>(await this.callApi(params, req, runtime), new UnassignPrivateIpAddressesResponse({}));
81865
82957
  }
81866
82958
 
82959
+ /**
82960
+ * * The ENI from which to unassign secondary private IP addresses must be in the **Available** (Available) or **InUse** (InUse) state.
82961
+ * * If the ENI is a primary ENI, the Elastic Compute Service (ECS) instance to which the ENI is attached must be in the **Running** (Running) or **Stopped** (Stopped) state.
82962
+ *
82963
+ * @param request UnassignPrivateIpAddressesRequest
82964
+ * @return UnassignPrivateIpAddressesResponse
82965
+ */
81867
82966
  async unassignPrivateIpAddresses(request: UnassignPrivateIpAddressesRequest): Promise<UnassignPrivateIpAddressesResponse> {
81868
82967
  let runtime = new $Util.RuntimeOptions({ });
81869
82968
  return await this.unassignPrivateIpAddressesWithOptions(request, runtime);