aws-sdk-ebs 1.2.0 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -25,7 +27,13 @@ module Aws::EBS
25
27
  # See {Seahorse::Client::RequestContext} for more information.
26
28
  #
27
29
  # ## Error Classes
30
+ # * {AccessDeniedException}
31
+ # * {ConcurrentLimitExceededException}
32
+ # * {ConflictException}
33
+ # * {InternalServerException}
34
+ # * {RequestThrottledException}
28
35
  # * {ResourceNotFoundException}
36
+ # * {ServiceQuotaExceededException}
29
37
  # * {ValidationException}
30
38
  #
31
39
  # Additionally, error classes are dynamically generated for service errors based on the error code
@@ -34,6 +42,91 @@ module Aws::EBS
34
42
 
35
43
  extend Aws::Errors::DynamicErrors
36
44
 
45
+ class AccessDeniedException < ServiceError
46
+
47
+ # @param [Seahorse::Client::RequestContext] context
48
+ # @param [String] message
49
+ # @param [Aws::EBS::Types::AccessDeniedException] data
50
+ def initialize(context, message, data = Aws::EmptyStructure.new)
51
+ super(context, message, data)
52
+ end
53
+
54
+ # @return [String]
55
+ def message
56
+ @message || @data[:message]
57
+ end
58
+
59
+ # @return [String]
60
+ def reason
61
+ @data[:reason]
62
+ end
63
+ end
64
+
65
+ class ConcurrentLimitExceededException < ServiceError
66
+
67
+ # @param [Seahorse::Client::RequestContext] context
68
+ # @param [String] message
69
+ # @param [Aws::EBS::Types::ConcurrentLimitExceededException] data
70
+ def initialize(context, message, data = Aws::EmptyStructure.new)
71
+ super(context, message, data)
72
+ end
73
+
74
+ # @return [String]
75
+ def message
76
+ @message || @data[:message]
77
+ end
78
+ end
79
+
80
+ class ConflictException < ServiceError
81
+
82
+ # @param [Seahorse::Client::RequestContext] context
83
+ # @param [String] message
84
+ # @param [Aws::EBS::Types::ConflictException] data
85
+ def initialize(context, message, data = Aws::EmptyStructure.new)
86
+ super(context, message, data)
87
+ end
88
+
89
+ # @return [String]
90
+ def message
91
+ @message || @data[:message]
92
+ end
93
+ end
94
+
95
+ class InternalServerException < ServiceError
96
+
97
+ # @param [Seahorse::Client::RequestContext] context
98
+ # @param [String] message
99
+ # @param [Aws::EBS::Types::InternalServerException] data
100
+ def initialize(context, message, data = Aws::EmptyStructure.new)
101
+ super(context, message, data)
102
+ end
103
+
104
+ # @return [String]
105
+ def message
106
+ @message || @data[:message]
107
+ end
108
+ end
109
+
110
+ class RequestThrottledException < ServiceError
111
+
112
+ # @param [Seahorse::Client::RequestContext] context
113
+ # @param [String] message
114
+ # @param [Aws::EBS::Types::RequestThrottledException] data
115
+ def initialize(context, message, data = Aws::EmptyStructure.new)
116
+ super(context, message, data)
117
+ end
118
+
119
+ # @return [String]
120
+ def message
121
+ @message || @data[:message]
122
+ end
123
+
124
+ # @return [String]
125
+ def reason
126
+ @data[:reason]
127
+ end
128
+ end
129
+
37
130
  class ResourceNotFoundException < ServiceError
38
131
 
39
132
  # @param [Seahorse::Client::RequestContext] context
@@ -47,6 +140,31 @@ module Aws::EBS
47
140
  def message
48
141
  @message || @data[:message]
49
142
  end
143
+
144
+ # @return [String]
145
+ def reason
146
+ @data[:reason]
147
+ end
148
+ end
149
+
150
+ class ServiceQuotaExceededException < ServiceError
151
+
152
+ # @param [Seahorse::Client::RequestContext] context
153
+ # @param [String] message
154
+ # @param [Aws::EBS::Types::ServiceQuotaExceededException] data
155
+ def initialize(context, message, data = Aws::EmptyStructure.new)
156
+ super(context, message, data)
157
+ end
158
+
159
+ # @return [String]
160
+ def message
161
+ @message || @data[:message]
162
+ end
163
+
164
+ # @return [String]
165
+ def reason
166
+ @data[:reason]
167
+ end
50
168
  end
51
169
 
52
170
  class ValidationException < ServiceError
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -6,13 +8,7 @@
6
8
  # WARNING ABOUT GENERATED CODE
7
9
 
8
10
  module Aws::EBS
9
- # This class provides a resource oriented interface for EBS.
10
- # To create a resource object:
11
- # resource = Aws::EBS::Resource.new(region: 'us-west-2')
12
- # You can supply a client object with custom configuration that will be used for all resource operations.
13
- # If you do not pass +:client+, a default client will be constructed.
14
- # client = Aws::EBS::Client.new(region: 'us-west-2')
15
- # resource = Aws::EBS::Resource.new(client: client)
11
+
16
12
  class Resource
17
13
 
18
14
  # @param options ({})
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -8,6 +10,24 @@
8
10
  module Aws::EBS
9
11
  module Types
10
12
 
13
+ # You do not have sufficient access to perform this action.
14
+ #
15
+ # @!attribute [rw] message
16
+ # @return [String]
17
+ #
18
+ # @!attribute [rw] reason
19
+ # The reason for the exception.
20
+ # @return [String]
21
+ #
22
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/AccessDeniedException AWS API Documentation
23
+ #
24
+ class AccessDeniedException < Struct.new(
25
+ :message,
26
+ :reason)
27
+ SENSITIVE = []
28
+ include Aws::Structure
29
+ end
30
+
11
31
  # A block of data in an Amazon Elastic Block Store snapshot.
12
32
  #
13
33
  # @!attribute [rw] block_index
@@ -23,6 +43,7 @@ module Aws::EBS
23
43
  class Block < Struct.new(
24
44
  :block_index,
25
45
  :block_token)
46
+ SENSITIVE = []
26
47
  include Aws::Structure
27
48
  end
28
49
 
@@ -51,6 +72,104 @@ module Aws::EBS
51
72
  :block_index,
52
73
  :first_block_token,
53
74
  :second_block_token)
75
+ SENSITIVE = []
76
+ include Aws::Structure
77
+ end
78
+
79
+ # @note When making an API call, you may pass CompleteSnapshotRequest
80
+ # data as a hash:
81
+ #
82
+ # {
83
+ # snapshot_id: "SnapshotId", # required
84
+ # changed_blocks_count: 1, # required
85
+ # checksum: "Checksum",
86
+ # checksum_algorithm: "SHA256", # accepts SHA256
87
+ # checksum_aggregation_method: "LINEAR", # accepts LINEAR
88
+ # }
89
+ #
90
+ # @!attribute [rw] snapshot_id
91
+ # The ID of the snapshot.
92
+ # @return [String]
93
+ #
94
+ # @!attribute [rw] changed_blocks_count
95
+ # The number of blocks that were written to the snapshot.
96
+ # @return [Integer]
97
+ #
98
+ # @!attribute [rw] checksum
99
+ # An aggregated Base-64 SHA256 checksum based on the checksums of each
100
+ # written block.
101
+ #
102
+ # To generate the aggregated checksum using the linear aggregation
103
+ # method, arrange the checksums for each written block in ascending
104
+ # order of their block index, concatenate them to form a single
105
+ # string, and then generate the checksum on the entire string using
106
+ # the SHA256 algorithm.
107
+ # @return [String]
108
+ #
109
+ # @!attribute [rw] checksum_algorithm
110
+ # The algorithm used to generate the checksum. Currently, the only
111
+ # supported algorithm is `SHA256`.
112
+ # @return [String]
113
+ #
114
+ # @!attribute [rw] checksum_aggregation_method
115
+ # The aggregation method used to generate the checksum. Currently, the
116
+ # only supported aggregation method is `LINEAR`.
117
+ # @return [String]
118
+ #
119
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/CompleteSnapshotRequest AWS API Documentation
120
+ #
121
+ class CompleteSnapshotRequest < Struct.new(
122
+ :snapshot_id,
123
+ :changed_blocks_count,
124
+ :checksum,
125
+ :checksum_algorithm,
126
+ :checksum_aggregation_method)
127
+ SENSITIVE = []
128
+ include Aws::Structure
129
+ end
130
+
131
+ # @!attribute [rw] status
132
+ # The status of the snapshot.
133
+ # @return [String]
134
+ #
135
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/CompleteSnapshotResponse AWS API Documentation
136
+ #
137
+ class CompleteSnapshotResponse < Struct.new(
138
+ :status)
139
+ SENSITIVE = []
140
+ include Aws::Structure
141
+ end
142
+
143
+ # You have reached the limit for concurrent API requests. For more
144
+ # information, see [Optimizing performance of the EBS direct APIs][1] in
145
+ # the *Amazon Elastic Compute Cloud User Guide*.
146
+ #
147
+ #
148
+ #
149
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapi-performance
150
+ #
151
+ # @!attribute [rw] message
152
+ # @return [String]
153
+ #
154
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/ConcurrentLimitExceededException AWS API Documentation
155
+ #
156
+ class ConcurrentLimitExceededException < Struct.new(
157
+ :message)
158
+ SENSITIVE = []
159
+ include Aws::Structure
160
+ end
161
+
162
+ # The request uses the same client token as a previous, but
163
+ # non-identical request.
164
+ #
165
+ # @!attribute [rw] message
166
+ # @return [String]
167
+ #
168
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/ConflictException AWS API Documentation
169
+ #
170
+ class ConflictException < Struct.new(
171
+ :message)
172
+ SENSITIVE = []
54
173
  include Aws::Structure
55
174
  end
56
175
 
@@ -87,6 +206,7 @@ module Aws::EBS
87
206
  :snapshot_id,
88
207
  :block_index,
89
208
  :block_token)
209
+ SENSITIVE = []
90
210
  include Aws::Structure
91
211
  end
92
212
 
@@ -114,6 +234,20 @@ module Aws::EBS
114
234
  :block_data,
115
235
  :checksum,
116
236
  :checksum_algorithm)
237
+ SENSITIVE = [:block_data]
238
+ include Aws::Structure
239
+ end
240
+
241
+ # An internal error has occurred.
242
+ #
243
+ # @!attribute [rw] message
244
+ # @return [String]
245
+ #
246
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/InternalServerException AWS API Documentation
247
+ #
248
+ class InternalServerException < Struct.new(
249
+ :message)
250
+ SENSITIVE = []
117
251
  include Aws::Structure
118
252
  end
119
253
 
@@ -165,6 +299,7 @@ module Aws::EBS
165
299
  :next_token,
166
300
  :max_results,
167
301
  :starting_block_index)
302
+ SENSITIVE = []
168
303
  include Aws::Structure
169
304
  end
170
305
 
@@ -197,6 +332,7 @@ module Aws::EBS
197
332
  :volume_size,
198
333
  :block_size,
199
334
  :next_token)
335
+ SENSITIVE = []
200
336
  include Aws::Structure
201
337
  end
202
338
 
@@ -236,6 +372,7 @@ module Aws::EBS
236
372
  :next_token,
237
373
  :max_results,
238
374
  :starting_block_index)
375
+ SENSITIVE = []
239
376
  include Aws::Structure
240
377
  end
241
378
 
@@ -268,6 +405,123 @@ module Aws::EBS
268
405
  :volume_size,
269
406
  :block_size,
270
407
  :next_token)
408
+ SENSITIVE = [:blocks]
409
+ include Aws::Structure
410
+ end
411
+
412
+ # @note When making an API call, you may pass PutSnapshotBlockRequest
413
+ # data as a hash:
414
+ #
415
+ # {
416
+ # snapshot_id: "SnapshotId", # required
417
+ # block_index: 1, # required
418
+ # block_data: "data", # required
419
+ # data_length: 1, # required
420
+ # progress: 1,
421
+ # checksum: "Checksum", # required
422
+ # checksum_algorithm: "SHA256", # required, accepts SHA256
423
+ # }
424
+ #
425
+ # @!attribute [rw] snapshot_id
426
+ # The ID of the snapshot.
427
+ # @return [String]
428
+ #
429
+ # @!attribute [rw] block_index
430
+ # The block index of the block in which to write the data. A block
431
+ # index is the offset position of a block within a snapshot, and it is
432
+ # used to identify the block. To identify the logical offset of the
433
+ # data in the logical volume, multiply the block index with the block
434
+ # size (Block index * 512 bytes).
435
+ # @return [Integer]
436
+ #
437
+ # @!attribute [rw] block_data
438
+ # The data to write to the block.
439
+ #
440
+ # The block data is not signed as part of the Signature Version 4
441
+ # signing process. As a result, you must generate and provide a
442
+ # Base64-encoded SHA256 checksum for the block data using the
443
+ # **x-amz-Checksum** header. Also, you must specify the checksum
444
+ # algorithm using the **x-amz-Checksum-Algorithm** header. The
445
+ # checksum that you provide is part of the Signature Version 4 signing
446
+ # process. It is validated against a checksum generated by Amazon EBS
447
+ # to ensure the validity and authenticity of the data. If the
448
+ # checksums do not correspond, the request fails. For more
449
+ # information, see [ Using checksums with the EBS direct APIs][1] in
450
+ # the *Amazon Elastic Compute Cloud User Guide*.
451
+ #
452
+ #
453
+ #
454
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapis-using-checksums
455
+ # @return [IO]
456
+ #
457
+ # @!attribute [rw] data_length
458
+ # The size of the data to write to the block, in bytes. Currently, the
459
+ # only supported size is `524288`.
460
+ #
461
+ # Valid values: `524288`
462
+ # @return [Integer]
463
+ #
464
+ # @!attribute [rw] progress
465
+ # The progress of the write process, as a percentage.
466
+ # @return [Integer]
467
+ #
468
+ # @!attribute [rw] checksum
469
+ # A Base64-encoded SHA256 checksum of the data. Only SHA256 checksums
470
+ # are supported.
471
+ # @return [String]
472
+ #
473
+ # @!attribute [rw] checksum_algorithm
474
+ # The algorithm used to generate the checksum. Currently, the only
475
+ # supported algorithm is `SHA256`.
476
+ # @return [String]
477
+ #
478
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/PutSnapshotBlockRequest AWS API Documentation
479
+ #
480
+ class PutSnapshotBlockRequest < Struct.new(
481
+ :snapshot_id,
482
+ :block_index,
483
+ :block_data,
484
+ :data_length,
485
+ :progress,
486
+ :checksum,
487
+ :checksum_algorithm)
488
+ SENSITIVE = [:block_data]
489
+ include Aws::Structure
490
+ end
491
+
492
+ # @!attribute [rw] checksum
493
+ # The SHA256 checksum generated for the block data by Amazon EBS.
494
+ # @return [String]
495
+ #
496
+ # @!attribute [rw] checksum_algorithm
497
+ # The algorithm used by Amazon EBS to generate the checksum.
498
+ # @return [String]
499
+ #
500
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/PutSnapshotBlockResponse AWS API Documentation
501
+ #
502
+ class PutSnapshotBlockResponse < Struct.new(
503
+ :checksum,
504
+ :checksum_algorithm)
505
+ SENSITIVE = []
506
+ include Aws::Structure
507
+ end
508
+
509
+ # The number of API requests has exceed the maximum allowed API request
510
+ # throttling limit.
511
+ #
512
+ # @!attribute [rw] message
513
+ # @return [String]
514
+ #
515
+ # @!attribute [rw] reason
516
+ # The reason for the exception.
517
+ # @return [String]
518
+ #
519
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/RequestThrottledException AWS API Documentation
520
+ #
521
+ class RequestThrottledException < Struct.new(
522
+ :message,
523
+ :reason)
524
+ SENSITIVE = []
271
525
  include Aws::Structure
272
526
  end
273
527
 
@@ -276,10 +530,261 @@ module Aws::EBS
276
530
  # @!attribute [rw] message
277
531
  # @return [String]
278
532
  #
533
+ # @!attribute [rw] reason
534
+ # The reason for the exception.
535
+ # @return [String]
536
+ #
279
537
  # @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/ResourceNotFoundException AWS API Documentation
280
538
  #
281
539
  class ResourceNotFoundException < Struct.new(
282
- :message)
540
+ :message,
541
+ :reason)
542
+ SENSITIVE = []
543
+ include Aws::Structure
544
+ end
545
+
546
+ # Your current service quotas do not allow you to perform this action.
547
+ #
548
+ # @!attribute [rw] message
549
+ # @return [String]
550
+ #
551
+ # @!attribute [rw] reason
552
+ # The reason for the exception.
553
+ # @return [String]
554
+ #
555
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/ServiceQuotaExceededException AWS API Documentation
556
+ #
557
+ class ServiceQuotaExceededException < Struct.new(
558
+ :message,
559
+ :reason)
560
+ SENSITIVE = []
561
+ include Aws::Structure
562
+ end
563
+
564
+ # @note When making an API call, you may pass StartSnapshotRequest
565
+ # data as a hash:
566
+ #
567
+ # {
568
+ # volume_size: 1, # required
569
+ # parent_snapshot_id: "SnapshotId",
570
+ # tags: [
571
+ # {
572
+ # key: "TagKey",
573
+ # value: "TagValue",
574
+ # },
575
+ # ],
576
+ # description: "Description",
577
+ # client_token: "IdempotencyToken",
578
+ # encrypted: false,
579
+ # kms_key_arn: "KmsKeyArn",
580
+ # timeout: 1,
581
+ # }
582
+ #
583
+ # @!attribute [rw] volume_size
584
+ # The size of the volume, in GiB. The maximum size is `16384` GiB (16
585
+ # TiB).
586
+ # @return [Integer]
587
+ #
588
+ # @!attribute [rw] parent_snapshot_id
589
+ # The ID of the parent snapshot. If there is no parent snapshot, or if
590
+ # you are creating the first snapshot for an on-premises volume, omit
591
+ # this parameter.
592
+ #
593
+ # If your account is enabled for encryption by default, you cannot use
594
+ # an unencrypted snapshot as a parent snapshot. You must first create
595
+ # an encrypted copy of the parent snapshot using [CopySnapshot][1].
596
+ #
597
+ #
598
+ #
599
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CopySnapshot.html
600
+ # @return [String]
601
+ #
602
+ # @!attribute [rw] tags
603
+ # The tags to apply to the snapshot.
604
+ # @return [Array<Types::Tag>]
605
+ #
606
+ # @!attribute [rw] description
607
+ # A description for the snapshot.
608
+ # @return [String]
609
+ #
610
+ # @!attribute [rw] client_token
611
+ # A unique, case-sensitive identifier that you provide to ensure the
612
+ # idempotency of the request. Idempotency ensures that an API request
613
+ # completes only once. With an idempotent request, if the original
614
+ # request completes successfully. The subsequent retries with the same
615
+ # client token return the result from the original successful request
616
+ # and they have no additional effect.
617
+ #
618
+ # If you do not specify a client token, one is automatically generated
619
+ # by the AWS SDK.
620
+ #
621
+ # For more information, see [ Idempotency for StartSnapshot API][1] in
622
+ # the *Amazon Elastic Compute Cloud User Guide*.
623
+ #
624
+ # **A suitable default value is auto-generated.** You should normally
625
+ # not need to pass this option.
626
+ #
627
+ #
628
+ #
629
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-direct-api-idempotency.html
630
+ # @return [String]
631
+ #
632
+ # @!attribute [rw] encrypted
633
+ # Indicates whether to encrypt the snapshot. To create an encrypted
634
+ # snapshot, specify `true`. To create an unencrypted snapshot, omit
635
+ # this parameter.
636
+ #
637
+ # If you specify a value for **ParentSnapshotId**, omit this
638
+ # parameter.
639
+ #
640
+ # If you specify `true`, the snapshot is encrypted using the CMK
641
+ # specified using the **KmsKeyArn** parameter. If no value is
642
+ # specified for **KmsKeyArn**, the default CMK for your account is
643
+ # used. If no default CMK has been specified for your account, the AWS
644
+ # managed CMK is used. To set a default CMK for your account, use [
645
+ # ModifyEbsDefaultKmsKeyId][1].
646
+ #
647
+ # If your account is enabled for encryption by default, you cannot set
648
+ # this parameter to `false`. In this case, you can omit this
649
+ # parameter.
650
+ #
651
+ # For more information, see [ Using encryption][2] in the *Amazon
652
+ # Elastic Compute Cloud User Guide*.
653
+ #
654
+ #
655
+ #
656
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyEbsDefaultKmsKeyId.html
657
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapis-using-encryption
658
+ # @return [Boolean]
659
+ #
660
+ # @!attribute [rw] kms_key_arn
661
+ # The Amazon Resource Name (ARN) of the AWS Key Management Service
662
+ # (AWS KMS) customer master key (CMK) to be used to encrypt the
663
+ # snapshot. If you do not specify a CMK, the default AWS managed CMK
664
+ # is used.
665
+ #
666
+ # If you specify a **ParentSnapshotId**, omit this parameter; the
667
+ # snapshot will be encrypted using the same CMK that was used to
668
+ # encrypt the parent snapshot.
669
+ #
670
+ # If **Encrypted** is set to `true`, you must specify a CMK ARN.
671
+ # @return [String]
672
+ #
673
+ # @!attribute [rw] timeout
674
+ # The amount of time (in minutes) after which the snapshot is
675
+ # automatically cancelled if:
676
+ #
677
+ # * No blocks are written to the snapshot.
678
+ #
679
+ # * The snapshot is not completed after writing the last block of
680
+ # data.
681
+ #
682
+ # If no value is specified, the timeout defaults to `60` minutes.
683
+ # @return [Integer]
684
+ #
685
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/StartSnapshotRequest AWS API Documentation
686
+ #
687
+ class StartSnapshotRequest < Struct.new(
688
+ :volume_size,
689
+ :parent_snapshot_id,
690
+ :tags,
691
+ :description,
692
+ :client_token,
693
+ :encrypted,
694
+ :kms_key_arn,
695
+ :timeout)
696
+ SENSITIVE = [:kms_key_arn]
697
+ include Aws::Structure
698
+ end
699
+
700
+ # @!attribute [rw] description
701
+ # The description of the snapshot.
702
+ # @return [String]
703
+ #
704
+ # @!attribute [rw] snapshot_id
705
+ # The ID of the snapshot.
706
+ # @return [String]
707
+ #
708
+ # @!attribute [rw] owner_id
709
+ # The AWS account ID of the snapshot owner.
710
+ # @return [String]
711
+ #
712
+ # @!attribute [rw] status
713
+ # The status of the snapshot.
714
+ # @return [String]
715
+ #
716
+ # @!attribute [rw] start_time
717
+ # The timestamp when the snapshot was created.
718
+ # @return [Time]
719
+ #
720
+ # @!attribute [rw] volume_size
721
+ # The size of the volume, in GiB.
722
+ # @return [Integer]
723
+ #
724
+ # @!attribute [rw] block_size
725
+ # The size of the blocks in the snapshot, in bytes.
726
+ # @return [Integer]
727
+ #
728
+ # @!attribute [rw] tags
729
+ # The tags applied to the snapshot. You can specify up to 50 tags per
730
+ # snapshot. For more information, see [ Tagging your Amazon EC2
731
+ # resources][1] in the *Amazon Elastic Compute Cloud User Guide*.
732
+ #
733
+ #
734
+ #
735
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html
736
+ # @return [Array<Types::Tag>]
737
+ #
738
+ # @!attribute [rw] parent_snapshot_id
739
+ # The ID of the parent snapshot.
740
+ # @return [String]
741
+ #
742
+ # @!attribute [rw] kms_key_arn
743
+ # The Amazon Resource Name (ARN) of the AWS Key Management Service
744
+ # (AWS KMS) customer master key (CMK) used to encrypt the snapshot.
745
+ # @return [String]
746
+ #
747
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/StartSnapshotResponse AWS API Documentation
748
+ #
749
+ class StartSnapshotResponse < Struct.new(
750
+ :description,
751
+ :snapshot_id,
752
+ :owner_id,
753
+ :status,
754
+ :start_time,
755
+ :volume_size,
756
+ :block_size,
757
+ :tags,
758
+ :parent_snapshot_id,
759
+ :kms_key_arn)
760
+ SENSITIVE = [:kms_key_arn]
761
+ include Aws::Structure
762
+ end
763
+
764
+ # Describes a tag.
765
+ #
766
+ # @note When making an API call, you may pass Tag
767
+ # data as a hash:
768
+ #
769
+ # {
770
+ # key: "TagKey",
771
+ # value: "TagValue",
772
+ # }
773
+ #
774
+ # @!attribute [rw] key
775
+ # The key of the tag.
776
+ # @return [String]
777
+ #
778
+ # @!attribute [rw] value
779
+ # The value of the tag.
780
+ # @return [String]
781
+ #
782
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/Tag AWS API Documentation
783
+ #
784
+ class Tag < Struct.new(
785
+ :key,
786
+ :value)
787
+ SENSITIVE = []
283
788
  include Aws::Structure
284
789
  end
285
790
 
@@ -297,6 +802,7 @@ module Aws::EBS
297
802
  class ValidationException < Struct.new(
298
803
  :message,
299
804
  :reason)
805
+ SENSITIVE = []
300
806
  include Aws::Structure
301
807
  end
302
808