tencentcloud-sdk-cbs 1.0.200

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,2629 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ module TencentCloud
18
+ module Cbs
19
+ module V20170312
20
+ # ApplySnapshot请求参数结构体
21
+ class ApplySnapshotRequest < TencentCloud::Common::AbstractModel
22
+ # @param SnapshotId: 快照ID, 可通过[DescribeSnapshots](/document/product/362/15647)查询。
23
+ # @type SnapshotId: String
24
+ # @param DiskId: 快照原云硬盘ID,可通过[DescribeDisks](/document/product/362/16315)接口查询。
25
+ # @type DiskId: String
26
+
27
+ attr_accessor :SnapshotId, :DiskId
28
+
29
+ def initialize(snapshotid=nil, diskid=nil)
30
+ @SnapshotId = snapshotid
31
+ @DiskId = diskid
32
+ end
33
+
34
+ def deserialize(params)
35
+ @SnapshotId = params['SnapshotId']
36
+ @DiskId = params['DiskId']
37
+ end
38
+ end
39
+
40
+ # ApplySnapshot返回参数结构体
41
+ class ApplySnapshotResponse < TencentCloud::Common::AbstractModel
42
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
43
+ # @type RequestId: String
44
+
45
+ attr_accessor :RequestId
46
+
47
+ def initialize(requestid=nil)
48
+ @RequestId = requestid
49
+ end
50
+
51
+ def deserialize(params)
52
+ @RequestId = params['RequestId']
53
+ end
54
+ end
55
+
56
+ # 描述一个实例已挂载和可挂载数据盘的数量。
57
+ class AttachDetail < TencentCloud::Common::AbstractModel
58
+ # @param InstanceId: 实例ID。
59
+ # @type InstanceId: String
60
+ # @param AttachedDiskCount: 实例已挂载数据盘的数量。
61
+ # @type AttachedDiskCount: Integer
62
+ # @param MaxAttachCount: 实例最大可挂载数据盘的数量。
63
+ # @type MaxAttachCount: Integer
64
+
65
+ attr_accessor :InstanceId, :AttachedDiskCount, :MaxAttachCount
66
+
67
+ def initialize(instanceid=nil, attacheddiskcount=nil, maxattachcount=nil)
68
+ @InstanceId = instanceid
69
+ @AttachedDiskCount = attacheddiskcount
70
+ @MaxAttachCount = maxattachcount
71
+ end
72
+
73
+ def deserialize(params)
74
+ @InstanceId = params['InstanceId']
75
+ @AttachedDiskCount = params['AttachedDiskCount']
76
+ @MaxAttachCount = params['MaxAttachCount']
77
+ end
78
+ end
79
+
80
+ # AttachDisks请求参数结构体
81
+ class AttachDisksRequest < TencentCloud::Common::AbstractModel
82
+ # @param InstanceId: 云服务器实例ID。云盘将被挂载到此云服务器上,通过[DescribeInstances](/document/product/213/15728)接口查询。
83
+ # @type InstanceId: String
84
+ # @param DiskIds: 将要被挂载的弹性云盘ID。通过[DescribeDisks](/document/product/362/16315)接口查询。单次最多可挂载10块弹性云盘。
85
+ # @type DiskIds: Array
86
+ # @param DeleteWithInstance: 可选参数,不传该参数则仅执行挂载操作。传入`True`时,会在挂载成功后将云硬盘设置为随云主机销毁模式,仅对按量计费云硬盘有效。
87
+ # @type DeleteWithInstance: Boolean
88
+ # @param AttachMode: 可选参数,用于控制云盘挂载时使用的挂载模式,目前仅对黑石裸金属机型有效。取值范围:<br><li>PF<br><li>VF
89
+ # @type AttachMode: String
90
+
91
+ attr_accessor :InstanceId, :DiskIds, :DeleteWithInstance, :AttachMode
92
+
93
+ def initialize(instanceid=nil, diskids=nil, deletewithinstance=nil, attachmode=nil)
94
+ @InstanceId = instanceid
95
+ @DiskIds = diskids
96
+ @DeleteWithInstance = deletewithinstance
97
+ @AttachMode = attachmode
98
+ end
99
+
100
+ def deserialize(params)
101
+ @InstanceId = params['InstanceId']
102
+ @DiskIds = params['DiskIds']
103
+ @DeleteWithInstance = params['DeleteWithInstance']
104
+ @AttachMode = params['AttachMode']
105
+ end
106
+ end
107
+
108
+ # AttachDisks返回参数结构体
109
+ class AttachDisksResponse < TencentCloud::Common::AbstractModel
110
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
111
+ # @type RequestId: String
112
+
113
+ attr_accessor :RequestId
114
+
115
+ def initialize(requestid=nil)
116
+ @RequestId = requestid
117
+ end
118
+
119
+ def deserialize(params)
120
+ @RequestId = params['RequestId']
121
+ end
122
+ end
123
+
124
+ # 描述了定期快照策略的详细信息
125
+ class AutoSnapshotPolicy < TencentCloud::Common::AbstractModel
126
+ # @param AutoSnapshotPolicyId: 定期快照策略ID。
127
+ # @type AutoSnapshotPolicyId: String
128
+ # @param AutoSnapshotPolicyName: 定期快照策略名称。
129
+ # @type AutoSnapshotPolicyName: String
130
+ # @param AutoSnapshotPolicyState: 定期快照策略的状态。取值范围:<br><li>NORMAL:正常<br><li>ISOLATED:已隔离。
131
+ # @type AutoSnapshotPolicyState: String
132
+ # @param IsActivated: 定期快照策略是否激活。
133
+ # @type IsActivated: Boolean
134
+ # @param IsPermanent: 使用该定期快照策略创建出来的快照是否永久保留。
135
+ # @type IsPermanent: Boolean
136
+ # @param RetentionDays: 使用该定期快照策略创建出来的快照保留天数。
137
+ # @type RetentionDays: Integer
138
+ # @param CreateTime: 定期快照策略的创建时间。
139
+ # @type CreateTime: String
140
+ # @param NextTriggerTime: 定期快照下次触发的时间。
141
+ # @type NextTriggerTime: String
142
+ # @param Policy: 定期快照的执行策略。
143
+ # @type Policy: Array
144
+ # @param DiskIdSet: 已绑定当前定期快照策略的云盘ID列表。
145
+ # @type DiskIdSet: Array
146
+
147
+ attr_accessor :AutoSnapshotPolicyId, :AutoSnapshotPolicyName, :AutoSnapshotPolicyState, :IsActivated, :IsPermanent, :RetentionDays, :CreateTime, :NextTriggerTime, :Policy, :DiskIdSet
148
+
149
+ def initialize(autosnapshotpolicyid=nil, autosnapshotpolicyname=nil, autosnapshotpolicystate=nil, isactivated=nil, ispermanent=nil, retentiondays=nil, createtime=nil, nexttriggertime=nil, policy=nil, diskidset=nil)
150
+ @AutoSnapshotPolicyId = autosnapshotpolicyid
151
+ @AutoSnapshotPolicyName = autosnapshotpolicyname
152
+ @AutoSnapshotPolicyState = autosnapshotpolicystate
153
+ @IsActivated = isactivated
154
+ @IsPermanent = ispermanent
155
+ @RetentionDays = retentiondays
156
+ @CreateTime = createtime
157
+ @NextTriggerTime = nexttriggertime
158
+ @Policy = policy
159
+ @DiskIdSet = diskidset
160
+ end
161
+
162
+ def deserialize(params)
163
+ @AutoSnapshotPolicyId = params['AutoSnapshotPolicyId']
164
+ @AutoSnapshotPolicyName = params['AutoSnapshotPolicyName']
165
+ @AutoSnapshotPolicyState = params['AutoSnapshotPolicyState']
166
+ @IsActivated = params['IsActivated']
167
+ @IsPermanent = params['IsPermanent']
168
+ @RetentionDays = params['RetentionDays']
169
+ @CreateTime = params['CreateTime']
170
+ @NextTriggerTime = params['NextTriggerTime']
171
+ unless params['Policy'].nil?
172
+ @Policy = []
173
+ params['Policy'].each do |i|
174
+ policy_tmp = Policy.new
175
+ policy_tmp.deserialize(i)
176
+ @Policy << policy_tmp
177
+ end
178
+ end
179
+ @DiskIdSet = params['DiskIdSet']
180
+ end
181
+ end
182
+
183
+ # BindAutoSnapshotPolicy请求参数结构体
184
+ class BindAutoSnapshotPolicyRequest < TencentCloud::Common::AbstractModel
185
+ # @param AutoSnapshotPolicyId: 要绑定的定期快照策略ID。
186
+ # @type AutoSnapshotPolicyId: String
187
+ # @param DiskIds: 要绑定的云硬盘ID列表,一次请求最多绑定80块云盘。
188
+ # @type DiskIds: Array
189
+
190
+ attr_accessor :AutoSnapshotPolicyId, :DiskIds
191
+
192
+ def initialize(autosnapshotpolicyid=nil, diskids=nil)
193
+ @AutoSnapshotPolicyId = autosnapshotpolicyid
194
+ @DiskIds = diskids
195
+ end
196
+
197
+ def deserialize(params)
198
+ @AutoSnapshotPolicyId = params['AutoSnapshotPolicyId']
199
+ @DiskIds = params['DiskIds']
200
+ end
201
+ end
202
+
203
+ # BindAutoSnapshotPolicy返回参数结构体
204
+ class BindAutoSnapshotPolicyResponse < TencentCloud::Common::AbstractModel
205
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
206
+ # @type RequestId: String
207
+
208
+ attr_accessor :RequestId
209
+
210
+ def initialize(requestid=nil)
211
+ @RequestId = requestid
212
+ end
213
+
214
+ def deserialize(params)
215
+ @RequestId = params['RequestId']
216
+ end
217
+ end
218
+
219
+ # 描述独享集群的详细信息。
220
+ class Cdc < TencentCloud::Common::AbstractModel
221
+ # @param CageId: 独享集群围笼ID。
222
+ # 注意:此字段可能返回 null,表示取不到有效值。
223
+ # @type CageId: String
224
+ # @param CdcState: 独享集群状态。取值范围:<br><li>NORMAL:正常<br><li>CLOSED:关闭售卖<br><li>FAULT:状态异常<br><li>ISOLATED:已隔离。
225
+ # @type CdcState: String
226
+ # @param Zone: 独享集群所属的[可用区](/document/api/213/9452#zone)ID。
227
+ # 注意:此字段可能返回 null,表示取不到有效值。
228
+ # @type Zone: String
229
+ # @param CdcName: 独享集群实例名称。
230
+ # @type CdcName: String
231
+ # @param CdcResource: 独享集群的资源大小。
232
+ # 注意:此字段可能返回 null,表示取不到有效值。
233
+ # @type CdcResource: :class:`Tencentcloud::Cbs.v20170312.models.CdcSize`
234
+ # @param CdcId: 独享集群实例id。
235
+ # @type CdcId: String
236
+ # @param DiskType: 独享集群类型。取值范围:<br><li>CLOUD_BASIC:表示普通云硬盘集群<br><li>CLOUD_PREMIUM:表示高性能云硬盘集群<br><li>CLOUD_SSD:SSD表示SSD云硬盘集群。
237
+ # @type DiskType: String
238
+ # @param ExpiredTime: 独享集群过期时间。
239
+ # @type ExpiredTime: String
240
+
241
+ attr_accessor :CageId, :CdcState, :Zone, :CdcName, :CdcResource, :CdcId, :DiskType, :ExpiredTime
242
+
243
+ def initialize(cageid=nil, cdcstate=nil, zone=nil, cdcname=nil, cdcresource=nil, cdcid=nil, disktype=nil, expiredtime=nil)
244
+ @CageId = cageid
245
+ @CdcState = cdcstate
246
+ @Zone = zone
247
+ @CdcName = cdcname
248
+ @CdcResource = cdcresource
249
+ @CdcId = cdcid
250
+ @DiskType = disktype
251
+ @ExpiredTime = expiredtime
252
+ end
253
+
254
+ def deserialize(params)
255
+ @CageId = params['CageId']
256
+ @CdcState = params['CdcState']
257
+ @Zone = params['Zone']
258
+ @CdcName = params['CdcName']
259
+ unless params['CdcResource'].nil?
260
+ @CdcResource = CdcSize.new
261
+ @CdcResource.deserialize(params['CdcResource'])
262
+ end
263
+ @CdcId = params['CdcId']
264
+ @DiskType = params['DiskType']
265
+ @ExpiredTime = params['ExpiredTime']
266
+ end
267
+ end
268
+
269
+ # 显示独享集群的大小
270
+ class CdcSize < TencentCloud::Common::AbstractModel
271
+ # @param DiskAavilable: 独享集群的可用容量大小,单位GiB
272
+ # @type DiskAavilable: Integer
273
+ # @param DiskTotal: 独享集群的总容量大小,单位GiB
274
+ # @type DiskTotal: Integer
275
+
276
+ attr_accessor :DiskAavilable, :DiskTotal
277
+
278
+ def initialize(diskaavilable=nil, disktotal=nil)
279
+ @DiskAavilable = diskaavilable
280
+ @DiskTotal = disktotal
281
+ end
282
+
283
+ def deserialize(params)
284
+ @DiskAavilable = params['DiskAavilable']
285
+ @DiskTotal = params['DiskTotal']
286
+ end
287
+ end
288
+
289
+ # CreateAutoSnapshotPolicy请求参数结构体
290
+ class CreateAutoSnapshotPolicyRequest < TencentCloud::Common::AbstractModel
291
+ # @param Policy: 定期快照的执行策略。
292
+ # @type Policy: Array
293
+ # @param AutoSnapshotPolicyName: 要创建的定期快照策略名。不传则默认为“未命名”。最大长度不能超60个字节。
294
+ # @type AutoSnapshotPolicyName: String
295
+ # @param IsActivated: 是否激活定期快照策略,FALSE表示未激活,TRUE表示激活,默认为TRUE。
296
+ # @type IsActivated: Boolean
297
+ # @param IsPermanent: 通过该定期快照策略创建的快照是否永久保留。FALSE表示非永久保留,TRUE表示永久保留,默认为FALSE。
298
+ # @type IsPermanent: Boolean
299
+ # @param RetentionDays: 通过该定期快照策略创建的快照保留天数,默认保留7天。如果指定本参数,则IsPermanent入参不可指定为TRUE,否则会产生冲突。
300
+ # @type RetentionDays: Integer
301
+ # @param DryRun: 是否创建定期快照的执行策略。TRUE表示只需获取首次开始备份的时间,不实际创建定期快照策略,FALSE表示创建,默认为FALSE。
302
+ # @type DryRun: Boolean
303
+
304
+ attr_accessor :Policy, :AutoSnapshotPolicyName, :IsActivated, :IsPermanent, :RetentionDays, :DryRun
305
+
306
+ def initialize(policy=nil, autosnapshotpolicyname=nil, isactivated=nil, ispermanent=nil, retentiondays=nil, dryrun=nil)
307
+ @Policy = policy
308
+ @AutoSnapshotPolicyName = autosnapshotpolicyname
309
+ @IsActivated = isactivated
310
+ @IsPermanent = ispermanent
311
+ @RetentionDays = retentiondays
312
+ @DryRun = dryrun
313
+ end
314
+
315
+ def deserialize(params)
316
+ unless params['Policy'].nil?
317
+ @Policy = []
318
+ params['Policy'].each do |i|
319
+ policy_tmp = Policy.new
320
+ policy_tmp.deserialize(i)
321
+ @Policy << policy_tmp
322
+ end
323
+ end
324
+ @AutoSnapshotPolicyName = params['AutoSnapshotPolicyName']
325
+ @IsActivated = params['IsActivated']
326
+ @IsPermanent = params['IsPermanent']
327
+ @RetentionDays = params['RetentionDays']
328
+ @DryRun = params['DryRun']
329
+ end
330
+ end
331
+
332
+ # CreateAutoSnapshotPolicy返回参数结构体
333
+ class CreateAutoSnapshotPolicyResponse < TencentCloud::Common::AbstractModel
334
+ # @param AutoSnapshotPolicyId: 新创建的定期快照策略ID。
335
+ # @type AutoSnapshotPolicyId: String
336
+ # @param NextTriggerTime: 首次开始备份的时间。
337
+ # @type NextTriggerTime: String
338
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
339
+ # @type RequestId: String
340
+
341
+ attr_accessor :AutoSnapshotPolicyId, :NextTriggerTime, :RequestId
342
+
343
+ def initialize(autosnapshotpolicyid=nil, nexttriggertime=nil, requestid=nil)
344
+ @AutoSnapshotPolicyId = autosnapshotpolicyid
345
+ @NextTriggerTime = nexttriggertime
346
+ @RequestId = requestid
347
+ end
348
+
349
+ def deserialize(params)
350
+ @AutoSnapshotPolicyId = params['AutoSnapshotPolicyId']
351
+ @NextTriggerTime = params['NextTriggerTime']
352
+ @RequestId = params['RequestId']
353
+ end
354
+ end
355
+
356
+ # CreateDisks请求参数结构体
357
+ class CreateDisksRequest < TencentCloud::Common::AbstractModel
358
+ # @param Placement: 实例所在的位置。通过该参数可以指定实例所属可用区,所属项目。若不指定项目,将在默认项目下进行创建。
359
+ # @type Placement: :class:`Tencentcloud::Cbs.v20170312.models.Placement`
360
+ # @param DiskChargeType: 云硬盘计费类型。<br><li>PREPAID:预付费,即包年包月<br><li>POSTPAID_BY_HOUR:按小时后付费<br><li>CDCPAID:独享集群付费<br>各类型价格请参考云硬盘[价格总览](/document/product/362/2413)。
361
+ # @type DiskChargeType: String
362
+ # @param DiskType: 硬盘介质类型。取值范围:<br><li>CLOUD_BASIC:表示普通云硬盘<br><li>CLOUD_PREMIUM:表示高性能云硬盘<br><li>CLOUD_SSD:表示SSD云硬盘<br><li>CLOUD_HSSD:表示增强型SSD云硬盘<br><li>CLOUD_TSSD:表示极速型SSD云硬盘。
363
+ # @type DiskType: String
364
+ # @param DiskName: 云盘显示名称。不传则默认为“未命名”。最大长度不能超60个字节。
365
+ # @type DiskName: String
366
+ # @param Tags: 云盘绑定的标签。
367
+ # @type Tags: Array
368
+ # @param SnapshotId: 快照ID,如果传入则根据此快照创建云硬盘,快照类型必须为数据盘快照,可通过[DescribeSnapshots](/document/product/362/15647)接口查询快照,见输出参数DiskUsage解释。
369
+ # @type SnapshotId: String
370
+ # @param DiskCount: 创建云硬盘数量,不传则默认为1。单次请求最多可创建的云盘数有限制,具体参见[云硬盘使用限制](https://cloud.tencent.com/doc/product/362/5145)。
371
+ # @type DiskCount: Integer
372
+ # @param ThroughputPerformance: 可选参数。使用此参数可给云硬盘购买额外的性能。<br>当前仅支持极速型云盘(CLOUD_TSSD)和增强型SSD云硬盘(CLOUD_HSSD)
373
+ # @type ThroughputPerformance: Integer
374
+ # @param DiskSize: 云硬盘大小,单位为GB。<br><li>如果传入`SnapshotId`则可不传`DiskSize`,此时新建云盘的大小为快照大小<br><li>如果传入`SnapshotId`同时传入`DiskSize`,则云盘大小必须大于或等于快照大小<br><li>云盘大小取值范围参见云硬盘[产品分类](/document/product/362/2353)的说明。
375
+ # @type DiskSize: Integer
376
+ # @param Shareable: 可选参数,默认为False。传入True时,云盘将创建为共享型云盘。
377
+ # @type Shareable: Boolean
378
+ # @param ClientToken: 用于保证请求幂等性的字符串。该字符串由客户生成,需保证不同请求之间唯一,最大值不超过64个ASCII字符。若不指定该参数,则无法保证请求的幂等性。
379
+ # @type ClientToken: String
380
+ # @param Encrypt: 传入该参数用于创建加密云盘,取值固定为ENCRYPT。
381
+ # @type Encrypt: String
382
+ # @param DiskChargePrepaid: 预付费模式,即包年包月相关参数设置。通过该参数指定包年包月云盘的购买时长、是否设置自动续费等属性。<br>创建预付费云盘该参数必传,创建按小时后付费云盘无需传该参数。
383
+ # @type DiskChargePrepaid: :class:`Tencentcloud::Cbs.v20170312.models.DiskChargePrepaid`
384
+ # @param DeleteSnapshot: 销毁云盘时删除关联的非永久保留快照。0 表示非永久快照不随云盘销毁而销毁,1表示非永久快照随云盘销毁而销毁,默认取0。快照是否永久保留可以通过DescribeSnapshots接口返回的快照详情的IsPermanent字段来判断,true表示永久快照,false表示非永久快照。
385
+ # @type DeleteSnapshot: Integer
386
+
387
+ attr_accessor :Placement, :DiskChargeType, :DiskType, :DiskName, :Tags, :SnapshotId, :DiskCount, :ThroughputPerformance, :DiskSize, :Shareable, :ClientToken, :Encrypt, :DiskChargePrepaid, :DeleteSnapshot
388
+
389
+ def initialize(placement=nil, diskchargetype=nil, disktype=nil, diskname=nil, tags=nil, snapshotid=nil, diskcount=nil, throughputperformance=nil, disksize=nil, shareable=nil, clienttoken=nil, encrypt=nil, diskchargeprepaid=nil, deletesnapshot=nil)
390
+ @Placement = placement
391
+ @DiskChargeType = diskchargetype
392
+ @DiskType = disktype
393
+ @DiskName = diskname
394
+ @Tags = tags
395
+ @SnapshotId = snapshotid
396
+ @DiskCount = diskcount
397
+ @ThroughputPerformance = throughputperformance
398
+ @DiskSize = disksize
399
+ @Shareable = shareable
400
+ @ClientToken = clienttoken
401
+ @Encrypt = encrypt
402
+ @DiskChargePrepaid = diskchargeprepaid
403
+ @DeleteSnapshot = deletesnapshot
404
+ end
405
+
406
+ def deserialize(params)
407
+ unless params['Placement'].nil?
408
+ @Placement = Placement.new
409
+ @Placement.deserialize(params['Placement'])
410
+ end
411
+ @DiskChargeType = params['DiskChargeType']
412
+ @DiskType = params['DiskType']
413
+ @DiskName = params['DiskName']
414
+ unless params['Tags'].nil?
415
+ @Tags = []
416
+ params['Tags'].each do |i|
417
+ tag_tmp = Tag.new
418
+ tag_tmp.deserialize(i)
419
+ @Tags << tag_tmp
420
+ end
421
+ end
422
+ @SnapshotId = params['SnapshotId']
423
+ @DiskCount = params['DiskCount']
424
+ @ThroughputPerformance = params['ThroughputPerformance']
425
+ @DiskSize = params['DiskSize']
426
+ @Shareable = params['Shareable']
427
+ @ClientToken = params['ClientToken']
428
+ @Encrypt = params['Encrypt']
429
+ unless params['DiskChargePrepaid'].nil?
430
+ @DiskChargePrepaid = DiskChargePrepaid.new
431
+ @DiskChargePrepaid.deserialize(params['DiskChargePrepaid'])
432
+ end
433
+ @DeleteSnapshot = params['DeleteSnapshot']
434
+ end
435
+ end
436
+
437
+ # CreateDisks返回参数结构体
438
+ class CreateDisksResponse < TencentCloud::Common::AbstractModel
439
+ # @param DiskIdSet: 创建的云硬盘ID列表。
440
+ # @type DiskIdSet: Array
441
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
442
+ # @type RequestId: String
443
+
444
+ attr_accessor :DiskIdSet, :RequestId
445
+
446
+ def initialize(diskidset=nil, requestid=nil)
447
+ @DiskIdSet = diskidset
448
+ @RequestId = requestid
449
+ end
450
+
451
+ def deserialize(params)
452
+ @DiskIdSet = params['DiskIdSet']
453
+ @RequestId = params['RequestId']
454
+ end
455
+ end
456
+
457
+ # CreateSnapshot请求参数结构体
458
+ class CreateSnapshotRequest < TencentCloud::Common::AbstractModel
459
+ # @param DiskId: 需要创建快照的云硬盘ID,可通过[DescribeDisks](/document/product/362/16315)接口查询。
460
+ # @type DiskId: String
461
+ # @param SnapshotName: 快照名称,不传则新快照名称默认为“未命名”。
462
+ # @type SnapshotName: String
463
+ # @param Deadline: 快照的到期时间,到期后该快照将会自动删除
464
+ # @type Deadline: String
465
+
466
+ attr_accessor :DiskId, :SnapshotName, :Deadline
467
+
468
+ def initialize(diskid=nil, snapshotname=nil, deadline=nil)
469
+ @DiskId = diskid
470
+ @SnapshotName = snapshotname
471
+ @Deadline = deadline
472
+ end
473
+
474
+ def deserialize(params)
475
+ @DiskId = params['DiskId']
476
+ @SnapshotName = params['SnapshotName']
477
+ @Deadline = params['Deadline']
478
+ end
479
+ end
480
+
481
+ # CreateSnapshot返回参数结构体
482
+ class CreateSnapshotResponse < TencentCloud::Common::AbstractModel
483
+ # @param SnapshotId: 新创建的快照ID。
484
+ # @type SnapshotId: String
485
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
486
+ # @type RequestId: String
487
+
488
+ attr_accessor :SnapshotId, :RequestId
489
+
490
+ def initialize(snapshotid=nil, requestid=nil)
491
+ @SnapshotId = snapshotid
492
+ @RequestId = requestid
493
+ end
494
+
495
+ def deserialize(params)
496
+ @SnapshotId = params['SnapshotId']
497
+ @RequestId = params['RequestId']
498
+ end
499
+ end
500
+
501
+ # DeleteAutoSnapshotPolicies请求参数结构体
502
+ class DeleteAutoSnapshotPoliciesRequest < TencentCloud::Common::AbstractModel
503
+ # @param AutoSnapshotPolicyIds: 要删除的定期快照策略ID列表。
504
+ # @type AutoSnapshotPolicyIds: Array
505
+
506
+ attr_accessor :AutoSnapshotPolicyIds
507
+
508
+ def initialize(autosnapshotpolicyids=nil)
509
+ @AutoSnapshotPolicyIds = autosnapshotpolicyids
510
+ end
511
+
512
+ def deserialize(params)
513
+ @AutoSnapshotPolicyIds = params['AutoSnapshotPolicyIds']
514
+ end
515
+ end
516
+
517
+ # DeleteAutoSnapshotPolicies返回参数结构体
518
+ class DeleteAutoSnapshotPoliciesResponse < TencentCloud::Common::AbstractModel
519
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
520
+ # @type RequestId: String
521
+
522
+ attr_accessor :RequestId
523
+
524
+ def initialize(requestid=nil)
525
+ @RequestId = requestid
526
+ end
527
+
528
+ def deserialize(params)
529
+ @RequestId = params['RequestId']
530
+ end
531
+ end
532
+
533
+ # DeleteSnapshots请求参数结构体
534
+ class DeleteSnapshotsRequest < TencentCloud::Common::AbstractModel
535
+ # @param SnapshotIds: 要删除的快照ID列表,可通过[DescribeSnapshots](/document/product/362/15647)查询。
536
+ # @type SnapshotIds: Array
537
+ # @param DeleteBindImages: 是否强制删除快照关联的镜像
538
+ # @type DeleteBindImages: Boolean
539
+
540
+ attr_accessor :SnapshotIds, :DeleteBindImages
541
+
542
+ def initialize(snapshotids=nil, deletebindimages=nil)
543
+ @SnapshotIds = snapshotids
544
+ @DeleteBindImages = deletebindimages
545
+ end
546
+
547
+ def deserialize(params)
548
+ @SnapshotIds = params['SnapshotIds']
549
+ @DeleteBindImages = params['DeleteBindImages']
550
+ end
551
+ end
552
+
553
+ # DeleteSnapshots返回参数结构体
554
+ class DeleteSnapshotsResponse < TencentCloud::Common::AbstractModel
555
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
556
+ # @type RequestId: String
557
+
558
+ attr_accessor :RequestId
559
+
560
+ def initialize(requestid=nil)
561
+ @RequestId = requestid
562
+ end
563
+
564
+ def deserialize(params)
565
+ @RequestId = params['RequestId']
566
+ end
567
+ end
568
+
569
+ # DescribeAutoSnapshotPolicies请求参数结构体
570
+ class DescribeAutoSnapshotPoliciesRequest < TencentCloud::Common::AbstractModel
571
+ # @param AutoSnapshotPolicyIds: 要查询的定期快照策略ID列表。参数不支持同时指定`AutoSnapshotPolicyIds`和`Filters`。
572
+ # @type AutoSnapshotPolicyIds: Array
573
+ # @param Filters: 过滤条件。参数不支持同时指定`AutoSnapshotPolicyIds`和`Filters`。<br><li>auto-snapshot-policy-id - Array of String - 是否必填:否 -(过滤条件)按定期快照策略ID进行过滤。定期快照策略ID形如:`asp-11112222`。<br><li>auto-snapshot-policy-state - Array of String - 是否必填:否 -(过滤条件)按定期快照策略的状态进行过滤。定期快照策略ID形如:`asp-11112222`。(NORMAL:正常 | ISOLATED:已隔离。)<br><li>auto-snapshot-policy-name - Array of String - 是否必填:否 -(过滤条件)按定期快照策略名称进行过滤。
574
+ # @type Filters: Array
575
+ # @param Limit: 返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](/document/product/362/15633)中的相关小节。
576
+ # @type Limit: Integer
577
+ # @param Offset: 偏移量,默认为0。关于`Offset`的更进一步介绍请参考API[简介](/document/product/362/15633)中的相关小节。
578
+ # @type Offset: Integer
579
+ # @param Order: 输出定期快照列表的排列顺序。取值范围:<br><li>ASC:升序排列<br><li>DESC:降序排列。
580
+ # @type Order: String
581
+ # @param OrderField: 定期快照列表排序的依据字段。取值范围:<br><li>CREATETIME:依据定期快照的创建时间排序<br>默认按创建时间排序。
582
+ # @type OrderField: String
583
+
584
+ attr_accessor :AutoSnapshotPolicyIds, :Filters, :Limit, :Offset, :Order, :OrderField
585
+
586
+ def initialize(autosnapshotpolicyids=nil, filters=nil, limit=nil, offset=nil, order=nil, orderfield=nil)
587
+ @AutoSnapshotPolicyIds = autosnapshotpolicyids
588
+ @Filters = filters
589
+ @Limit = limit
590
+ @Offset = offset
591
+ @Order = order
592
+ @OrderField = orderfield
593
+ end
594
+
595
+ def deserialize(params)
596
+ @AutoSnapshotPolicyIds = params['AutoSnapshotPolicyIds']
597
+ unless params['Filters'].nil?
598
+ @Filters = []
599
+ params['Filters'].each do |i|
600
+ filter_tmp = Filter.new
601
+ filter_tmp.deserialize(i)
602
+ @Filters << filter_tmp
603
+ end
604
+ end
605
+ @Limit = params['Limit']
606
+ @Offset = params['Offset']
607
+ @Order = params['Order']
608
+ @OrderField = params['OrderField']
609
+ end
610
+ end
611
+
612
+ # DescribeAutoSnapshotPolicies返回参数结构体
613
+ class DescribeAutoSnapshotPoliciesResponse < TencentCloud::Common::AbstractModel
614
+ # @param TotalCount: 有效的定期快照策略数量。
615
+ # @type TotalCount: Integer
616
+ # @param AutoSnapshotPolicySet: 定期快照策略列表。
617
+ # @type AutoSnapshotPolicySet: Array
618
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
619
+ # @type RequestId: String
620
+
621
+ attr_accessor :TotalCount, :AutoSnapshotPolicySet, :RequestId
622
+
623
+ def initialize(totalcount=nil, autosnapshotpolicyset=nil, requestid=nil)
624
+ @TotalCount = totalcount
625
+ @AutoSnapshotPolicySet = autosnapshotpolicyset
626
+ @RequestId = requestid
627
+ end
628
+
629
+ def deserialize(params)
630
+ @TotalCount = params['TotalCount']
631
+ unless params['AutoSnapshotPolicySet'].nil?
632
+ @AutoSnapshotPolicySet = []
633
+ params['AutoSnapshotPolicySet'].each do |i|
634
+ autosnapshotpolicy_tmp = AutoSnapshotPolicy.new
635
+ autosnapshotpolicy_tmp.deserialize(i)
636
+ @AutoSnapshotPolicySet << autosnapshotpolicy_tmp
637
+ end
638
+ end
639
+ @RequestId = params['RequestId']
640
+ end
641
+ end
642
+
643
+ # DescribeDiskAssociatedAutoSnapshotPolicy请求参数结构体
644
+ class DescribeDiskAssociatedAutoSnapshotPolicyRequest < TencentCloud::Common::AbstractModel
645
+ # @param DiskId: 要查询的云硬盘ID。
646
+ # @type DiskId: String
647
+
648
+ attr_accessor :DiskId
649
+
650
+ def initialize(diskid=nil)
651
+ @DiskId = diskid
652
+ end
653
+
654
+ def deserialize(params)
655
+ @DiskId = params['DiskId']
656
+ end
657
+ end
658
+
659
+ # DescribeDiskAssociatedAutoSnapshotPolicy返回参数结构体
660
+ class DescribeDiskAssociatedAutoSnapshotPolicyResponse < TencentCloud::Common::AbstractModel
661
+ # @param TotalCount: 云盘绑定的定期快照数量。
662
+ # @type TotalCount: Integer
663
+ # @param AutoSnapshotPolicySet: 云盘绑定的定期快照列表。
664
+ # @type AutoSnapshotPolicySet: Array
665
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
666
+ # @type RequestId: String
667
+
668
+ attr_accessor :TotalCount, :AutoSnapshotPolicySet, :RequestId
669
+
670
+ def initialize(totalcount=nil, autosnapshotpolicyset=nil, requestid=nil)
671
+ @TotalCount = totalcount
672
+ @AutoSnapshotPolicySet = autosnapshotpolicyset
673
+ @RequestId = requestid
674
+ end
675
+
676
+ def deserialize(params)
677
+ @TotalCount = params['TotalCount']
678
+ unless params['AutoSnapshotPolicySet'].nil?
679
+ @AutoSnapshotPolicySet = []
680
+ params['AutoSnapshotPolicySet'].each do |i|
681
+ autosnapshotpolicy_tmp = AutoSnapshotPolicy.new
682
+ autosnapshotpolicy_tmp.deserialize(i)
683
+ @AutoSnapshotPolicySet << autosnapshotpolicy_tmp
684
+ end
685
+ end
686
+ @RequestId = params['RequestId']
687
+ end
688
+ end
689
+
690
+ # DescribeDiskConfigQuota请求参数结构体
691
+ class DescribeDiskConfigQuotaRequest < TencentCloud::Common::AbstractModel
692
+ # @param InquiryType: 查询类别,取值范围。<br><li>INQUIRY_CBS_CONFIG:查询云盘配置列表<br><li>INQUIRY_CVM_CONFIG:查询云盘与实例搭配的配置列表。
693
+ # @type InquiryType: String
694
+ # @param Zones: 查询一个或多个[可用区](/document/product/213/15753#ZoneInfo)下的配置。
695
+ # @type Zones: Array
696
+ # @param DiskChargeType: 付费模式。取值范围:<br><li>PREPAID:预付费<br><li>POSTPAID_BY_HOUR:后付费。
697
+ # @type DiskChargeType: String
698
+ # @param DiskTypes: 硬盘介质类型。取值范围:<br><li>CLOUD_BASIC:表示普通云硬盘<br><li>CLOUD_PREMIUM:表示高性能云硬盘<br><li>CLOUD_SSD:表示SSD云硬盘<br><li>CLOUD_HSSD:表示增强型SSD云硬盘。
699
+ # @type DiskTypes: Array
700
+ # @param DiskUsage: 系统盘或数据盘。取值范围:<br><li>SYSTEM_DISK:表示系统盘<br><li>DATA_DISK:表示数据盘。
701
+ # @type DiskUsage: String
702
+ # @param InstanceFamilies: 按照实例机型系列过滤。实例机型系列形如:S1、I1、M1等。详见[实例类型](https://cloud.tencent.com/document/product/213/11518)
703
+ # @type InstanceFamilies: Array
704
+ # @param CPU: 实例CPU核数。
705
+ # @type CPU: Integer
706
+ # @param Memory: 实例内存大小。
707
+ # @type Memory: Integer
708
+
709
+ attr_accessor :InquiryType, :Zones, :DiskChargeType, :DiskTypes, :DiskUsage, :InstanceFamilies, :CPU, :Memory
710
+
711
+ def initialize(inquirytype=nil, zones=nil, diskchargetype=nil, disktypes=nil, diskusage=nil, instancefamilies=nil, cpu=nil, memory=nil)
712
+ @InquiryType = inquirytype
713
+ @Zones = zones
714
+ @DiskChargeType = diskchargetype
715
+ @DiskTypes = disktypes
716
+ @DiskUsage = diskusage
717
+ @InstanceFamilies = instancefamilies
718
+ @CPU = cpu
719
+ @Memory = memory
720
+ end
721
+
722
+ def deserialize(params)
723
+ @InquiryType = params['InquiryType']
724
+ @Zones = params['Zones']
725
+ @DiskChargeType = params['DiskChargeType']
726
+ @DiskTypes = params['DiskTypes']
727
+ @DiskUsage = params['DiskUsage']
728
+ @InstanceFamilies = params['InstanceFamilies']
729
+ @CPU = params['CPU']
730
+ @Memory = params['Memory']
731
+ end
732
+ end
733
+
734
+ # DescribeDiskConfigQuota返回参数结构体
735
+ class DescribeDiskConfigQuotaResponse < TencentCloud::Common::AbstractModel
736
+ # @param DiskConfigSet: 云盘配置列表。
737
+ # @type DiskConfigSet: Array
738
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
739
+ # @type RequestId: String
740
+
741
+ attr_accessor :DiskConfigSet, :RequestId
742
+
743
+ def initialize(diskconfigset=nil, requestid=nil)
744
+ @DiskConfigSet = diskconfigset
745
+ @RequestId = requestid
746
+ end
747
+
748
+ def deserialize(params)
749
+ unless params['DiskConfigSet'].nil?
750
+ @DiskConfigSet = []
751
+ params['DiskConfigSet'].each do |i|
752
+ diskconfig_tmp = DiskConfig.new
753
+ diskconfig_tmp.deserialize(i)
754
+ @DiskConfigSet << diskconfig_tmp
755
+ end
756
+ end
757
+ @RequestId = params['RequestId']
758
+ end
759
+ end
760
+
761
+ # DescribeDiskOperationLogs请求参数结构体
762
+ class DescribeDiskOperationLogsRequest < TencentCloud::Common::AbstractModel
763
+ # @param Filters: 过滤条件。支持以下条件:
764
+ # <li>disk-id - Array of String - 是否必填:是 - 按云盘ID过滤,每个请求最多可指定10个云盘ID。
765
+ # @type Filters: Array
766
+ # @param EndTime: 要查询的操作日志的截止时间,例如:“2019-11-22 23:59:59"
767
+ # @type EndTime: String
768
+ # @param BeginTime: 要查询的操作日志的起始时间,例如:“2019-11-22 00:00:00"
769
+ # @type BeginTime: String
770
+
771
+ attr_accessor :Filters, :EndTime, :BeginTime
772
+
773
+ def initialize(filters=nil, endtime=nil, begintime=nil)
774
+ @Filters = filters
775
+ @EndTime = endtime
776
+ @BeginTime = begintime
777
+ end
778
+
779
+ def deserialize(params)
780
+ unless params['Filters'].nil?
781
+ @Filters = []
782
+ params['Filters'].each do |i|
783
+ filter_tmp = Filter.new
784
+ filter_tmp.deserialize(i)
785
+ @Filters << filter_tmp
786
+ end
787
+ end
788
+ @EndTime = params['EndTime']
789
+ @BeginTime = params['BeginTime']
790
+ end
791
+ end
792
+
793
+ # DescribeDiskOperationLogs返回参数结构体
794
+ class DescribeDiskOperationLogsResponse < TencentCloud::Common::AbstractModel
795
+ # @param DiskOperationLogSet: 云盘的操作日志列表。
796
+ # @type DiskOperationLogSet: Array
797
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
798
+ # @type RequestId: String
799
+
800
+ attr_accessor :DiskOperationLogSet, :RequestId
801
+
802
+ def initialize(diskoperationlogset=nil, requestid=nil)
803
+ @DiskOperationLogSet = diskoperationlogset
804
+ @RequestId = requestid
805
+ end
806
+
807
+ def deserialize(params)
808
+ unless params['DiskOperationLogSet'].nil?
809
+ @DiskOperationLogSet = []
810
+ params['DiskOperationLogSet'].each do |i|
811
+ diskoperationlog_tmp = DiskOperationLog.new
812
+ diskoperationlog_tmp.deserialize(i)
813
+ @DiskOperationLogSet << diskoperationlog_tmp
814
+ end
815
+ end
816
+ @RequestId = params['RequestId']
817
+ end
818
+ end
819
+
820
+ # DescribeDiskStoragePool请求参数结构体
821
+ class DescribeDiskStoragePoolRequest < TencentCloud::Common::AbstractModel
822
+ # @param Limit: 返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](/document/product/362/15633)中的相关小节。
823
+ # @type Limit: Integer
824
+ # @param CdcIds: 指定需要查询的独享集群ID列表,该入参不能与Filters一起使用。
825
+ # @type CdcIds: Array
826
+ # @param Filters: 过滤条件。参数不支持同时指定`CdcIds`和`Filters`。<br><li>cdc-id - Array of String - 是否必填:否 -(过滤条件)按独享集群ID过滤。<br><li>zone - Array of String - 是否必填:否 -(过滤条件)按独享集群所在[可用区](/document/api/213/9452#zone)过滤。<br><li>cage-id - Array of String - 是否必填:否 -(过滤条件)按独享集群所在围笼的ID过滤。<br><li>disk-type - Array of String - 是否必填:否 -(过滤条件)按照云盘介质类型过滤。(CLOUD_BASIC:表示普通云硬盘 | CLOUD_PREMIUM:表示高性能云硬盘。| CLOUD_SSD:SSD表示SSD云硬盘。)
827
+ # @type Filters: Array
828
+ # @param Offset: 偏移量,默认为0。关于`Offset`的更进一步介绍请参考API[简介](/document/product/362/15633)中的相关小节。
829
+ # @type Offset: Integer
830
+
831
+ attr_accessor :Limit, :CdcIds, :Filters, :Offset
832
+
833
+ def initialize(limit=nil, cdcids=nil, filters=nil, offset=nil)
834
+ @Limit = limit
835
+ @CdcIds = cdcids
836
+ @Filters = filters
837
+ @Offset = offset
838
+ end
839
+
840
+ def deserialize(params)
841
+ @Limit = params['Limit']
842
+ @CdcIds = params['CdcIds']
843
+ unless params['Filters'].nil?
844
+ @Filters = []
845
+ params['Filters'].each do |i|
846
+ filter_tmp = Filter.new
847
+ filter_tmp.deserialize(i)
848
+ @Filters << filter_tmp
849
+ end
850
+ end
851
+ @Offset = params['Offset']
852
+ end
853
+ end
854
+
855
+ # DescribeDiskStoragePool返回参数结构体
856
+ class DescribeDiskStoragePoolResponse < TencentCloud::Common::AbstractModel
857
+ # @param TotalCount: 符合条件的独享集群的数量
858
+ # @type TotalCount: Integer
859
+ # @param DiskStoragePoolSet: 独享集群的详细信息列表
860
+ # @type DiskStoragePoolSet: Array
861
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
862
+ # @type RequestId: String
863
+
864
+ attr_accessor :TotalCount, :DiskStoragePoolSet, :RequestId
865
+
866
+ def initialize(totalcount=nil, diskstoragepoolset=nil, requestid=nil)
867
+ @TotalCount = totalcount
868
+ @DiskStoragePoolSet = diskstoragepoolset
869
+ @RequestId = requestid
870
+ end
871
+
872
+ def deserialize(params)
873
+ @TotalCount = params['TotalCount']
874
+ unless params['DiskStoragePoolSet'].nil?
875
+ @DiskStoragePoolSet = []
876
+ params['DiskStoragePoolSet'].each do |i|
877
+ cdc_tmp = Cdc.new
878
+ cdc_tmp.deserialize(i)
879
+ @DiskStoragePoolSet << cdc_tmp
880
+ end
881
+ end
882
+ @RequestId = params['RequestId']
883
+ end
884
+ end
885
+
886
+ # DescribeDisks请求参数结构体
887
+ class DescribeDisksRequest < TencentCloud::Common::AbstractModel
888
+ # @param Filters: 过滤条件。参数不支持同时指定`DiskIds`和`Filters`。<br><li>disk-usage - Array of String - 是否必填:否 -(过滤条件)按云盘类型过滤。 (SYSTEM_DISK:表示系统盘 | DATA_DISK:表示数据盘)<br><li>disk-charge-type - Array of String - 是否必填:否 -(过滤条件)按照云硬盘计费模式过滤。 (PREPAID:表示预付费,即包年包月 | POSTPAID_BY_HOUR:表示后付费,即按量计费。)<br><li>portable - Array of String - 是否必填:否 -(过滤条件)按是否为弹性云盘过滤。 (TRUE:表示弹性云盘 | FALSE:表示非弹性云盘。)<br><li>project-id - Array of Integer - 是否必填:否 -(过滤条件)按云硬盘所属项目ID过滤。<br><li>disk-id - Array of String - 是否必填:否 -(过滤条件)按照云硬盘ID过滤。云盘ID形如:`disk-11112222`。<br><li>disk-name - Array of String - 是否必填:否 -(过滤条件)按照云盘名称过滤。<br><li>disk-type - Array of String - 是否必填:否 -(过滤条件)按照云盘介质类型过滤。(CLOUD_BASIC:表示普通云硬盘 | CLOUD_PREMIUM:表示高性能云硬盘。| CLOUD_SSD:表示SSD云硬盘 | CLOUD_HSSD:表示增强型SSD云硬盘。| CLOUD_TSSD:表示极速型云硬盘。)<br><li>disk-state - Array of String - 是否必填:否 -(过滤条件)按照云盘状态过滤。(UNATTACHED:未挂载 | ATTACHING:挂载中 | ATTACHED:已挂载 | DETACHING:解挂中 | EXPANDING:扩容中 | ROLLBACKING:回滚中 | TORECYCLE:待回收。)<br><li>instance-id - Array of String - 是否必填:否 -(过滤条件)按照云盘挂载的云主机实例ID过滤。可根据此参数查询挂载在指定云主机下的云硬盘。<br><li>zone - Array of String - 是否必填:否 -(过滤条件)按照[可用区](/document/product/213/15753#ZoneInfo)过滤。<br><li>instance-ip-address - Array of String - 是否必填:否 -(过滤条件)按云盘所挂载云主机的内网或外网IP过滤。<br><li>instance-name - Array of String - 是否必填:否 -(过滤条件)按云盘所挂载的实例名称过滤。<br><li>tag-key - Array of String - 是否必填:否 -(过滤条件)按照标签键进行过滤。<br><li>tag-value - Array of String - 是否必填:否 -(过滤条件)照标签值进行过滤。<br><li>tag:tag-key - Array of String - 是否必填:否 -(过滤条件)按照标签键值对进行过滤。 tag-key使用具体的标签键进行替换。
889
+ # @type Filters: Array
890
+ # @param Limit: 返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](/document/product/362/15633)中的相关小节。
891
+ # @type Limit: Integer
892
+ # @param OrderField: 云盘列表排序的依据字段。取值范围:<br><li>CREATE_TIME:依据云盘的创建时间排序<br><li>DEADLINE:依据云盘的到期时间排序<br>默认按云盘创建时间排序。
893
+ # @type OrderField: String
894
+ # @param Offset: 偏移量,默认为0。关于`Offset`的更进一步介绍请参考API[简介](/document/product/362/15633)中的相关小节。
895
+ # @type Offset: Integer
896
+ # @param ReturnBindAutoSnapshotPolicy: 云盘详情中是否需要返回云盘绑定的定期快照策略ID,TRUE表示需要返回,FALSE表示不返回。
897
+ # @type ReturnBindAutoSnapshotPolicy: Boolean
898
+ # @param DiskIds: 按照一个或者多个云硬盘ID查询。云硬盘ID形如:`disk-11112222`,此参数的具体格式可参考API[简介](/document/product/362/15633)的ids.N一节)。参数不支持同时指定`DiskIds`和`Filters`。
899
+ # @type DiskIds: Array
900
+ # @param Order: 输出云盘列表的排列顺序。取值范围:<br><li>ASC:升序排列<br><li>DESC:降序排列。
901
+ # @type Order: String
902
+
903
+ attr_accessor :Filters, :Limit, :OrderField, :Offset, :ReturnBindAutoSnapshotPolicy, :DiskIds, :Order
904
+
905
+ def initialize(filters=nil, limit=nil, orderfield=nil, offset=nil, returnbindautosnapshotpolicy=nil, diskids=nil, order=nil)
906
+ @Filters = filters
907
+ @Limit = limit
908
+ @OrderField = orderfield
909
+ @Offset = offset
910
+ @ReturnBindAutoSnapshotPolicy = returnbindautosnapshotpolicy
911
+ @DiskIds = diskids
912
+ @Order = order
913
+ end
914
+
915
+ def deserialize(params)
916
+ unless params['Filters'].nil?
917
+ @Filters = []
918
+ params['Filters'].each do |i|
919
+ filter_tmp = Filter.new
920
+ filter_tmp.deserialize(i)
921
+ @Filters << filter_tmp
922
+ end
923
+ end
924
+ @Limit = params['Limit']
925
+ @OrderField = params['OrderField']
926
+ @Offset = params['Offset']
927
+ @ReturnBindAutoSnapshotPolicy = params['ReturnBindAutoSnapshotPolicy']
928
+ @DiskIds = params['DiskIds']
929
+ @Order = params['Order']
930
+ end
931
+ end
932
+
933
+ # DescribeDisks返回参数结构体
934
+ class DescribeDisksResponse < TencentCloud::Common::AbstractModel
935
+ # @param TotalCount: 符合条件的云硬盘数量。
936
+ # @type TotalCount: Integer
937
+ # @param DiskSet: 云硬盘的详细信息列表。
938
+ # @type DiskSet: Array
939
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
940
+ # @type RequestId: String
941
+
942
+ attr_accessor :TotalCount, :DiskSet, :RequestId
943
+
944
+ def initialize(totalcount=nil, diskset=nil, requestid=nil)
945
+ @TotalCount = totalcount
946
+ @DiskSet = diskset
947
+ @RequestId = requestid
948
+ end
949
+
950
+ def deserialize(params)
951
+ @TotalCount = params['TotalCount']
952
+ unless params['DiskSet'].nil?
953
+ @DiskSet = []
954
+ params['DiskSet'].each do |i|
955
+ disk_tmp = Disk.new
956
+ disk_tmp.deserialize(i)
957
+ @DiskSet << disk_tmp
958
+ end
959
+ end
960
+ @RequestId = params['RequestId']
961
+ end
962
+ end
963
+
964
+ # DescribeInstancesDiskNum请求参数结构体
965
+ class DescribeInstancesDiskNumRequest < TencentCloud::Common::AbstractModel
966
+ # @param InstanceIds: 云服务器实例ID,通过[DescribeInstances](/document/product/213/15728)接口查询。
967
+ # @type InstanceIds: Array
968
+
969
+ attr_accessor :InstanceIds
970
+
971
+ def initialize(instanceids=nil)
972
+ @InstanceIds = instanceids
973
+ end
974
+
975
+ def deserialize(params)
976
+ @InstanceIds = params['InstanceIds']
977
+ end
978
+ end
979
+
980
+ # DescribeInstancesDiskNum返回参数结构体
981
+ class DescribeInstancesDiskNumResponse < TencentCloud::Common::AbstractModel
982
+ # @param AttachDetail: 各个云服务器已挂载和可挂载弹性云盘的数量。
983
+ # @type AttachDetail: Array
984
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
985
+ # @type RequestId: String
986
+
987
+ attr_accessor :AttachDetail, :RequestId
988
+
989
+ def initialize(attachdetail=nil, requestid=nil)
990
+ @AttachDetail = attachdetail
991
+ @RequestId = requestid
992
+ end
993
+
994
+ def deserialize(params)
995
+ unless params['AttachDetail'].nil?
996
+ @AttachDetail = []
997
+ params['AttachDetail'].each do |i|
998
+ attachdetail_tmp = AttachDetail.new
999
+ attachdetail_tmp.deserialize(i)
1000
+ @AttachDetail << attachdetail_tmp
1001
+ end
1002
+ end
1003
+ @RequestId = params['RequestId']
1004
+ end
1005
+ end
1006
+
1007
+ # DescribeSnapshotOperationLogs请求参数结构体
1008
+ class DescribeSnapshotOperationLogsRequest < TencentCloud::Common::AbstractModel
1009
+ # @param Filters: 过滤条件。支持以下条件:
1010
+ # <li>snapshot-id - Array of String - 是否必填:是 - 按快照ID过滤,每个请求最多可指定10个快照ID。
1011
+ # @type Filters: Array
1012
+ # @param BeginTime: 要查询的操作日志的起始时间,例如:“2019-11-22 00:00:00"
1013
+ # @type BeginTime: String
1014
+ # @param EndTime: 要查询的操作日志的截止时间,例如:“2019-11-22 23:59:59"
1015
+ # @type EndTime: String
1016
+
1017
+ attr_accessor :Filters, :BeginTime, :EndTime
1018
+
1019
+ def initialize(filters=nil, begintime=nil, endtime=nil)
1020
+ @Filters = filters
1021
+ @BeginTime = begintime
1022
+ @EndTime = endtime
1023
+ end
1024
+
1025
+ def deserialize(params)
1026
+ unless params['Filters'].nil?
1027
+ @Filters = []
1028
+ params['Filters'].each do |i|
1029
+ filter_tmp = Filter.new
1030
+ filter_tmp.deserialize(i)
1031
+ @Filters << filter_tmp
1032
+ end
1033
+ end
1034
+ @BeginTime = params['BeginTime']
1035
+ @EndTime = params['EndTime']
1036
+ end
1037
+ end
1038
+
1039
+ # DescribeSnapshotOperationLogs返回参数结构体
1040
+ class DescribeSnapshotOperationLogsResponse < TencentCloud::Common::AbstractModel
1041
+ # @param SnapshotOperationLogSet: 快照操作日志列表。
1042
+ # @type SnapshotOperationLogSet: Array
1043
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1044
+ # @type RequestId: String
1045
+
1046
+ attr_accessor :SnapshotOperationLogSet, :RequestId
1047
+
1048
+ def initialize(snapshotoperationlogset=nil, requestid=nil)
1049
+ @SnapshotOperationLogSet = snapshotoperationlogset
1050
+ @RequestId = requestid
1051
+ end
1052
+
1053
+ def deserialize(params)
1054
+ unless params['SnapshotOperationLogSet'].nil?
1055
+ @SnapshotOperationLogSet = []
1056
+ params['SnapshotOperationLogSet'].each do |i|
1057
+ snapshotoperationlog_tmp = SnapshotOperationLog.new
1058
+ snapshotoperationlog_tmp.deserialize(i)
1059
+ @SnapshotOperationLogSet << snapshotoperationlog_tmp
1060
+ end
1061
+ end
1062
+ @RequestId = params['RequestId']
1063
+ end
1064
+ end
1065
+
1066
+ # DescribeSnapshotSharePermission请求参数结构体
1067
+ class DescribeSnapshotSharePermissionRequest < TencentCloud::Common::AbstractModel
1068
+ # @param SnapshotId: 要查询快照的ID。可通过[DescribeSnapshots](https://cloud.tencent.com/document/api/362/15647)查询获取。
1069
+ # @type SnapshotId: String
1070
+
1071
+ attr_accessor :SnapshotId
1072
+
1073
+ def initialize(snapshotid=nil)
1074
+ @SnapshotId = snapshotid
1075
+ end
1076
+
1077
+ def deserialize(params)
1078
+ @SnapshotId = params['SnapshotId']
1079
+ end
1080
+ end
1081
+
1082
+ # DescribeSnapshotSharePermission返回参数结构体
1083
+ class DescribeSnapshotSharePermissionResponse < TencentCloud::Common::AbstractModel
1084
+ # @param SharePermissionSet: 快照的分享信息的集合
1085
+ # @type SharePermissionSet: Array
1086
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1087
+ # @type RequestId: String
1088
+
1089
+ attr_accessor :SharePermissionSet, :RequestId
1090
+
1091
+ def initialize(sharepermissionset=nil, requestid=nil)
1092
+ @SharePermissionSet = sharepermissionset
1093
+ @RequestId = requestid
1094
+ end
1095
+
1096
+ def deserialize(params)
1097
+ unless params['SharePermissionSet'].nil?
1098
+ @SharePermissionSet = []
1099
+ params['SharePermissionSet'].each do |i|
1100
+ sharepermission_tmp = SharePermission.new
1101
+ sharepermission_tmp.deserialize(i)
1102
+ @SharePermissionSet << sharepermission_tmp
1103
+ end
1104
+ end
1105
+ @RequestId = params['RequestId']
1106
+ end
1107
+ end
1108
+
1109
+ # DescribeSnapshots请求参数结构体
1110
+ class DescribeSnapshotsRequest < TencentCloud::Common::AbstractModel
1111
+ # @param SnapshotIds: 要查询快照的ID列表。参数不支持同时指定`SnapshotIds`和`Filters`。
1112
+ # @type SnapshotIds: Array
1113
+ # @param Filters: 过滤条件。参数不支持同时指定`SnapshotIds`和`Filters`。<br><li>snapshot-id - Array of String - 是否必填:否 -(过滤条件)按照快照的ID过滤。快照ID形如:`snap-11112222`。<br><li>snapshot-name - Array of String - 是否必填:否 -(过滤条件)按照快照名称过滤。<br><li>snapshot-state - Array of String - 是否必填:否 -(过滤条件)按照快照状态过滤。 (NORMAL:正常 | CREATING:创建中 | ROLLBACKING:回滚中。)<br><li>disk-usage - Array of String - 是否必填:否 -(过滤条件)按创建快照的云盘类型过滤。 (SYSTEM_DISK:代表系统盘 | DATA_DISK:代表数据盘。)<br><li>project-id - Array of String - 是否必填:否 -(过滤条件)按云硬盘所属项目ID过滤。<br><li>disk-id - Array of String - 是否必填:否 -(过滤条件)按照创建快照的云硬盘ID过滤。<br><li>zone - Array of String - 是否必填:否 -(过滤条件)按照[可用区](/document/product/213/15753#ZoneInfo)过滤。<br><li>encrypt - Array of String - 是否必填:否 -(过滤条件)按是否加密盘快照过滤。 (TRUE:表示加密盘快照 | FALSE:表示非加密盘快照。)
1114
+ # <li>snapshot-type- Array of String - 是否必填:否 -(过滤条件)根据snapshot-type指定的快照类型查询对应的快照。
1115
+ # (SHARED_SNAPSHOT:表示共享过来的快照 | PRIVATE_SNAPSHOT:表示自己私有快照。)
1116
+ # @type Filters: Array
1117
+ # @param Offset: 偏移量,默认为0。关于`Offset`的更进一步介绍请参考API[简介](/document/product/362/15633)中的相关小节。
1118
+ # @type Offset: Integer
1119
+ # @param Limit: 返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](/document/product/362/15633)中的相关小节。
1120
+ # @type Limit: Integer
1121
+ # @param Order: 输出云盘列表的排列顺序。取值范围:<br><li>ASC:升序排列<br><li>DESC:降序排列。
1122
+ # @type Order: String
1123
+ # @param OrderField: 快照列表排序的依据字段。取值范围:<br><li>CREATE_TIME:依据快照的创建时间排序<br>默认按创建时间排序。
1124
+ # @type OrderField: String
1125
+
1126
+ attr_accessor :SnapshotIds, :Filters, :Offset, :Limit, :Order, :OrderField
1127
+
1128
+ def initialize(snapshotids=nil, filters=nil, offset=nil, limit=nil, order=nil, orderfield=nil)
1129
+ @SnapshotIds = snapshotids
1130
+ @Filters = filters
1131
+ @Offset = offset
1132
+ @Limit = limit
1133
+ @Order = order
1134
+ @OrderField = orderfield
1135
+ end
1136
+
1137
+ def deserialize(params)
1138
+ @SnapshotIds = params['SnapshotIds']
1139
+ unless params['Filters'].nil?
1140
+ @Filters = []
1141
+ params['Filters'].each do |i|
1142
+ filter_tmp = Filter.new
1143
+ filter_tmp.deserialize(i)
1144
+ @Filters << filter_tmp
1145
+ end
1146
+ end
1147
+ @Offset = params['Offset']
1148
+ @Limit = params['Limit']
1149
+ @Order = params['Order']
1150
+ @OrderField = params['OrderField']
1151
+ end
1152
+ end
1153
+
1154
+ # DescribeSnapshots返回参数结构体
1155
+ class DescribeSnapshotsResponse < TencentCloud::Common::AbstractModel
1156
+ # @param TotalCount: 快照的数量。
1157
+ # @type TotalCount: Integer
1158
+ # @param SnapshotSet: 快照的详情列表。
1159
+ # @type SnapshotSet: Array
1160
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1161
+ # @type RequestId: String
1162
+
1163
+ attr_accessor :TotalCount, :SnapshotSet, :RequestId
1164
+
1165
+ def initialize(totalcount=nil, snapshotset=nil, requestid=nil)
1166
+ @TotalCount = totalcount
1167
+ @SnapshotSet = snapshotset
1168
+ @RequestId = requestid
1169
+ end
1170
+
1171
+ def deserialize(params)
1172
+ @TotalCount = params['TotalCount']
1173
+ unless params['SnapshotSet'].nil?
1174
+ @SnapshotSet = []
1175
+ params['SnapshotSet'].each do |i|
1176
+ snapshot_tmp = Snapshot.new
1177
+ snapshot_tmp.deserialize(i)
1178
+ @SnapshotSet << snapshot_tmp
1179
+ end
1180
+ end
1181
+ @RequestId = params['RequestId']
1182
+ end
1183
+ end
1184
+
1185
+ # DetachDisks请求参数结构体
1186
+ class DetachDisksRequest < TencentCloud::Common::AbstractModel
1187
+ # @param DiskIds: 将要卸载的云硬盘ID, 通过[DescribeDisks](/document/product/362/16315)接口查询,单次请求最多可卸载10块弹性云盘。
1188
+ # @type DiskIds: Array
1189
+ # @param InstanceId: 对于非共享型云盘,会忽略该参数;对于共享型云盘,该参数表示要从哪个CVM实例上卸载云盘。
1190
+ # @type InstanceId: String
1191
+
1192
+ attr_accessor :DiskIds, :InstanceId
1193
+
1194
+ def initialize(diskids=nil, instanceid=nil)
1195
+ @DiskIds = diskids
1196
+ @InstanceId = instanceid
1197
+ end
1198
+
1199
+ def deserialize(params)
1200
+ @DiskIds = params['DiskIds']
1201
+ @InstanceId = params['InstanceId']
1202
+ end
1203
+ end
1204
+
1205
+ # DetachDisks返回参数结构体
1206
+ class DetachDisksResponse < TencentCloud::Common::AbstractModel
1207
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1208
+ # @type RequestId: String
1209
+
1210
+ attr_accessor :RequestId
1211
+
1212
+ def initialize(requestid=nil)
1213
+ @RequestId = requestid
1214
+ end
1215
+
1216
+ def deserialize(params)
1217
+ @RequestId = params['RequestId']
1218
+ end
1219
+ end
1220
+
1221
+ # 描述了云硬盘的详细信息
1222
+ class Disk < TencentCloud::Common::AbstractModel
1223
+ # @param DeleteWithInstance: 云盘是否与挂载的实例一起销毁。<br><li>true:销毁实例时会同时销毁云盘,只支持按小时后付费云盘。<br><li>false:销毁实例时不销毁云盘。
1224
+ # 注意:此字段可能返回 null,表示取不到有效值。
1225
+ # @type DeleteWithInstance: Boolean
1226
+ # @param RenewFlag: 自动续费标识。取值范围:<br><li>NOTIFY_AND_AUTO_RENEW:通知过期且自动续费<br><li>NOTIFY_AND_MANUAL_RENEW:通知过期不自动续费<br><li>DISABLE_NOTIFY_AND_MANUAL_RENEW:不通知过期不自动续费。
1227
+ # 注意:此字段可能返回 null,表示取不到有效值。
1228
+ # @type RenewFlag: String
1229
+ # @param DiskType: 硬盘介质类型。取值范围:<br><li>CLOUD_BASIC:表示普通云硬盘<br><li>CLOUD_PREMIUM:表示高性能云硬盘<br><li>CLOUD_SSD:表示SSD云硬盘<br><li>CLOUD_HSSD:表示增强型SSD云硬盘<br><li>CLOUD_TSSD:表示极速型SSD云硬盘。
1230
+ # @type DiskType: String
1231
+ # @param DiskState: 云盘状态。取值范围:<br><li>UNATTACHED:未挂载<br><li>ATTACHING:挂载中<br><li>ATTACHED:已挂载<br><li>DETACHING:解挂中<br><li>EXPANDING:扩容中<br><li>ROLLBACKING:回滚中<br><li>TORECYCLE:待回收<br><li>DUMPING:拷贝硬盘中。
1232
+ # @type DiskState: String
1233
+ # @param SnapshotCount: 云盘拥有的快照总数。
1234
+ # @type SnapshotCount: Integer
1235
+ # @param AutoRenewFlagError: 云盘已挂载到子机,且子机与云盘都是包年包月。<br><li>true:子机设置了自动续费标识,但云盘未设置<br><li>false:云盘自动续费标识正常。
1236
+ # 注意:此字段可能返回 null,表示取不到有效值。
1237
+ # @type AutoRenewFlagError: Boolean
1238
+ # @param Rollbacking: 云盘是否处于快照回滚状态。取值范围:<br><li>false:表示不处于快照回滚状态<br><li>true:表示处于快照回滚状态。
1239
+ # @type Rollbacking: Boolean
1240
+ # @param InstanceIdList: 对于非共享型云盘,该参数为空数组。对于共享型云盘,则表示该云盘当前被挂载到的CVM实例InstanceId
1241
+ # @type InstanceIdList: Array
1242
+ # @param Encrypt: 云盘是否为加密盘。取值范围:<br><li>false:表示非加密盘<br><li>true:表示加密盘。
1243
+ # @type Encrypt: Boolean
1244
+ # @param DiskName: 云硬盘名称。
1245
+ # @type DiskName: String
1246
+ # @param BackupDisk: 云硬盘因欠费销毁或者到期销毁时, 是否使用快照备份数据的标识。true表示销毁时创建快照进行数据备份。false表示直接销毁,不进行数据备份。
1247
+ # @type BackupDisk: Boolean
1248
+ # @param Tags: 与云盘绑定的标签,云盘未绑定标签则取值为空。
1249
+ # 注意:此字段可能返回 null,表示取不到有效值。
1250
+ # @type Tags: Array
1251
+ # @param InstanceId: 云硬盘挂载的云主机ID。
1252
+ # @type InstanceId: String
1253
+ # @param AttachMode: 云盘的挂载类型。取值范围:<br><li>PF: PF挂载<br><li>VF: VF挂载
1254
+ # 注意:此字段可能返回 null,表示取不到有效值。
1255
+ # @type AttachMode: String
1256
+ # @param AutoSnapshotPolicyIds: 云盘关联的定期快照ID。只有在调用DescribeDisks接口时,入参ReturnBindAutoSnapshotPolicy取值为TRUE才会返回该参数。
1257
+ # 注意:此字段可能返回 null,表示取不到有效值。
1258
+ # @type AutoSnapshotPolicyIds: Array
1259
+ # @param ThroughputPerformance: 云硬盘额外性能值,单位MB/s。
1260
+ # 注意:此字段可能返回 null,表示取不到有效值。
1261
+ # @type ThroughputPerformance: Integer
1262
+ # @param Migrating: 云盘是否处于类型变更中。取值范围:<br><li>false:表示云盘不处于类型变更中<br><li>true:表示云盘已发起类型变更,正处于迁移中。
1263
+ # 注意:此字段可能返回 null,表示取不到有效值。
1264
+ # @type Migrating: Boolean
1265
+ # @param DiskId: 云硬盘ID。
1266
+ # @type DiskId: String
1267
+ # @param SnapshotSize: 云盘拥有的快照总容量,单位为MB。
1268
+ # @type SnapshotSize: Integer
1269
+ # @param Placement: 云硬盘所在的位置。
1270
+ # @type Placement: :class:`Tencentcloud::Cbs.v20170312.models.Placement`
1271
+ # @param IsReturnable: 判断预付费的云盘是否支持主动退还。<br><li>true:支持主动退还<br><li>false:不支持主动退还。
1272
+ # 注意:此字段可能返回 null,表示取不到有效值。
1273
+ # @type IsReturnable: Boolean
1274
+ # @param DeadlineTime: 云硬盘的到期时间。
1275
+ # @type DeadlineTime: String
1276
+ # @param Attached: 云盘是否挂载到云主机上。取值范围:<br><li>false:表示未挂载<br><li>true:表示已挂载。
1277
+ # @type Attached: Boolean
1278
+ # @param DiskSize: 云硬盘大小,单位GB。
1279
+ # @type DiskSize: Integer
1280
+ # @param MigratePercent: 云盘类型变更的迁移进度,取值0到100。
1281
+ # 注意:此字段可能返回 null,表示取不到有效值。
1282
+ # @type MigratePercent: Integer
1283
+ # @param DiskUsage: 云硬盘类型。取值范围:<br><li>SYSTEM_DISK:系统盘<br><li>DATA_DISK:数据盘。
1284
+ # @type DiskUsage: String
1285
+ # @param DiskChargeType: 付费模式。取值范围:<br><li>PREPAID:预付费,即包年包月<br><li>POSTPAID_BY_HOUR:后付费,即按量计费。
1286
+ # @type DiskChargeType: String
1287
+ # @param Portable: 是否为弹性云盘,false表示非弹性云盘,true表示弹性云盘。
1288
+ # @type Portable: Boolean
1289
+ # @param SnapshotAbility: 云盘是否具备创建快照的能力。取值范围:<br><li>false表示不具备<br><li>true表示具备。
1290
+ # @type SnapshotAbility: Boolean
1291
+ # @param DeadlineError: 在云盘已挂载到实例,且实例与云盘都是包年包月的条件下,此字段才有意义。<br><li>true:云盘到期时间早于实例。<br><li>false:云盘到期时间晚于实例。
1292
+ # 注意:此字段可能返回 null,表示取不到有效值。
1293
+ # @type DeadlineError: Boolean
1294
+ # @param RollbackPercent: 云盘快照回滚的进度。
1295
+ # @type RollbackPercent: Integer
1296
+ # @param DifferDaysOfDeadline: 当前时间距离盘到期的天数(仅对预付费盘有意义)。
1297
+ # 注意:此字段可能返回 null,表示取不到有效值。
1298
+ # @type DifferDaysOfDeadline: Integer
1299
+ # @param ReturnFailCode: 预付费云盘在不支持主动退还的情况下,该参数表明不支持主动退还的具体原因。取值范围:<br><li>1:云硬盘已经退还<br><li>2:云硬盘已过期<br><li>3:云盘不支持退还<br><li>8:超过可退还数量的限制。
1300
+ # 注意:此字段可能返回 null,表示取不到有效值。
1301
+ # @type ReturnFailCode: Integer
1302
+ # @param Shareable: 云盘是否为共享型云盘。
1303
+ # @type Shareable: Boolean
1304
+ # @param CreateTime: 云硬盘的创建时间。
1305
+ # @type CreateTime: String
1306
+
1307
+ attr_accessor :DeleteWithInstance, :RenewFlag, :DiskType, :DiskState, :SnapshotCount, :AutoRenewFlagError, :Rollbacking, :InstanceIdList, :Encrypt, :DiskName, :BackupDisk, :Tags, :InstanceId, :AttachMode, :AutoSnapshotPolicyIds, :ThroughputPerformance, :Migrating, :DiskId, :SnapshotSize, :Placement, :IsReturnable, :DeadlineTime, :Attached, :DiskSize, :MigratePercent, :DiskUsage, :DiskChargeType, :Portable, :SnapshotAbility, :DeadlineError, :RollbackPercent, :DifferDaysOfDeadline, :ReturnFailCode, :Shareable, :CreateTime
1308
+
1309
+ def initialize(deletewithinstance=nil, renewflag=nil, disktype=nil, diskstate=nil, snapshotcount=nil, autorenewflagerror=nil, rollbacking=nil, instanceidlist=nil, encrypt=nil, diskname=nil, backupdisk=nil, tags=nil, instanceid=nil, attachmode=nil, autosnapshotpolicyids=nil, throughputperformance=nil, migrating=nil, diskid=nil, snapshotsize=nil, placement=nil, isreturnable=nil, deadlinetime=nil, attached=nil, disksize=nil, migratepercent=nil, diskusage=nil, diskchargetype=nil, portable=nil, snapshotability=nil, deadlineerror=nil, rollbackpercent=nil, differdaysofdeadline=nil, returnfailcode=nil, shareable=nil, createtime=nil)
1310
+ @DeleteWithInstance = deletewithinstance
1311
+ @RenewFlag = renewflag
1312
+ @DiskType = disktype
1313
+ @DiskState = diskstate
1314
+ @SnapshotCount = snapshotcount
1315
+ @AutoRenewFlagError = autorenewflagerror
1316
+ @Rollbacking = rollbacking
1317
+ @InstanceIdList = instanceidlist
1318
+ @Encrypt = encrypt
1319
+ @DiskName = diskname
1320
+ @BackupDisk = backupdisk
1321
+ @Tags = tags
1322
+ @InstanceId = instanceid
1323
+ @AttachMode = attachmode
1324
+ @AutoSnapshotPolicyIds = autosnapshotpolicyids
1325
+ @ThroughputPerformance = throughputperformance
1326
+ @Migrating = migrating
1327
+ @DiskId = diskid
1328
+ @SnapshotSize = snapshotsize
1329
+ @Placement = placement
1330
+ @IsReturnable = isreturnable
1331
+ @DeadlineTime = deadlinetime
1332
+ @Attached = attached
1333
+ @DiskSize = disksize
1334
+ @MigratePercent = migratepercent
1335
+ @DiskUsage = diskusage
1336
+ @DiskChargeType = diskchargetype
1337
+ @Portable = portable
1338
+ @SnapshotAbility = snapshotability
1339
+ @DeadlineError = deadlineerror
1340
+ @RollbackPercent = rollbackpercent
1341
+ @DifferDaysOfDeadline = differdaysofdeadline
1342
+ @ReturnFailCode = returnfailcode
1343
+ @Shareable = shareable
1344
+ @CreateTime = createtime
1345
+ end
1346
+
1347
+ def deserialize(params)
1348
+ @DeleteWithInstance = params['DeleteWithInstance']
1349
+ @RenewFlag = params['RenewFlag']
1350
+ @DiskType = params['DiskType']
1351
+ @DiskState = params['DiskState']
1352
+ @SnapshotCount = params['SnapshotCount']
1353
+ @AutoRenewFlagError = params['AutoRenewFlagError']
1354
+ @Rollbacking = params['Rollbacking']
1355
+ @InstanceIdList = params['InstanceIdList']
1356
+ @Encrypt = params['Encrypt']
1357
+ @DiskName = params['DiskName']
1358
+ @BackupDisk = params['BackupDisk']
1359
+ unless params['Tags'].nil?
1360
+ @Tags = []
1361
+ params['Tags'].each do |i|
1362
+ tag_tmp = Tag.new
1363
+ tag_tmp.deserialize(i)
1364
+ @Tags << tag_tmp
1365
+ end
1366
+ end
1367
+ @InstanceId = params['InstanceId']
1368
+ @AttachMode = params['AttachMode']
1369
+ @AutoSnapshotPolicyIds = params['AutoSnapshotPolicyIds']
1370
+ @ThroughputPerformance = params['ThroughputPerformance']
1371
+ @Migrating = params['Migrating']
1372
+ @DiskId = params['DiskId']
1373
+ @SnapshotSize = params['SnapshotSize']
1374
+ unless params['Placement'].nil?
1375
+ @Placement = Placement.new
1376
+ @Placement.deserialize(params['Placement'])
1377
+ end
1378
+ @IsReturnable = params['IsReturnable']
1379
+ @DeadlineTime = params['DeadlineTime']
1380
+ @Attached = params['Attached']
1381
+ @DiskSize = params['DiskSize']
1382
+ @MigratePercent = params['MigratePercent']
1383
+ @DiskUsage = params['DiskUsage']
1384
+ @DiskChargeType = params['DiskChargeType']
1385
+ @Portable = params['Portable']
1386
+ @SnapshotAbility = params['SnapshotAbility']
1387
+ @DeadlineError = params['DeadlineError']
1388
+ @RollbackPercent = params['RollbackPercent']
1389
+ @DifferDaysOfDeadline = params['DifferDaysOfDeadline']
1390
+ @ReturnFailCode = params['ReturnFailCode']
1391
+ @Shareable = params['Shareable']
1392
+ @CreateTime = params['CreateTime']
1393
+ end
1394
+ end
1395
+
1396
+ # 描述了实例的计费模式
1397
+ class DiskChargePrepaid < TencentCloud::Common::AbstractModel
1398
+ # @param Period: 购买云盘的时长,默认单位为月,取值范围:1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 24, 36。
1399
+ # @type Period: Integer
1400
+ # @param RenewFlag: 自动续费标识。取值范围:<br><li>NOTIFY_AND_AUTO_RENEW:通知过期且自动续费<br><li>NOTIFY_AND_MANUAL_RENEW:通知过期不自动续费<br><li>DISABLE_NOTIFY_AND_MANUAL_RENEW:不通知过期不自动续费<br><br>默认取值:NOTIFY_AND_MANUAL_RENEW:通知过期不自动续费。
1401
+ # @type RenewFlag: String
1402
+ # @param CurInstanceDeadline: 需要将云盘的到期时间与挂载的子机对齐时,可传入该参数。该参数表示子机当前的到期时间,此时Period如果传入,则表示子机需要续费的时长,云盘会自动按对齐到子机续费后的到期时间续费,示例取值:2018-03-30 20:15:03。
1403
+ # @type CurInstanceDeadline: String
1404
+
1405
+ attr_accessor :Period, :RenewFlag, :CurInstanceDeadline
1406
+
1407
+ def initialize(period=nil, renewflag=nil, curinstancedeadline=nil)
1408
+ @Period = period
1409
+ @RenewFlag = renewflag
1410
+ @CurInstanceDeadline = curinstancedeadline
1411
+ end
1412
+
1413
+ def deserialize(params)
1414
+ @Period = params['Period']
1415
+ @RenewFlag = params['RenewFlag']
1416
+ @CurInstanceDeadline = params['CurInstanceDeadline']
1417
+ end
1418
+ end
1419
+
1420
+ # 云盘配置。
1421
+ class DiskConfig < TencentCloud::Common::AbstractModel
1422
+ # @param Available: 配置是否可用。
1423
+ # @type Available: Boolean
1424
+ # @param DiskType: 云盘介质类型。取值范围:<br><li>CLOUD_BASIC:表示普通云硬盘<br><li>CLOUD_PREMIUM:表示高性能云硬盘<br><li>CLOUD_SSD:SSD表示SSD云硬盘。
1425
+ # @type DiskType: String
1426
+ # @param DiskUsage: 云盘类型。取值范围:<br><li>SYSTEM_DISK:表示系统盘<br><li>DATA_DISK:表示数据盘。
1427
+ # @type DiskUsage: String
1428
+ # @param DiskChargeType: 付费模式。取值范围:<br><li>PREPAID:表示预付费,即包年包月<br><li>POSTPAID_BY_HOUR:表示后付费,即按量计费。
1429
+ # @type DiskChargeType: String
1430
+ # @param MaxDiskSize: 最大可配置云盘大小,单位GB。
1431
+ # @type MaxDiskSize: Integer
1432
+ # @param MinDiskSize: 最小可配置云盘大小,单位GB。
1433
+ # @type MinDiskSize: Integer
1434
+ # @param Zone: 云硬盘所属的[可用区](/document/product/213/15753#ZoneInfo)。
1435
+ # @type Zone: String
1436
+ # @param DeviceClass: 实例机型。
1437
+ # 注意:此字段可能返回 null,表示取不到有效值。
1438
+ # @type DeviceClass: String
1439
+ # @param InstanceFamily: 实例机型系列。详见[实例类型](https://cloud.tencent.com/document/product/213/11518)
1440
+ # 注意:此字段可能返回 null,表示取不到有效值。
1441
+ # @type InstanceFamily: String
1442
+
1443
+ attr_accessor :Available, :DiskType, :DiskUsage, :DiskChargeType, :MaxDiskSize, :MinDiskSize, :Zone, :DeviceClass, :InstanceFamily
1444
+
1445
+ def initialize(available=nil, disktype=nil, diskusage=nil, diskchargetype=nil, maxdisksize=nil, mindisksize=nil, zone=nil, deviceclass=nil, instancefamily=nil)
1446
+ @Available = available
1447
+ @DiskType = disktype
1448
+ @DiskUsage = diskusage
1449
+ @DiskChargeType = diskchargetype
1450
+ @MaxDiskSize = maxdisksize
1451
+ @MinDiskSize = mindisksize
1452
+ @Zone = zone
1453
+ @DeviceClass = deviceclass
1454
+ @InstanceFamily = instancefamily
1455
+ end
1456
+
1457
+ def deserialize(params)
1458
+ @Available = params['Available']
1459
+ @DiskType = params['DiskType']
1460
+ @DiskUsage = params['DiskUsage']
1461
+ @DiskChargeType = params['DiskChargeType']
1462
+ @MaxDiskSize = params['MaxDiskSize']
1463
+ @MinDiskSize = params['MinDiskSize']
1464
+ @Zone = params['Zone']
1465
+ @DeviceClass = params['DeviceClass']
1466
+ @InstanceFamily = params['InstanceFamily']
1467
+ end
1468
+ end
1469
+
1470
+ # 云盘操作日志。
1471
+ class DiskOperationLog < TencentCloud::Common::AbstractModel
1472
+ # @param OperationState: 操作的状态。取值范围:
1473
+ # SUCCESS :表示操作成功
1474
+ # FAILED :表示操作失败
1475
+ # PROCESSING :表示操作中。
1476
+ # @type OperationState: String
1477
+ # @param StartTime: 开始时间。
1478
+ # @type StartTime: String
1479
+ # @param Operator: 操作者的UIN。
1480
+ # @type Operator: String
1481
+ # @param Operation: 操作类型。取值范围:
1482
+ # CBS_OPERATION_ATTACH:挂载云硬盘
1483
+ # CBS_OPERATION_DETACH:解挂云硬盘
1484
+ # CBS_OPERATION_RENEW:续费
1485
+ # CBS_OPERATION_EXPAND:扩容
1486
+ # CBS_OPERATION_CREATE:创建
1487
+ # CBS_OPERATION_ISOLATE:隔离
1488
+ # CBS_OPERATION_MODIFY:修改云硬盘属性
1489
+ # ASP_OPERATION_BIND:关联定期快照策略
1490
+ # ASP_OPERATION_UNBIND:取消关联定期快照策略
1491
+ # @type Operation: String
1492
+ # @param EndTime: 结束时间。
1493
+ # @type EndTime: String
1494
+ # @param DiskId: 操作的云盘ID。
1495
+ # @type DiskId: String
1496
+
1497
+ attr_accessor :OperationState, :StartTime, :Operator, :Operation, :EndTime, :DiskId
1498
+
1499
+ def initialize(operationstate=nil, starttime=nil, operator=nil, operation=nil, endtime=nil, diskid=nil)
1500
+ @OperationState = operationstate
1501
+ @StartTime = starttime
1502
+ @Operator = operator
1503
+ @Operation = operation
1504
+ @EndTime = endtime
1505
+ @DiskId = diskid
1506
+ end
1507
+
1508
+ def deserialize(params)
1509
+ @OperationState = params['OperationState']
1510
+ @StartTime = params['StartTime']
1511
+ @Operator = params['Operator']
1512
+ @Operation = params['Operation']
1513
+ @EndTime = params['EndTime']
1514
+ @DiskId = params['DiskId']
1515
+ end
1516
+ end
1517
+
1518
+ # 描述键值对过滤器,用于条件过滤查询。
1519
+ class Filter < TencentCloud::Common::AbstractModel
1520
+ # @param Values: 一个或者多个过滤值。
1521
+ # @type Values: Array
1522
+ # @param Name: 过滤键的名称。
1523
+ # @type Name: String
1524
+
1525
+ attr_accessor :Values, :Name
1526
+
1527
+ def initialize(values=nil, name=nil)
1528
+ @Values = values
1529
+ @Name = name
1530
+ end
1531
+
1532
+ def deserialize(params)
1533
+ @Values = params['Values']
1534
+ @Name = params['Name']
1535
+ end
1536
+ end
1537
+
1538
+ # GetSnapOverview请求参数结构体
1539
+ class GetSnapOverviewRequest < TencentCloud::Common::AbstractModel
1540
+
1541
+
1542
+ def initialize()
1543
+ end
1544
+
1545
+ def deserialize(params)
1546
+ end
1547
+ end
1548
+
1549
+ # GetSnapOverview返回参数结构体
1550
+ class GetSnapOverviewResponse < TencentCloud::Common::AbstractModel
1551
+ # @param TotalSize: 用户快照总大小
1552
+ # @type TotalSize: Float
1553
+ # @param RealTradeSize: 用户快照总大小(用于计费)
1554
+ # @type RealTradeSize: Float
1555
+ # @param FreeQuota: 快照免费额度
1556
+ # @type FreeQuota: Float
1557
+ # @param TotalNums: 快照总个数
1558
+ # @type TotalNums: Integer
1559
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1560
+ # @type RequestId: String
1561
+
1562
+ attr_accessor :TotalSize, :RealTradeSize, :FreeQuota, :TotalNums, :RequestId
1563
+
1564
+ def initialize(totalsize=nil, realtradesize=nil, freequota=nil, totalnums=nil, requestid=nil)
1565
+ @TotalSize = totalsize
1566
+ @RealTradeSize = realtradesize
1567
+ @FreeQuota = freequota
1568
+ @TotalNums = totalnums
1569
+ @RequestId = requestid
1570
+ end
1571
+
1572
+ def deserialize(params)
1573
+ @TotalSize = params['TotalSize']
1574
+ @RealTradeSize = params['RealTradeSize']
1575
+ @FreeQuota = params['FreeQuota']
1576
+ @TotalNums = params['TotalNums']
1577
+ @RequestId = params['RequestId']
1578
+ end
1579
+ end
1580
+
1581
+ # 镜像。
1582
+ class Image < TencentCloud::Common::AbstractModel
1583
+ # @param ImageName: 镜像名称。
1584
+ # @type ImageName: String
1585
+ # @param ImageId: 镜像实例ID。
1586
+ # @type ImageId: String
1587
+
1588
+ attr_accessor :ImageName, :ImageId
1589
+
1590
+ def initialize(imagename=nil, imageid=nil)
1591
+ @ImageName = imagename
1592
+ @ImageId = imageid
1593
+ end
1594
+
1595
+ def deserialize(params)
1596
+ @ImageName = params['ImageName']
1597
+ @ImageId = params['ImageId']
1598
+ end
1599
+ end
1600
+
1601
+ # InquirePriceModifyDiskExtraPerformance请求参数结构体
1602
+ class InquirePriceModifyDiskExtraPerformanceRequest < TencentCloud::Common::AbstractModel
1603
+ # @param DiskId: 云硬盘ID, 通过[DescribeDisks](/document/product/362/16315)接口查询。
1604
+ # @type DiskId: String
1605
+ # @param ThroughputPerformance: 额外购买的云硬盘性能值,单位MB/s。
1606
+ # @type ThroughputPerformance: Integer
1607
+
1608
+ attr_accessor :DiskId, :ThroughputPerformance
1609
+
1610
+ def initialize(diskid=nil, throughputperformance=nil)
1611
+ @DiskId = diskid
1612
+ @ThroughputPerformance = throughputperformance
1613
+ end
1614
+
1615
+ def deserialize(params)
1616
+ @DiskId = params['DiskId']
1617
+ @ThroughputPerformance = params['ThroughputPerformance']
1618
+ end
1619
+ end
1620
+
1621
+ # InquirePriceModifyDiskExtraPerformance返回参数结构体
1622
+ class InquirePriceModifyDiskExtraPerformanceResponse < TencentCloud::Common::AbstractModel
1623
+ # @param DiskPrice: 描述了调整云盘额外性能时对应的价格。
1624
+ # @type DiskPrice: :class:`Tencentcloud::Cbs.v20170312.models.Price`
1625
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1626
+ # @type RequestId: String
1627
+
1628
+ attr_accessor :DiskPrice, :RequestId
1629
+
1630
+ def initialize(diskprice=nil, requestid=nil)
1631
+ @DiskPrice = diskprice
1632
+ @RequestId = requestid
1633
+ end
1634
+
1635
+ def deserialize(params)
1636
+ unless params['DiskPrice'].nil?
1637
+ @DiskPrice = Price.new
1638
+ @DiskPrice.deserialize(params['DiskPrice'])
1639
+ end
1640
+ @RequestId = params['RequestId']
1641
+ end
1642
+ end
1643
+
1644
+ # InquiryPriceCreateDisks请求参数结构体
1645
+ class InquiryPriceCreateDisksRequest < TencentCloud::Common::AbstractModel
1646
+ # @param DiskType: 硬盘介质类型。取值范围:<br><li>CLOUD_BASIC:表示普通云硬盘<br><li>CLOUD_PREMIUM:表示高性能云硬盘<br><li>CLOUD_SSD:表示SSD云硬盘<br><li>CLOUD_HSSD:表示增强型SSD云硬盘<br><li>CLOUD_TSSD:表示极速型SSD云硬盘。
1647
+ # @type DiskType: String
1648
+ # @param DiskSize: 云硬盘大小,单位为GB。云盘大小取值范围参见云硬盘[产品分类](/document/product/362/2353)的说明。
1649
+ # @type DiskSize: Integer
1650
+ # @param DiskChargeType: 云硬盘计费类型。<br><li>PREPAID:预付费,即包年包月<br><li>POSTPAID_BY_HOUR:按小时后付费
1651
+ # @type DiskChargeType: String
1652
+ # @param DiskChargePrepaid: 预付费模式,即包年包月相关参数设置。通过该参数指定包年包月云盘的购买时长、是否设置自动续费等属性。<br>创建预付费云盘该参数必传,创建按小时后付费云盘无需传该参数。
1653
+ # @type DiskChargePrepaid: :class:`Tencentcloud::Cbs.v20170312.models.DiskChargePrepaid`
1654
+ # @param DiskCount: 购买云盘的数量。不填则默认为1。
1655
+ # @type DiskCount: Integer
1656
+ # @param ProjectId: 云盘所属项目ID。
1657
+ # @type ProjectId: Integer
1658
+ # @param ThroughputPerformance: 额外购买的云硬盘性能值,单位MB/s。<br>目前仅支持增强型SSD云硬盘(CLOUD_HSSD)和极速型SSD云硬盘(CLOUD_TSSD)
1659
+ # @type ThroughputPerformance: Integer
1660
+
1661
+ attr_accessor :DiskType, :DiskSize, :DiskChargeType, :DiskChargePrepaid, :DiskCount, :ProjectId, :ThroughputPerformance
1662
+
1663
+ def initialize(disktype=nil, disksize=nil, diskchargetype=nil, diskchargeprepaid=nil, diskcount=nil, projectid=nil, throughputperformance=nil)
1664
+ @DiskType = disktype
1665
+ @DiskSize = disksize
1666
+ @DiskChargeType = diskchargetype
1667
+ @DiskChargePrepaid = diskchargeprepaid
1668
+ @DiskCount = diskcount
1669
+ @ProjectId = projectid
1670
+ @ThroughputPerformance = throughputperformance
1671
+ end
1672
+
1673
+ def deserialize(params)
1674
+ @DiskType = params['DiskType']
1675
+ @DiskSize = params['DiskSize']
1676
+ @DiskChargeType = params['DiskChargeType']
1677
+ unless params['DiskChargePrepaid'].nil?
1678
+ @DiskChargePrepaid = DiskChargePrepaid.new
1679
+ @DiskChargePrepaid.deserialize(params['DiskChargePrepaid'])
1680
+ end
1681
+ @DiskCount = params['DiskCount']
1682
+ @ProjectId = params['ProjectId']
1683
+ @ThroughputPerformance = params['ThroughputPerformance']
1684
+ end
1685
+ end
1686
+
1687
+ # InquiryPriceCreateDisks返回参数结构体
1688
+ class InquiryPriceCreateDisksResponse < TencentCloud::Common::AbstractModel
1689
+ # @param DiskPrice: 描述了新购云盘的价格。
1690
+ # @type DiskPrice: :class:`Tencentcloud::Cbs.v20170312.models.Price`
1691
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1692
+ # @type RequestId: String
1693
+
1694
+ attr_accessor :DiskPrice, :RequestId
1695
+
1696
+ def initialize(diskprice=nil, requestid=nil)
1697
+ @DiskPrice = diskprice
1698
+ @RequestId = requestid
1699
+ end
1700
+
1701
+ def deserialize(params)
1702
+ unless params['DiskPrice'].nil?
1703
+ @DiskPrice = Price.new
1704
+ @DiskPrice.deserialize(params['DiskPrice'])
1705
+ end
1706
+ @RequestId = params['RequestId']
1707
+ end
1708
+ end
1709
+
1710
+ # InquiryPriceRenewDisks请求参数结构体
1711
+ class InquiryPriceRenewDisksRequest < TencentCloud::Common::AbstractModel
1712
+ # @param DiskIds: 云硬盘ID, 通过[DescribeDisks](/document/product/362/16315)接口查询。
1713
+ # @type DiskIds: Array
1714
+ # @param DiskChargePrepaids: 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月云盘的购买时长。如果在该参数中指定CurInstanceDeadline,则会按对齐到子机到期时间来续费。如果是批量续费询价,该参数与Disks参数一一对应,元素数量需保持一致。
1715
+ # @type DiskChargePrepaids: Array
1716
+ # @param NewDeadline: 指定云盘新的到期时间,形式如:2017-12-17 00:00:00。参数`NewDeadline`和`DiskChargePrepaids`是两种指定询价时长的方式,两者必传一个。
1717
+ # @type NewDeadline: String
1718
+ # @param ProjectId: 云盘所属项目ID。 如传入则仅用于鉴权。
1719
+ # @type ProjectId: Integer
1720
+
1721
+ attr_accessor :DiskIds, :DiskChargePrepaids, :NewDeadline, :ProjectId
1722
+
1723
+ def initialize(diskids=nil, diskchargeprepaids=nil, newdeadline=nil, projectid=nil)
1724
+ @DiskIds = diskids
1725
+ @DiskChargePrepaids = diskchargeprepaids
1726
+ @NewDeadline = newdeadline
1727
+ @ProjectId = projectid
1728
+ end
1729
+
1730
+ def deserialize(params)
1731
+ @DiskIds = params['DiskIds']
1732
+ unless params['DiskChargePrepaids'].nil?
1733
+ @DiskChargePrepaids = []
1734
+ params['DiskChargePrepaids'].each do |i|
1735
+ diskchargeprepaid_tmp = DiskChargePrepaid.new
1736
+ diskchargeprepaid_tmp.deserialize(i)
1737
+ @DiskChargePrepaids << diskchargeprepaid_tmp
1738
+ end
1739
+ end
1740
+ @NewDeadline = params['NewDeadline']
1741
+ @ProjectId = params['ProjectId']
1742
+ end
1743
+ end
1744
+
1745
+ # InquiryPriceRenewDisks返回参数结构体
1746
+ class InquiryPriceRenewDisksResponse < TencentCloud::Common::AbstractModel
1747
+ # @param DiskPrice: 描述了续费云盘的价格。
1748
+ # @type DiskPrice: :class:`Tencentcloud::Cbs.v20170312.models.PrepayPrice`
1749
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1750
+ # @type RequestId: String
1751
+
1752
+ attr_accessor :DiskPrice, :RequestId
1753
+
1754
+ def initialize(diskprice=nil, requestid=nil)
1755
+ @DiskPrice = diskprice
1756
+ @RequestId = requestid
1757
+ end
1758
+
1759
+ def deserialize(params)
1760
+ unless params['DiskPrice'].nil?
1761
+ @DiskPrice = PrepayPrice.new
1762
+ @DiskPrice.deserialize(params['DiskPrice'])
1763
+ end
1764
+ @RequestId = params['RequestId']
1765
+ end
1766
+ end
1767
+
1768
+ # InquiryPriceResizeDisk请求参数结构体
1769
+ class InquiryPriceResizeDiskRequest < TencentCloud::Common::AbstractModel
1770
+ # @param DiskId: 云硬盘ID, 通过[DescribeDisks](/document/product/362/16315)接口查询。
1771
+ # @type DiskId: String
1772
+ # @param DiskSize: 云硬盘扩容后的大小,单位为GB,不得小于当前云硬盘大小。云盘大小取值范围参见云硬盘[产品分类](/document/product/362/2353)的说明。
1773
+ # @type DiskSize: Integer
1774
+ # @param ProjectId: 云盘所属项目ID。 如传入则仅用于鉴权。
1775
+ # @type ProjectId: Integer
1776
+
1777
+ attr_accessor :DiskId, :DiskSize, :ProjectId
1778
+
1779
+ def initialize(diskid=nil, disksize=nil, projectid=nil)
1780
+ @DiskId = diskid
1781
+ @DiskSize = disksize
1782
+ @ProjectId = projectid
1783
+ end
1784
+
1785
+ def deserialize(params)
1786
+ @DiskId = params['DiskId']
1787
+ @DiskSize = params['DiskSize']
1788
+ @ProjectId = params['ProjectId']
1789
+ end
1790
+ end
1791
+
1792
+ # InquiryPriceResizeDisk返回参数结构体
1793
+ class InquiryPriceResizeDiskResponse < TencentCloud::Common::AbstractModel
1794
+ # @param DiskPrice: 描述了扩容云盘的价格。
1795
+ # @type DiskPrice: :class:`Tencentcloud::Cbs.v20170312.models.PrepayPrice`
1796
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1797
+ # @type RequestId: String
1798
+
1799
+ attr_accessor :DiskPrice, :RequestId
1800
+
1801
+ def initialize(diskprice=nil, requestid=nil)
1802
+ @DiskPrice = diskprice
1803
+ @RequestId = requestid
1804
+ end
1805
+
1806
+ def deserialize(params)
1807
+ unless params['DiskPrice'].nil?
1808
+ @DiskPrice = PrepayPrice.new
1809
+ @DiskPrice.deserialize(params['DiskPrice'])
1810
+ end
1811
+ @RequestId = params['RequestId']
1812
+ end
1813
+ end
1814
+
1815
+ # ModifyAutoSnapshotPolicyAttribute请求参数结构体
1816
+ class ModifyAutoSnapshotPolicyAttributeRequest < TencentCloud::Common::AbstractModel
1817
+ # @param AutoSnapshotPolicyId: 定期快照策略ID。
1818
+ # @type AutoSnapshotPolicyId: String
1819
+ # @param Policy: 定期快照的执行策略。
1820
+ # @type Policy: Array
1821
+ # @param AutoSnapshotPolicyName: 要创建的定期快照策略名。不传则默认为“未命名”。最大长度不能超60个字节。
1822
+ # @type AutoSnapshotPolicyName: String
1823
+ # @param IsActivated: 是否激活定期快照策略,FALSE表示未激活,TRUE表示激活,默认为TRUE。
1824
+ # @type IsActivated: Boolean
1825
+ # @param IsPermanent: 通过该定期快照策略创建的快照是否永久保留。FALSE表示非永久保留,TRUE表示永久保留,默认为FALSE。
1826
+ # @type IsPermanent: Boolean
1827
+ # @param RetentionDays: 通过该定期快照策略创建的快照保留天数,该参数不可与`IsPermanent`参数冲突,即若定期快照策略设置为永久保留,`RetentionDays`应置0。
1828
+ # @type RetentionDays: Integer
1829
+
1830
+ attr_accessor :AutoSnapshotPolicyId, :Policy, :AutoSnapshotPolicyName, :IsActivated, :IsPermanent, :RetentionDays
1831
+
1832
+ def initialize(autosnapshotpolicyid=nil, policy=nil, autosnapshotpolicyname=nil, isactivated=nil, ispermanent=nil, retentiondays=nil)
1833
+ @AutoSnapshotPolicyId = autosnapshotpolicyid
1834
+ @Policy = policy
1835
+ @AutoSnapshotPolicyName = autosnapshotpolicyname
1836
+ @IsActivated = isactivated
1837
+ @IsPermanent = ispermanent
1838
+ @RetentionDays = retentiondays
1839
+ end
1840
+
1841
+ def deserialize(params)
1842
+ @AutoSnapshotPolicyId = params['AutoSnapshotPolicyId']
1843
+ unless params['Policy'].nil?
1844
+ @Policy = []
1845
+ params['Policy'].each do |i|
1846
+ policy_tmp = Policy.new
1847
+ policy_tmp.deserialize(i)
1848
+ @Policy << policy_tmp
1849
+ end
1850
+ end
1851
+ @AutoSnapshotPolicyName = params['AutoSnapshotPolicyName']
1852
+ @IsActivated = params['IsActivated']
1853
+ @IsPermanent = params['IsPermanent']
1854
+ @RetentionDays = params['RetentionDays']
1855
+ end
1856
+ end
1857
+
1858
+ # ModifyAutoSnapshotPolicyAttribute返回参数结构体
1859
+ class ModifyAutoSnapshotPolicyAttributeResponse < TencentCloud::Common::AbstractModel
1860
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1861
+ # @type RequestId: String
1862
+
1863
+ attr_accessor :RequestId
1864
+
1865
+ def initialize(requestid=nil)
1866
+ @RequestId = requestid
1867
+ end
1868
+
1869
+ def deserialize(params)
1870
+ @RequestId = params['RequestId']
1871
+ end
1872
+ end
1873
+
1874
+ # ModifyDiskAttributes请求参数结构体
1875
+ class ModifyDiskAttributesRequest < TencentCloud::Common::AbstractModel
1876
+ # @param DiskIds: 一个或多个待操作的云硬盘ID。如果传入多个云盘ID,仅支持所有云盘修改为同一属性。
1877
+ # @type DiskIds: Array
1878
+ # @param ProjectId: 新的云硬盘项目ID,只支持修改弹性云盘的项目ID。通过[DescribeProject](/document/api/378/4400)接口查询可用项目及其ID。
1879
+ # @type ProjectId: Integer
1880
+ # @param DiskName: 新的云硬盘名称。
1881
+ # @type DiskName: String
1882
+ # @param Portable: 是否为弹性云盘,FALSE表示非弹性云盘,TRUE表示弹性云盘。仅支持非弹性云盘修改为弹性云盘。
1883
+ # @type Portable: Boolean
1884
+ # @param DeleteWithInstance: 成功挂载到云主机后该云硬盘是否随云主机销毁,TRUE表示随云主机销毁,FALSE表示不随云主机销毁。仅支持按量计费云硬盘数据盘。
1885
+ # @type DeleteWithInstance: Boolean
1886
+ # @param DiskType: 变更云盘类型时,可传入该参数,表示变更的目标类型,取值范围:<br><li>CLOUD_PREMIUM:表示高性能云硬盘<br><li>CLOUD_SSD:表示SSD云硬盘。<br>当前不支持批量变更类型,即传入DiskType时,DiskIds仅支持传入一块云盘;<br>变更云盘类型时不支持同时变更其他属性。
1887
+ # @type DiskType: String
1888
+
1889
+ attr_accessor :DiskIds, :ProjectId, :DiskName, :Portable, :DeleteWithInstance, :DiskType
1890
+
1891
+ def initialize(diskids=nil, projectid=nil, diskname=nil, portable=nil, deletewithinstance=nil, disktype=nil)
1892
+ @DiskIds = diskids
1893
+ @ProjectId = projectid
1894
+ @DiskName = diskname
1895
+ @Portable = portable
1896
+ @DeleteWithInstance = deletewithinstance
1897
+ @DiskType = disktype
1898
+ end
1899
+
1900
+ def deserialize(params)
1901
+ @DiskIds = params['DiskIds']
1902
+ @ProjectId = params['ProjectId']
1903
+ @DiskName = params['DiskName']
1904
+ @Portable = params['Portable']
1905
+ @DeleteWithInstance = params['DeleteWithInstance']
1906
+ @DiskType = params['DiskType']
1907
+ end
1908
+ end
1909
+
1910
+ # ModifyDiskAttributes返回参数结构体
1911
+ class ModifyDiskAttributesResponse < TencentCloud::Common::AbstractModel
1912
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1913
+ # @type RequestId: String
1914
+
1915
+ attr_accessor :RequestId
1916
+
1917
+ def initialize(requestid=nil)
1918
+ @RequestId = requestid
1919
+ end
1920
+
1921
+ def deserialize(params)
1922
+ @RequestId = params['RequestId']
1923
+ end
1924
+ end
1925
+
1926
+ # ModifyDiskExtraPerformance请求参数结构体
1927
+ class ModifyDiskExtraPerformanceRequest < TencentCloud::Common::AbstractModel
1928
+ # @param DiskId: 需要创建快照的云硬盘ID,可通过[DescribeDisks](/document/product/362/16315)接口查询。
1929
+ # @type DiskId: String
1930
+ # @param ThroughputPerformance: 额外购买的云硬盘性能值,单位MB/s。
1931
+ # @type ThroughputPerformance: Integer
1932
+
1933
+ attr_accessor :DiskId, :ThroughputPerformance
1934
+
1935
+ def initialize(diskid=nil, throughputperformance=nil)
1936
+ @DiskId = diskid
1937
+ @ThroughputPerformance = throughputperformance
1938
+ end
1939
+
1940
+ def deserialize(params)
1941
+ @DiskId = params['DiskId']
1942
+ @ThroughputPerformance = params['ThroughputPerformance']
1943
+ end
1944
+ end
1945
+
1946
+ # ModifyDiskExtraPerformance返回参数结构体
1947
+ class ModifyDiskExtraPerformanceResponse < TencentCloud::Common::AbstractModel
1948
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1949
+ # @type RequestId: String
1950
+
1951
+ attr_accessor :RequestId
1952
+
1953
+ def initialize(requestid=nil)
1954
+ @RequestId = requestid
1955
+ end
1956
+
1957
+ def deserialize(params)
1958
+ @RequestId = params['RequestId']
1959
+ end
1960
+ end
1961
+
1962
+ # ModifyDisksChargeType请求参数结构体
1963
+ class ModifyDisksChargeTypeRequest < TencentCloud::Common::AbstractModel
1964
+ # @param DiskIds: 一个或多个待操作的云硬盘ID。每次请求批量云盘上限为100。
1965
+ # @type DiskIds: Array
1966
+ # @param DiskChargePrepaid: 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。
1967
+ # @type DiskChargePrepaid: :class:`Tencentcloud::Cbs.v20170312.models.DiskChargePrepaid`
1968
+ # @param DiskChargePostpaid: 后付费模式
1969
+ # @type DiskChargePostpaid: Boolean
1970
+
1971
+ attr_accessor :DiskIds, :DiskChargePrepaid, :DiskChargePostpaid
1972
+
1973
+ def initialize(diskids=nil, diskchargeprepaid=nil, diskchargepostpaid=nil)
1974
+ @DiskIds = diskids
1975
+ @DiskChargePrepaid = diskchargeprepaid
1976
+ @DiskChargePostpaid = diskchargepostpaid
1977
+ end
1978
+
1979
+ def deserialize(params)
1980
+ @DiskIds = params['DiskIds']
1981
+ unless params['DiskChargePrepaid'].nil?
1982
+ @DiskChargePrepaid = DiskChargePrepaid.new
1983
+ @DiskChargePrepaid.deserialize(params['DiskChargePrepaid'])
1984
+ end
1985
+ @DiskChargePostpaid = params['DiskChargePostpaid']
1986
+ end
1987
+ end
1988
+
1989
+ # ModifyDisksChargeType返回参数结构体
1990
+ class ModifyDisksChargeTypeResponse < TencentCloud::Common::AbstractModel
1991
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1992
+ # @type RequestId: String
1993
+
1994
+ attr_accessor :RequestId
1995
+
1996
+ def initialize(requestid=nil)
1997
+ @RequestId = requestid
1998
+ end
1999
+
2000
+ def deserialize(params)
2001
+ @RequestId = params['RequestId']
2002
+ end
2003
+ end
2004
+
2005
+ # ModifyDisksRenewFlag请求参数结构体
2006
+ class ModifyDisksRenewFlagRequest < TencentCloud::Common::AbstractModel
2007
+ # @param DiskIds: 一个或多个待操作的云硬盘ID。
2008
+ # @type DiskIds: Array
2009
+ # @param RenewFlag: 云盘的续费标识。取值范围:<br><li>NOTIFY_AND_AUTO_RENEW:通知过期且自动续费<br><li>NOTIFY_AND_MANUAL_RENEW:通知过期不自动续费<br><li>DISABLE_NOTIFY_AND_MANUAL_RENEW:不通知过期不自动续费。
2010
+ # @type RenewFlag: String
2011
+
2012
+ attr_accessor :DiskIds, :RenewFlag
2013
+
2014
+ def initialize(diskids=nil, renewflag=nil)
2015
+ @DiskIds = diskids
2016
+ @RenewFlag = renewflag
2017
+ end
2018
+
2019
+ def deserialize(params)
2020
+ @DiskIds = params['DiskIds']
2021
+ @RenewFlag = params['RenewFlag']
2022
+ end
2023
+ end
2024
+
2025
+ # ModifyDisksRenewFlag返回参数结构体
2026
+ class ModifyDisksRenewFlagResponse < TencentCloud::Common::AbstractModel
2027
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2028
+ # @type RequestId: String
2029
+
2030
+ attr_accessor :RequestId
2031
+
2032
+ def initialize(requestid=nil)
2033
+ @RequestId = requestid
2034
+ end
2035
+
2036
+ def deserialize(params)
2037
+ @RequestId = params['RequestId']
2038
+ end
2039
+ end
2040
+
2041
+ # ModifySnapshotAttribute请求参数结构体
2042
+ class ModifySnapshotAttributeRequest < TencentCloud::Common::AbstractModel
2043
+ # @param SnapshotId: 快照ID, 可通过[DescribeSnapshots](/document/product/362/15647)查询。
2044
+ # @type SnapshotId: String
2045
+ # @param SnapshotName: 新的快照名称。最长为60个字符。
2046
+ # @type SnapshotName: String
2047
+ # @param IsPermanent: 快照的保留方式,FALSE表示非永久保留,TRUE表示永久保留。
2048
+ # @type IsPermanent: Boolean
2049
+ # @param Deadline: 快照的到期时间;设置好快照将会被同时设置为非永久保留方式;超过到期时间后快照将会被自动删除。
2050
+ # @type Deadline: String
2051
+
2052
+ attr_accessor :SnapshotId, :SnapshotName, :IsPermanent, :Deadline
2053
+
2054
+ def initialize(snapshotid=nil, snapshotname=nil, ispermanent=nil, deadline=nil)
2055
+ @SnapshotId = snapshotid
2056
+ @SnapshotName = snapshotname
2057
+ @IsPermanent = ispermanent
2058
+ @Deadline = deadline
2059
+ end
2060
+
2061
+ def deserialize(params)
2062
+ @SnapshotId = params['SnapshotId']
2063
+ @SnapshotName = params['SnapshotName']
2064
+ @IsPermanent = params['IsPermanent']
2065
+ @Deadline = params['Deadline']
2066
+ end
2067
+ end
2068
+
2069
+ # ModifySnapshotAttribute返回参数结构体
2070
+ class ModifySnapshotAttributeResponse < TencentCloud::Common::AbstractModel
2071
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2072
+ # @type RequestId: String
2073
+
2074
+ attr_accessor :RequestId
2075
+
2076
+ def initialize(requestid=nil)
2077
+ @RequestId = requestid
2078
+ end
2079
+
2080
+ def deserialize(params)
2081
+ @RequestId = params['RequestId']
2082
+ end
2083
+ end
2084
+
2085
+ # ModifySnapshotsSharePermission请求参数结构体
2086
+ class ModifySnapshotsSharePermissionRequest < TencentCloud::Common::AbstractModel
2087
+ # @param AccountIds: 接收分享快照的账号Id列表,array型参数的格式可以参考[API简介](https://cloud.tencent.com/document/api/213/568)。帐号ID不同于QQ号,查询用户帐号ID请查看[帐号信息](https://console.cloud.tencent.com/developer)中的帐号ID栏。
2088
+ # @type AccountIds: Array
2089
+ # @param Permission: 操作,包括 SHARE,CANCEL。其中SHARE代表分享操作,CANCEL代表取消分享操作。
2090
+ # @type Permission: String
2091
+ # @param SnapshotIds: 快照ID, 可通过[DescribeSnapshots](https://cloud.tencent.com/document/api/362/15647)查询获取。
2092
+ # @type SnapshotIds: Array
2093
+
2094
+ attr_accessor :AccountIds, :Permission, :SnapshotIds
2095
+
2096
+ def initialize(accountids=nil, permission=nil, snapshotids=nil)
2097
+ @AccountIds = accountids
2098
+ @Permission = permission
2099
+ @SnapshotIds = snapshotids
2100
+ end
2101
+
2102
+ def deserialize(params)
2103
+ @AccountIds = params['AccountIds']
2104
+ @Permission = params['Permission']
2105
+ @SnapshotIds = params['SnapshotIds']
2106
+ end
2107
+ end
2108
+
2109
+ # ModifySnapshotsSharePermission返回参数结构体
2110
+ class ModifySnapshotsSharePermissionResponse < TencentCloud::Common::AbstractModel
2111
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2112
+ # @type RequestId: String
2113
+
2114
+ attr_accessor :RequestId
2115
+
2116
+ def initialize(requestid=nil)
2117
+ @RequestId = requestid
2118
+ end
2119
+
2120
+ def deserialize(params)
2121
+ @RequestId = params['RequestId']
2122
+ end
2123
+ end
2124
+
2125
+ # 描述了实例的抽象位置,包括其所在的可用区,所属的项目,以及所属的独享集群的ID和名字。
2126
+ class Placement < TencentCloud::Common::AbstractModel
2127
+ # @param Zone: 云硬盘所属的[可用区](/document/product/213/15753#ZoneInfo)。该参数也可以通过调用 [DescribeZones](/document/product/213/15707) 的返回值中的Zone字段来获取。
2128
+ # @type Zone: String
2129
+ # @param CageId: 围笼Id。作为入参时,表示对指定的CageId的资源进行操作,可为空。 作为出参时,表示资源所属围笼ID,可为空。
2130
+ # 注意:此字段可能返回 null,表示取不到有效值。
2131
+ # @type CageId: String
2132
+ # @param ProjectId: 实例所属项目ID。该参数可以通过调用 [DescribeProject](/document/api/378/4400) 的返回值中的 projectId 字段来获取。不填为默认项目。
2133
+ # @type ProjectId: Integer
2134
+ # @param CdcName: 独享集群名字。作为入参时,忽略。作为出参时,表示云硬盘所属的独享集群名,可为空。
2135
+ # 注意:此字段可能返回 null,表示取不到有效值。
2136
+ # @type CdcName: String
2137
+ # @param CdcId: 实例所属的独享集群ID。作为入参时,表示对指定的CdcId独享集群的资源进行操作,可为空。 作为出参时,表示资源所属的独享集群的ID,可为空。
2138
+ # 注意:此字段可能返回 null,表示取不到有效值。
2139
+ # @type CdcId: String
2140
+ # @param DedicatedClusterId: 独享集群id。
2141
+ # @type DedicatedClusterId: String
2142
+
2143
+ attr_accessor :Zone, :CageId, :ProjectId, :CdcName, :CdcId, :DedicatedClusterId
2144
+
2145
+ def initialize(zone=nil, cageid=nil, projectid=nil, cdcname=nil, cdcid=nil, dedicatedclusterid=nil)
2146
+ @Zone = zone
2147
+ @CageId = cageid
2148
+ @ProjectId = projectid
2149
+ @CdcName = cdcname
2150
+ @CdcId = cdcid
2151
+ @DedicatedClusterId = dedicatedclusterid
2152
+ end
2153
+
2154
+ def deserialize(params)
2155
+ @Zone = params['Zone']
2156
+ @CageId = params['CageId']
2157
+ @ProjectId = params['ProjectId']
2158
+ @CdcName = params['CdcName']
2159
+ @CdcId = params['CdcId']
2160
+ @DedicatedClusterId = params['DedicatedClusterId']
2161
+ end
2162
+ end
2163
+
2164
+ # 描述了定期快照的执行策略。可理解为在DayOfWeek指定的那几天中,在Hour指定的小时执行该条定期快照策略。
2165
+ class Policy < TencentCloud::Common::AbstractModel
2166
+ # @param DayOfWeek: 指定每周从周一到周日需要触发定期快照的日期,取值范围:[0, 6]。0表示周日触发,1-6分别表示周一至周六。
2167
+ # @type DayOfWeek: Array
2168
+ # @param Hour: 指定定期快照策略的触发时间。单位为小时,取值范围:[0, 23]。00:00 ~ 23:00 共 24 个时间点可选,1表示 01:00,依此类推。
2169
+ # @type Hour: Array
2170
+
2171
+ attr_accessor :DayOfWeek, :Hour
2172
+
2173
+ def initialize(dayofweek=nil, hour=nil)
2174
+ @DayOfWeek = dayofweek
2175
+ @Hour = hour
2176
+ end
2177
+
2178
+ def deserialize(params)
2179
+ @DayOfWeek = params['DayOfWeek']
2180
+ @Hour = params['Hour']
2181
+ end
2182
+ end
2183
+
2184
+ # 预付费订单的费用。
2185
+ class PrepayPrice < TencentCloud::Common::AbstractModel
2186
+ # @param OriginalPrice: 预付费云盘或快照预支费用的原价,单位:元。
2187
+ # 注意:此字段可能返回 null,表示取不到有效值。
2188
+ # @type OriginalPrice: Float
2189
+ # @param DiscountPrice: 预付费云盘或快照预支费用的折扣价,单位:元。
2190
+ # 注意:此字段可能返回 null,表示取不到有效值。
2191
+ # @type DiscountPrice: Float
2192
+ # @param OriginalPriceHigh: 高精度预付费云盘或快照预支费用的原价,单位:元
2193
+ # 注意:此字段可能返回 null,表示取不到有效值。
2194
+ # @type OriginalPriceHigh: String
2195
+ # @param DiscountPriceHigh: 高精度预付费云盘或快照预支费用的折扣价,单位:元
2196
+ # 注意:此字段可能返回 null,表示取不到有效值。
2197
+ # @type DiscountPriceHigh: String
2198
+ # @param UnitPrice: 后付费云盘原单价,单位:元。
2199
+ # 注意:此字段可能返回 null,表示取不到有效值。
2200
+ # @type UnitPrice: Float
2201
+ # @param ChargeUnit: 后付费云盘的计价单元,取值范围:<br><li>HOUR:表示后付费云盘的计价单元是按小时计算。
2202
+ # 注意:此字段可能返回 null,表示取不到有效值。
2203
+ # @type ChargeUnit: String
2204
+ # @param UnitPriceDiscount: 后付费云盘折扣单价,单位:元。
2205
+ # 注意:此字段可能返回 null,表示取不到有效值。
2206
+ # @type UnitPriceDiscount: Float
2207
+ # @param UnitPriceHigh: 高精度后付费云盘原单价, 单位:元
2208
+ # 注意:此字段可能返回 null,表示取不到有效值。
2209
+ # @type UnitPriceHigh: String
2210
+ # @param UnitPriceDiscountHigh: 高精度后付费云盘折扣单价, 单位:元
2211
+ # 注意:此字段可能返回 null,表示取不到有效值。
2212
+ # @type UnitPriceDiscountHigh: String
2213
+
2214
+ attr_accessor :OriginalPrice, :DiscountPrice, :OriginalPriceHigh, :DiscountPriceHigh, :UnitPrice, :ChargeUnit, :UnitPriceDiscount, :UnitPriceHigh, :UnitPriceDiscountHigh
2215
+
2216
+ def initialize(originalprice=nil, discountprice=nil, originalpricehigh=nil, discountpricehigh=nil, unitprice=nil, chargeunit=nil, unitpricediscount=nil, unitpricehigh=nil, unitpricediscounthigh=nil)
2217
+ @OriginalPrice = originalprice
2218
+ @DiscountPrice = discountprice
2219
+ @OriginalPriceHigh = originalpricehigh
2220
+ @DiscountPriceHigh = discountpricehigh
2221
+ @UnitPrice = unitprice
2222
+ @ChargeUnit = chargeunit
2223
+ @UnitPriceDiscount = unitpricediscount
2224
+ @UnitPriceHigh = unitpricehigh
2225
+ @UnitPriceDiscountHigh = unitpricediscounthigh
2226
+ end
2227
+
2228
+ def deserialize(params)
2229
+ @OriginalPrice = params['OriginalPrice']
2230
+ @DiscountPrice = params['DiscountPrice']
2231
+ @OriginalPriceHigh = params['OriginalPriceHigh']
2232
+ @DiscountPriceHigh = params['DiscountPriceHigh']
2233
+ @UnitPrice = params['UnitPrice']
2234
+ @ChargeUnit = params['ChargeUnit']
2235
+ @UnitPriceDiscount = params['UnitPriceDiscount']
2236
+ @UnitPriceHigh = params['UnitPriceHigh']
2237
+ @UnitPriceDiscountHigh = params['UnitPriceDiscountHigh']
2238
+ end
2239
+ end
2240
+
2241
+ # 描述预付费或后付费云盘的价格。
2242
+ class Price < TencentCloud::Common::AbstractModel
2243
+ # @param OriginalPrice: 预付费云盘预支费用的原价,单位:元。
2244
+ # 注意:此字段可能返回 null,表示取不到有效值。
2245
+ # @type OriginalPrice: Float
2246
+ # @param DiscountPrice: 预付费云盘预支费用的折扣价,单位:元。
2247
+ # 注意:此字段可能返回 null,表示取不到有效值。
2248
+ # @type DiscountPrice: Float
2249
+ # @param UnitPrice: 后付费云盘原单价,单位:元。
2250
+ # 注意:此字段可能返回 null,表示取不到有效值。
2251
+ # @type UnitPrice: Float
2252
+ # @param ChargeUnit: 后付费云盘的计价单元,取值范围:<br><li>HOUR:表示后付费云盘的计价单元是按小时计算。
2253
+ # 注意:此字段可能返回 null,表示取不到有效值。
2254
+ # @type ChargeUnit: String
2255
+ # @param UnitPriceDiscount: 后付费云盘折扣单价,单位:元。
2256
+ # 注意:此字段可能返回 null,表示取不到有效值。
2257
+ # @type UnitPriceDiscount: Float
2258
+ # @param OriginalPriceHigh: 高精度预付费云盘预支费用的原价, 单位:元 。
2259
+ # 注意:此字段可能返回 null,表示取不到有效值。
2260
+ # @type OriginalPriceHigh: String
2261
+ # @param DiscountPriceHigh: 高精度预付费云盘预支费用的折扣价, 单位:元
2262
+ # 注意:此字段可能返回 null,表示取不到有效值。
2263
+ # @type DiscountPriceHigh: String
2264
+ # @param UnitPriceHigh: 高精度后付费云盘原单价, 单位:元
2265
+ # 注意:此字段可能返回 null,表示取不到有效值。
2266
+ # @type UnitPriceHigh: String
2267
+ # @param UnitPriceDiscountHigh: 高精度后付费云盘折扣单价, 单位:元
2268
+ # 注意:此字段可能返回 null,表示取不到有效值。
2269
+ # @type UnitPriceDiscountHigh: String
2270
+
2271
+ attr_accessor :OriginalPrice, :DiscountPrice, :UnitPrice, :ChargeUnit, :UnitPriceDiscount, :OriginalPriceHigh, :DiscountPriceHigh, :UnitPriceHigh, :UnitPriceDiscountHigh
2272
+
2273
+ def initialize(originalprice=nil, discountprice=nil, unitprice=nil, chargeunit=nil, unitpricediscount=nil, originalpricehigh=nil, discountpricehigh=nil, unitpricehigh=nil, unitpricediscounthigh=nil)
2274
+ @OriginalPrice = originalprice
2275
+ @DiscountPrice = discountprice
2276
+ @UnitPrice = unitprice
2277
+ @ChargeUnit = chargeunit
2278
+ @UnitPriceDiscount = unitpricediscount
2279
+ @OriginalPriceHigh = originalpricehigh
2280
+ @DiscountPriceHigh = discountpricehigh
2281
+ @UnitPriceHigh = unitpricehigh
2282
+ @UnitPriceDiscountHigh = unitpricediscounthigh
2283
+ end
2284
+
2285
+ def deserialize(params)
2286
+ @OriginalPrice = params['OriginalPrice']
2287
+ @DiscountPrice = params['DiscountPrice']
2288
+ @UnitPrice = params['UnitPrice']
2289
+ @ChargeUnit = params['ChargeUnit']
2290
+ @UnitPriceDiscount = params['UnitPriceDiscount']
2291
+ @OriginalPriceHigh = params['OriginalPriceHigh']
2292
+ @DiscountPriceHigh = params['DiscountPriceHigh']
2293
+ @UnitPriceHigh = params['UnitPriceHigh']
2294
+ @UnitPriceDiscountHigh = params['UnitPriceDiscountHigh']
2295
+ end
2296
+ end
2297
+
2298
+ # RenewDisk请求参数结构体
2299
+ class RenewDiskRequest < TencentCloud::Common::AbstractModel
2300
+ # @param DiskChargePrepaid: 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月云盘的续费时长。<br>在云盘与挂载的实例一起续费的场景下,可以指定参数CurInstanceDeadline,此时云盘会按对齐到实例续费后的到期时间来续费。
2301
+ # @type DiskChargePrepaid: :class:`Tencentcloud::Cbs.v20170312.models.DiskChargePrepaid`
2302
+ # @param DiskId: 云硬盘ID, 通过[DescribeDisks](/document/product/362/16315)接口查询。
2303
+ # @type DiskId: String
2304
+
2305
+ attr_accessor :DiskChargePrepaid, :DiskId
2306
+
2307
+ def initialize(diskchargeprepaid=nil, diskid=nil)
2308
+ @DiskChargePrepaid = diskchargeprepaid
2309
+ @DiskId = diskid
2310
+ end
2311
+
2312
+ def deserialize(params)
2313
+ unless params['DiskChargePrepaid'].nil?
2314
+ @DiskChargePrepaid = DiskChargePrepaid.new
2315
+ @DiskChargePrepaid.deserialize(params['DiskChargePrepaid'])
2316
+ end
2317
+ @DiskId = params['DiskId']
2318
+ end
2319
+ end
2320
+
2321
+ # RenewDisk返回参数结构体
2322
+ class RenewDiskResponse < TencentCloud::Common::AbstractModel
2323
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2324
+ # @type RequestId: String
2325
+
2326
+ attr_accessor :RequestId
2327
+
2328
+ def initialize(requestid=nil)
2329
+ @RequestId = requestid
2330
+ end
2331
+
2332
+ def deserialize(params)
2333
+ @RequestId = params['RequestId']
2334
+ end
2335
+ end
2336
+
2337
+ # ResizeDisk请求参数结构体
2338
+ class ResizeDiskRequest < TencentCloud::Common::AbstractModel
2339
+ # @param DiskId: 云硬盘ID, 通过[DescribeDisks](/document/product/362/16315)接口查询。
2340
+ # @type DiskId: String
2341
+ # @param DiskSize: 云硬盘扩容后的大小,单位为GB,必须大于当前云硬盘大小。云盘大小取值范围参见云硬盘[产品分类](/document/product/362/2353)的说明。
2342
+ # @type DiskSize: Integer
2343
+
2344
+ attr_accessor :DiskId, :DiskSize
2345
+
2346
+ def initialize(diskid=nil, disksize=nil)
2347
+ @DiskId = diskid
2348
+ @DiskSize = disksize
2349
+ end
2350
+
2351
+ def deserialize(params)
2352
+ @DiskId = params['DiskId']
2353
+ @DiskSize = params['DiskSize']
2354
+ end
2355
+ end
2356
+
2357
+ # ResizeDisk返回参数结构体
2358
+ class ResizeDiskResponse < TencentCloud::Common::AbstractModel
2359
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2360
+ # @type RequestId: String
2361
+
2362
+ attr_accessor :RequestId
2363
+
2364
+ def initialize(requestid=nil)
2365
+ @RequestId = requestid
2366
+ end
2367
+
2368
+ def deserialize(params)
2369
+ @RequestId = params['RequestId']
2370
+ end
2371
+ end
2372
+
2373
+ # 快照分享信息集合
2374
+ class SharePermission < TencentCloud::Common::AbstractModel
2375
+ # @param CreatedTime: 快照分享的时间
2376
+ # @type CreatedTime: String
2377
+ # @param AccountId: 分享的账号Id
2378
+ # @type AccountId: String
2379
+
2380
+ attr_accessor :CreatedTime, :AccountId
2381
+
2382
+ def initialize(createdtime=nil, accountid=nil)
2383
+ @CreatedTime = createdtime
2384
+ @AccountId = accountid
2385
+ end
2386
+
2387
+ def deserialize(params)
2388
+ @CreatedTime = params['CreatedTime']
2389
+ @AccountId = params['AccountId']
2390
+ end
2391
+ end
2392
+
2393
+ # 描述了快照的详细信息
2394
+ class Snapshot < TencentCloud::Common::AbstractModel
2395
+ # @param Placement: 快照所在的位置。
2396
+ # @type Placement: :class:`Tencentcloud::Cbs.v20170312.models.Placement`
2397
+ # @param CopyFromRemote: 是否为跨地域复制的快照。取值范围:<br><li>true:表示为跨地域复制的快照。<br><li>false:本地域的快照。
2398
+ # @type CopyFromRemote: Boolean
2399
+ # @param SnapshotState: 快照的状态。取值范围:<br><li>NORMAL:正常<br><li>CREATING:创建中<br><li>ROLLBACKING:回滚中<br><li>COPYING_FROM_REMOTE:跨地域复制中<br><li>CHECKING_COPIED:复制校验中<br><li>TORECYCLE:待回收。
2400
+ # @type SnapshotState: String
2401
+ # @param IsPermanent: 是否为永久快照。取值范围:<br><li>true:永久快照<br><li>false:非永久快照。
2402
+ # @type IsPermanent: Boolean
2403
+ # @param SnapshotName: 快照名称,用户自定义的快照别名。调用[ModifySnapshotAttribute](/document/product/362/15650)可修改此字段。
2404
+ # @type SnapshotName: String
2405
+ # @param DeadlineTime: 快照到期时间。如果快照为永久保留,此字段为空。
2406
+ # @type DeadlineTime: String
2407
+ # @param Percent: 快照创建进度百分比,快照创建成功后此字段恒为100。
2408
+ # @type Percent: Integer
2409
+ # @param Images: 快照关联的镜像列表。
2410
+ # @type Images: Array
2411
+ # @param ShareReference: 快照当前被共享数。
2412
+ # @type ShareReference: Integer
2413
+ # @param SnapshotType: 快照类型,目前该项取值可以为PRIVATE_SNAPSHOT或者SHARED_SNAPSHOT
2414
+ # @type SnapshotType: String
2415
+ # @param DiskSize: 创建此快照的云硬盘大小,单位GB。
2416
+ # @type DiskSize: Integer
2417
+ # @param DiskId: 创建此快照的云硬盘ID。
2418
+ # @type DiskId: String
2419
+ # @param CopyingToRegions: 快照正在跨地域复制的目的地域,默认取值为[]。
2420
+ # @type CopyingToRegions: Array
2421
+ # @param Encrypt: 是否为加密盘创建的快照。取值范围:<br><li>true:该快照为加密盘创建的<br><li>false:非加密盘创建的快照。
2422
+ # @type Encrypt: Boolean
2423
+ # @param CreateTime: 快照的创建时间。
2424
+ # @type CreateTime: String
2425
+ # @param ImageCount: 快照关联的镜像个数。
2426
+ # @type ImageCount: Integer
2427
+ # @param DiskUsage: 创建此快照的云硬盘类型。取值范围:<br><li>SYSTEM_DISK:系统盘<br><li>DATA_DISK:数据盘。
2428
+ # @type DiskUsage: String
2429
+ # @param SnapshotId: 快照ID。
2430
+ # @type SnapshotId: String
2431
+ # @param TimeStartShare: 快照开始共享的时间。
2432
+ # @type TimeStartShare: String
2433
+
2434
+ attr_accessor :Placement, :CopyFromRemote, :SnapshotState, :IsPermanent, :SnapshotName, :DeadlineTime, :Percent, :Images, :ShareReference, :SnapshotType, :DiskSize, :DiskId, :CopyingToRegions, :Encrypt, :CreateTime, :ImageCount, :DiskUsage, :SnapshotId, :TimeStartShare
2435
+
2436
+ def initialize(placement=nil, copyfromremote=nil, snapshotstate=nil, ispermanent=nil, snapshotname=nil, deadlinetime=nil, percent=nil, images=nil, sharereference=nil, snapshottype=nil, disksize=nil, diskid=nil, copyingtoregions=nil, encrypt=nil, createtime=nil, imagecount=nil, diskusage=nil, snapshotid=nil, timestartshare=nil)
2437
+ @Placement = placement
2438
+ @CopyFromRemote = copyfromremote
2439
+ @SnapshotState = snapshotstate
2440
+ @IsPermanent = ispermanent
2441
+ @SnapshotName = snapshotname
2442
+ @DeadlineTime = deadlinetime
2443
+ @Percent = percent
2444
+ @Images = images
2445
+ @ShareReference = sharereference
2446
+ @SnapshotType = snapshottype
2447
+ @DiskSize = disksize
2448
+ @DiskId = diskid
2449
+ @CopyingToRegions = copyingtoregions
2450
+ @Encrypt = encrypt
2451
+ @CreateTime = createtime
2452
+ @ImageCount = imagecount
2453
+ @DiskUsage = diskusage
2454
+ @SnapshotId = snapshotid
2455
+ @TimeStartShare = timestartshare
2456
+ end
2457
+
2458
+ def deserialize(params)
2459
+ unless params['Placement'].nil?
2460
+ @Placement = Placement.new
2461
+ @Placement.deserialize(params['Placement'])
2462
+ end
2463
+ @CopyFromRemote = params['CopyFromRemote']
2464
+ @SnapshotState = params['SnapshotState']
2465
+ @IsPermanent = params['IsPermanent']
2466
+ @SnapshotName = params['SnapshotName']
2467
+ @DeadlineTime = params['DeadlineTime']
2468
+ @Percent = params['Percent']
2469
+ unless params['Images'].nil?
2470
+ @Images = []
2471
+ params['Images'].each do |i|
2472
+ image_tmp = Image.new
2473
+ image_tmp.deserialize(i)
2474
+ @Images << image_tmp
2475
+ end
2476
+ end
2477
+ @ShareReference = params['ShareReference']
2478
+ @SnapshotType = params['SnapshotType']
2479
+ @DiskSize = params['DiskSize']
2480
+ @DiskId = params['DiskId']
2481
+ @CopyingToRegions = params['CopyingToRegions']
2482
+ @Encrypt = params['Encrypt']
2483
+ @CreateTime = params['CreateTime']
2484
+ @ImageCount = params['ImageCount']
2485
+ @DiskUsage = params['DiskUsage']
2486
+ @SnapshotId = params['SnapshotId']
2487
+ @TimeStartShare = params['TimeStartShare']
2488
+ end
2489
+ end
2490
+
2491
+ # 快照操作日志。
2492
+ class SnapshotOperationLog < TencentCloud::Common::AbstractModel
2493
+ # @param Operator: 操作者的UIN。
2494
+ # 注意:此字段可能返回 null,表示取不到有效值。
2495
+ # @type Operator: String
2496
+ # @param Operation: 操作类型。取值范围:
2497
+ # SNAP_OPERATION_DELETE:删除快照
2498
+ # SNAP_OPERATION_ROLLBACK:回滚快照
2499
+ # SNAP_OPERATION_MODIFY:修改快照属性
2500
+ # SNAP_OPERATION_CREATE:创建快照
2501
+ # SNAP_OPERATION_COPY:跨地域复制快照
2502
+ # ASP_OPERATION_CREATE_SNAP:由定期快照策略创建快照
2503
+ # ASP_OPERATION_DELETE_SNAP:由定期快照策略删除快照
2504
+ # @type Operation: String
2505
+ # @param SnapshotId: 操作的快照ID。
2506
+ # @type SnapshotId: String
2507
+ # @param OperationState: 操作的状态。取值范围:
2508
+ # SUCCESS :表示操作成功
2509
+ # FAILED :表示操作失败
2510
+ # PROCESSING :表示操作中。
2511
+ # @type OperationState: String
2512
+ # @param StartTime: 开始时间。
2513
+ # @type StartTime: String
2514
+ # @param EndTime: 结束时间。
2515
+ # @type EndTime: String
2516
+
2517
+ attr_accessor :Operator, :Operation, :SnapshotId, :OperationState, :StartTime, :EndTime
2518
+
2519
+ def initialize(operator=nil, operation=nil, snapshotid=nil, operationstate=nil, starttime=nil, endtime=nil)
2520
+ @Operator = operator
2521
+ @Operation = operation
2522
+ @SnapshotId = snapshotid
2523
+ @OperationState = operationstate
2524
+ @StartTime = starttime
2525
+ @EndTime = endtime
2526
+ end
2527
+
2528
+ def deserialize(params)
2529
+ @Operator = params['Operator']
2530
+ @Operation = params['Operation']
2531
+ @SnapshotId = params['SnapshotId']
2532
+ @OperationState = params['OperationState']
2533
+ @StartTime = params['StartTime']
2534
+ @EndTime = params['EndTime']
2535
+ end
2536
+ end
2537
+
2538
+ # 标签。
2539
+ class Tag < TencentCloud::Common::AbstractModel
2540
+ # @param Key: 标签健。
2541
+ # @type Key: String
2542
+ # @param Value: 标签值。
2543
+ # @type Value: String
2544
+
2545
+ attr_accessor :Key, :Value
2546
+
2547
+ def initialize(key=nil, value=nil)
2548
+ @Key = key
2549
+ @Value = value
2550
+ end
2551
+
2552
+ def deserialize(params)
2553
+ @Key = params['Key']
2554
+ @Value = params['Value']
2555
+ end
2556
+ end
2557
+
2558
+ # TerminateDisks请求参数结构体
2559
+ class TerminateDisksRequest < TencentCloud::Common::AbstractModel
2560
+ # @param DiskIds: 需退还的云盘ID列表。
2561
+ # @type DiskIds: Array
2562
+
2563
+ attr_accessor :DiskIds
2564
+
2565
+ def initialize(diskids=nil)
2566
+ @DiskIds = diskids
2567
+ end
2568
+
2569
+ def deserialize(params)
2570
+ @DiskIds = params['DiskIds']
2571
+ end
2572
+ end
2573
+
2574
+ # TerminateDisks返回参数结构体
2575
+ class TerminateDisksResponse < TencentCloud::Common::AbstractModel
2576
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2577
+ # @type RequestId: String
2578
+
2579
+ attr_accessor :RequestId
2580
+
2581
+ def initialize(requestid=nil)
2582
+ @RequestId = requestid
2583
+ end
2584
+
2585
+ def deserialize(params)
2586
+ @RequestId = params['RequestId']
2587
+ end
2588
+ end
2589
+
2590
+ # UnbindAutoSnapshotPolicy请求参数结构体
2591
+ class UnbindAutoSnapshotPolicyRequest < TencentCloud::Common::AbstractModel
2592
+ # @param DiskIds: 要解绑定期快照策略的云盘ID列表。
2593
+ # @type DiskIds: Array
2594
+ # @param AutoSnapshotPolicyId: 要解绑的定期快照策略ID。
2595
+ # @type AutoSnapshotPolicyId: String
2596
+
2597
+ attr_accessor :DiskIds, :AutoSnapshotPolicyId
2598
+
2599
+ def initialize(diskids=nil, autosnapshotpolicyid=nil)
2600
+ @DiskIds = diskids
2601
+ @AutoSnapshotPolicyId = autosnapshotpolicyid
2602
+ end
2603
+
2604
+ def deserialize(params)
2605
+ @DiskIds = params['DiskIds']
2606
+ @AutoSnapshotPolicyId = params['AutoSnapshotPolicyId']
2607
+ end
2608
+ end
2609
+
2610
+ # UnbindAutoSnapshotPolicy返回参数结构体
2611
+ class UnbindAutoSnapshotPolicyResponse < TencentCloud::Common::AbstractModel
2612
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2613
+ # @type RequestId: String
2614
+
2615
+ attr_accessor :RequestId
2616
+
2617
+ def initialize(requestid=nil)
2618
+ @RequestId = requestid
2619
+ end
2620
+
2621
+ def deserialize(params)
2622
+ @RequestId = params['RequestId']
2623
+ end
2624
+ end
2625
+
2626
+ end
2627
+ end
2628
+ end
2629
+