aws-sdk-glacier 1.0.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,2055 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module Glacier
10
+ module Types
11
+
12
+ # Provides options to abort a multipart upload identified by the upload
13
+ # ID.
14
+ #
15
+ # For information about the underlying REST API, see [Abort Multipart
16
+ # Upload][1]. For conceptual information, see [Working with Archives in
17
+ # Amazon Glacier][2].
18
+ #
19
+ #
20
+ #
21
+ # [1]: http://docs.aws.amazon.com/amazonglacier/latest/dev/api-multipart-abort-upload.html
22
+ # [2]: http://docs.aws.amazon.com/amazonglacier/latest/dev/working-with-archives.html
23
+ # @note When making an API call, pass AbortMultipartUploadInput
24
+ # data as a hash:
25
+ #
26
+ # {
27
+ # account_id: "string", # required
28
+ # vault_name: "string", # required
29
+ # upload_id: "string", # required
30
+ # }
31
+ # @!attribute [rw] account_id
32
+ # The `AccountId` value is the AWS account ID of the account that owns
33
+ # the vault. You can either specify an AWS account ID or optionally a
34
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
35
+ # account ID associated with the credentials used to sign the request.
36
+ # If you use an account ID, do not include any hyphens ('-') in the
37
+ # ID.
38
+ # @return [String]
39
+ #
40
+ # @!attribute [rw] vault_name
41
+ # The name of the vault.
42
+ # @return [String]
43
+ #
44
+ # @!attribute [rw] upload_id
45
+ # The upload ID of the multipart upload to delete.
46
+ # @return [String]
47
+ class AbortMultipartUploadInput < Struct.new(
48
+ :account_id,
49
+ :vault_name,
50
+ :upload_id)
51
+ include Aws::Structure
52
+ end
53
+
54
+ # The input values for `AbortVaultLock`.
55
+ # @note When making an API call, pass AbortVaultLockInput
56
+ # data as a hash:
57
+ #
58
+ # {
59
+ # account_id: "string", # required
60
+ # vault_name: "string", # required
61
+ # }
62
+ # @!attribute [rw] account_id
63
+ # The `AccountId` value is the AWS account ID. This value must match
64
+ # the AWS account ID associated with the credentials used to sign the
65
+ # request. You can either specify an AWS account ID or optionally a
66
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
67
+ # account ID associated with the credentials used to sign the request.
68
+ # If you specify your account ID, do not include any hyphens ('-')
69
+ # in the ID.
70
+ # @return [String]
71
+ #
72
+ # @!attribute [rw] vault_name
73
+ # The name of the vault.
74
+ # @return [String]
75
+ class AbortVaultLockInput < Struct.new(
76
+ :account_id,
77
+ :vault_name)
78
+ include Aws::Structure
79
+ end
80
+
81
+ # The input values for `AddTagsToVault`.
82
+ # @note When making an API call, pass AddTagsToVaultInput
83
+ # data as a hash:
84
+ #
85
+ # {
86
+ # account_id: "string", # required
87
+ # vault_name: "string", # required
88
+ # tags: {
89
+ # "TagKey" => "TagValue",
90
+ # },
91
+ # }
92
+ # @!attribute [rw] account_id
93
+ # The `AccountId` value is the AWS account ID of the account that owns
94
+ # the vault. You can either specify an AWS account ID or optionally a
95
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
96
+ # account ID associated with the credentials used to sign the request.
97
+ # If you use an account ID, do not include any hyphens ('-') in the
98
+ # ID.
99
+ # @return [String]
100
+ #
101
+ # @!attribute [rw] vault_name
102
+ # The name of the vault.
103
+ # @return [String]
104
+ #
105
+ # @!attribute [rw] tags
106
+ # The tags to add to the vault. Each tag is composed of a key and a
107
+ # value. The value can be an empty string.
108
+ # @return [Hash<String,String>]
109
+ class AddTagsToVaultInput < Struct.new(
110
+ :account_id,
111
+ :vault_name,
112
+ :tags)
113
+ include Aws::Structure
114
+ end
115
+
116
+ # Contains the Amazon Glacier response to your request.
117
+ #
118
+ # For information about the underlying REST API, see [Upload
119
+ # Archive][1]. For conceptual information, see [Working with Archives in
120
+ # Amazon Glacier][2].
121
+ #
122
+ #
123
+ #
124
+ # [1]: http://docs.aws.amazon.com/amazonglacier/latest/dev/api-archive-post.html
125
+ # [2]: http://docs.aws.amazon.com/amazonglacier/latest/dev/working-with-archives.html
126
+ # @!attribute [rw] location
127
+ # The relative URI path of the newly added archive resource.
128
+ # @return [String]
129
+ #
130
+ # @!attribute [rw] checksum
131
+ # The checksum of the archive computed by Amazon Glacier.
132
+ # @return [String]
133
+ #
134
+ # @!attribute [rw] archive_id
135
+ # The ID of the archive. This value is also included as part of the
136
+ # location.
137
+ # @return [String]
138
+ class ArchiveCreationOutput < Struct.new(
139
+ :location,
140
+ :checksum,
141
+ :archive_id)
142
+ include Aws::Structure
143
+ end
144
+
145
+ # Provides options to complete a multipart upload operation. This
146
+ # informs Amazon Glacier that all the archive parts have been uploaded
147
+ # and Amazon Glacier can now assemble the archive from the uploaded
148
+ # parts. After assembling and saving the archive to the vault, Amazon
149
+ # Glacier returns the URI path of the newly created archive resource.
150
+ # @note When making an API call, pass CompleteMultipartUploadInput
151
+ # data as a hash:
152
+ #
153
+ # {
154
+ # account_id: "string", # required
155
+ # vault_name: "string", # required
156
+ # upload_id: "string", # required
157
+ # archive_size: 1,
158
+ # checksum: "string",
159
+ # }
160
+ # @!attribute [rw] account_id
161
+ # The `AccountId` value is the AWS account ID of the account that owns
162
+ # the vault. You can either specify an AWS account ID or optionally a
163
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
164
+ # account ID associated with the credentials used to sign the request.
165
+ # If you use an account ID, do not include any hyphens ('-') in the
166
+ # ID.
167
+ # @return [String]
168
+ #
169
+ # @!attribute [rw] vault_name
170
+ # The name of the vault.
171
+ # @return [String]
172
+ #
173
+ # @!attribute [rw] upload_id
174
+ # The upload ID of the multipart upload.
175
+ # @return [String]
176
+ #
177
+ # @!attribute [rw] archive_size
178
+ # The total size, in bytes, of the entire archive. This value should
179
+ # be the sum of all the sizes of the individual parts that you
180
+ # uploaded.
181
+ # @return [Integer]
182
+ #
183
+ # @!attribute [rw] checksum
184
+ # The SHA256 tree hash of the entire archive. It is the tree hash of
185
+ # SHA256 tree hash of the individual parts. If the value you specify
186
+ # in the request does not match the SHA256 tree hash of the final
187
+ # assembled archive as computed by Amazon Glacier, Amazon Glacier
188
+ # returns an error and the request fails.
189
+ # @return [String]
190
+ class CompleteMultipartUploadInput < Struct.new(
191
+ :account_id,
192
+ :vault_name,
193
+ :upload_id,
194
+ :archive_size,
195
+ :checksum)
196
+ include Aws::Structure
197
+ end
198
+
199
+ # The input values for `CompleteVaultLock`.
200
+ # @note When making an API call, pass CompleteVaultLockInput
201
+ # data as a hash:
202
+ #
203
+ # {
204
+ # account_id: "string", # required
205
+ # vault_name: "string", # required
206
+ # lock_id: "string", # required
207
+ # }
208
+ # @!attribute [rw] account_id
209
+ # The `AccountId` value is the AWS account ID. This value must match
210
+ # the AWS account ID associated with the credentials used to sign the
211
+ # request. You can either specify an AWS account ID or optionally a
212
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
213
+ # account ID associated with the credentials used to sign the request.
214
+ # If you specify your account ID, do not include any hyphens ('-')
215
+ # in the ID.
216
+ # @return [String]
217
+ #
218
+ # @!attribute [rw] vault_name
219
+ # The name of the vault.
220
+ # @return [String]
221
+ #
222
+ # @!attribute [rw] lock_id
223
+ # The `lockId` value is the lock ID obtained from a InitiateVaultLock
224
+ # request.
225
+ # @return [String]
226
+ class CompleteVaultLockInput < Struct.new(
227
+ :account_id,
228
+ :vault_name,
229
+ :lock_id)
230
+ include Aws::Structure
231
+ end
232
+
233
+ # Provides options to create a vault.
234
+ # @note When making an API call, pass CreateVaultInput
235
+ # data as a hash:
236
+ #
237
+ # {
238
+ # account_id: "string", # required
239
+ # vault_name: "string", # required
240
+ # }
241
+ # @!attribute [rw] account_id
242
+ # The `AccountId` value is the AWS account ID. This value must match
243
+ # the AWS account ID associated with the credentials used to sign the
244
+ # request. You can either specify an AWS account ID or optionally a
245
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
246
+ # account ID associated with the credentials used to sign the request.
247
+ # If you specify your account ID, do not include any hyphens ('-')
248
+ # in the ID.
249
+ # @return [String]
250
+ #
251
+ # @!attribute [rw] vault_name
252
+ # The name of the vault.
253
+ # @return [String]
254
+ class CreateVaultInput < Struct.new(
255
+ :account_id,
256
+ :vault_name)
257
+ include Aws::Structure
258
+ end
259
+
260
+ # Contains the Amazon Glacier response to your request.
261
+ # @!attribute [rw] location
262
+ # The URI of the vault that was created.
263
+ # @return [String]
264
+ class CreateVaultOutput < Struct.new(
265
+ :location)
266
+ include Aws::Structure
267
+ end
268
+
269
+ # Data retrieval policy.
270
+ # @note When making an API call, pass DataRetrievalPolicy
271
+ # data as a hash:
272
+ #
273
+ # {
274
+ # rules: [
275
+ # {
276
+ # strategy: "string",
277
+ # bytes_per_hour: 1,
278
+ # },
279
+ # ],
280
+ # }
281
+ # @!attribute [rw] rules
282
+ # The policy rule. Although this is a list type, currently there must
283
+ # be only one rule, which contains a Strategy field and optionally a
284
+ # BytesPerHour field.
285
+ # @return [Array<Types::DataRetrievalRule>]
286
+ class DataRetrievalPolicy < Struct.new(
287
+ :rules)
288
+ include Aws::Structure
289
+ end
290
+
291
+ # Data retrieval policy rule.
292
+ # @note When making an API call, pass DataRetrievalRule
293
+ # data as a hash:
294
+ #
295
+ # {
296
+ # strategy: "string",
297
+ # bytes_per_hour: 1,
298
+ # }
299
+ # @!attribute [rw] strategy
300
+ # The type of data retrieval policy to set.
301
+ #
302
+ # Valid values: BytesPerHour\|FreeTier\|None
303
+ # @return [String]
304
+ #
305
+ # @!attribute [rw] bytes_per_hour
306
+ # The maximum number of bytes that can be retrieved in an hour.
307
+ #
308
+ # This field is required only if the value of the Strategy field is
309
+ # `BytesPerHour`. Your PUT operation will be rejected if the Strategy
310
+ # field is not set to `BytesPerHour` and you set this field.
311
+ # @return [Integer]
312
+ class DataRetrievalRule < Struct.new(
313
+ :strategy,
314
+ :bytes_per_hour)
315
+ include Aws::Structure
316
+ end
317
+
318
+ # Provides options for deleting an archive from an Amazon Glacier vault.
319
+ # @note When making an API call, pass DeleteArchiveInput
320
+ # data as a hash:
321
+ #
322
+ # {
323
+ # account_id: "string", # required
324
+ # vault_name: "string", # required
325
+ # archive_id: "string", # required
326
+ # }
327
+ # @!attribute [rw] account_id
328
+ # The `AccountId` value is the AWS account ID of the account that owns
329
+ # the vault. You can either specify an AWS account ID or optionally a
330
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
331
+ # account ID associated with the credentials used to sign the request.
332
+ # If you use an account ID, do not include any hyphens ('-') in the
333
+ # ID.
334
+ # @return [String]
335
+ #
336
+ # @!attribute [rw] vault_name
337
+ # The name of the vault.
338
+ # @return [String]
339
+ #
340
+ # @!attribute [rw] archive_id
341
+ # The ID of the archive to delete.
342
+ # @return [String]
343
+ class DeleteArchiveInput < Struct.new(
344
+ :account_id,
345
+ :vault_name,
346
+ :archive_id)
347
+ include Aws::Structure
348
+ end
349
+
350
+ # DeleteVaultAccessPolicy input.
351
+ # @note When making an API call, pass DeleteVaultAccessPolicyInput
352
+ # data as a hash:
353
+ #
354
+ # {
355
+ # account_id: "string", # required
356
+ # vault_name: "string", # required
357
+ # }
358
+ # @!attribute [rw] account_id
359
+ # The `AccountId` value is the AWS account ID of the account that owns
360
+ # the vault. You can either specify an AWS account ID or optionally a
361
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
362
+ # account ID associated with the credentials used to sign the request.
363
+ # If you use an account ID, do not include any hyphens ('-') in the
364
+ # ID.
365
+ # @return [String]
366
+ #
367
+ # @!attribute [rw] vault_name
368
+ # The name of the vault.
369
+ # @return [String]
370
+ class DeleteVaultAccessPolicyInput < Struct.new(
371
+ :account_id,
372
+ :vault_name)
373
+ include Aws::Structure
374
+ end
375
+
376
+ # Provides options for deleting a vault from Amazon Glacier.
377
+ # @note When making an API call, pass DeleteVaultInput
378
+ # data as a hash:
379
+ #
380
+ # {
381
+ # account_id: "string", # required
382
+ # vault_name: "string", # required
383
+ # }
384
+ # @!attribute [rw] account_id
385
+ # The `AccountId` value is the AWS account ID of the account that owns
386
+ # the vault. You can either specify an AWS account ID or optionally a
387
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
388
+ # account ID associated with the credentials used to sign the request.
389
+ # If you use an account ID, do not include any hyphens ('-') in the
390
+ # ID.
391
+ # @return [String]
392
+ #
393
+ # @!attribute [rw] vault_name
394
+ # The name of the vault.
395
+ # @return [String]
396
+ class DeleteVaultInput < Struct.new(
397
+ :account_id,
398
+ :vault_name)
399
+ include Aws::Structure
400
+ end
401
+
402
+ # Provides options for deleting a vault notification configuration from
403
+ # an Amazon Glacier vault.
404
+ # @note When making an API call, pass DeleteVaultNotificationsInput
405
+ # data as a hash:
406
+ #
407
+ # {
408
+ # account_id: "string", # required
409
+ # vault_name: "string", # required
410
+ # }
411
+ # @!attribute [rw] account_id
412
+ # The `AccountId` value is the AWS account ID of the account that owns
413
+ # the vault. You can either specify an AWS account ID or optionally a
414
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
415
+ # account ID associated with the credentials used to sign the request.
416
+ # If you use an account ID, do not include any hyphens ('-') in the
417
+ # ID.
418
+ # @return [String]
419
+ #
420
+ # @!attribute [rw] vault_name
421
+ # The name of the vault.
422
+ # @return [String]
423
+ class DeleteVaultNotificationsInput < Struct.new(
424
+ :account_id,
425
+ :vault_name)
426
+ include Aws::Structure
427
+ end
428
+
429
+ # Provides options for retrieving a job description.
430
+ # @note When making an API call, pass DescribeJobInput
431
+ # data as a hash:
432
+ #
433
+ # {
434
+ # account_id: "string", # required
435
+ # vault_name: "string", # required
436
+ # job_id: "string", # required
437
+ # }
438
+ # @!attribute [rw] account_id
439
+ # The `AccountId` value is the AWS account ID of the account that owns
440
+ # the vault. You can either specify an AWS account ID or optionally a
441
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
442
+ # account ID associated with the credentials used to sign the request.
443
+ # If you use an account ID, do not include any hyphens ('-') in the
444
+ # ID.
445
+ # @return [String]
446
+ #
447
+ # @!attribute [rw] vault_name
448
+ # The name of the vault.
449
+ # @return [String]
450
+ #
451
+ # @!attribute [rw] job_id
452
+ # The ID of the job to describe.
453
+ # @return [String]
454
+ class DescribeJobInput < Struct.new(
455
+ :account_id,
456
+ :vault_name,
457
+ :job_id)
458
+ include Aws::Structure
459
+ end
460
+
461
+ # Provides options for retrieving metadata for a specific vault in
462
+ # Amazon Glacier.
463
+ # @note When making an API call, pass DescribeVaultInput
464
+ # data as a hash:
465
+ #
466
+ # {
467
+ # account_id: "string", # required
468
+ # vault_name: "string", # required
469
+ # }
470
+ # @!attribute [rw] account_id
471
+ # The `AccountId` value is the AWS account ID of the account that owns
472
+ # the vault. You can either specify an AWS account ID or optionally a
473
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
474
+ # account ID associated with the credentials used to sign the request.
475
+ # If you use an account ID, do not include any hyphens ('-') in the
476
+ # ID.
477
+ # @return [String]
478
+ #
479
+ # @!attribute [rw] vault_name
480
+ # The name of the vault.
481
+ # @return [String]
482
+ class DescribeVaultInput < Struct.new(
483
+ :account_id,
484
+ :vault_name)
485
+ include Aws::Structure
486
+ end
487
+
488
+ # Contains the Amazon Glacier response to your request.
489
+ # @!attribute [rw] vault_arn
490
+ # The Amazon Resource Name (ARN) of the vault.
491
+ # @return [String]
492
+ #
493
+ # @!attribute [rw] vault_name
494
+ # The name of the vault.
495
+ # @return [String]
496
+ #
497
+ # @!attribute [rw] creation_date
498
+ # The Universal Coordinated Time (UTC) date when the vault was
499
+ # created. This value should be a string in the ISO 8601 date format,
500
+ # for example `2012-03-20T17:03:43.221Z`.
501
+ # @return [Time]
502
+ #
503
+ # @!attribute [rw] last_inventory_date
504
+ # The Universal Coordinated Time (UTC) date when Amazon Glacier
505
+ # completed the last vault inventory. This value should be a string in
506
+ # the ISO 8601 date format, for example `2012-03-20T17:03:43.221Z`.
507
+ # @return [Time]
508
+ #
509
+ # @!attribute [rw] number_of_archives
510
+ # The number of archives in the vault as of the last inventory date.
511
+ # This field will return `null` if an inventory has not yet run on the
512
+ # vault, for example if you just created the vault.
513
+ # @return [Integer]
514
+ #
515
+ # @!attribute [rw] size_in_bytes
516
+ # Total size, in bytes, of the archives in the vault as of the last
517
+ # inventory date. This field will return null if an inventory has not
518
+ # yet run on the vault, for example if you just created the vault.
519
+ # @return [Integer]
520
+ class DescribeVaultOutput < Struct.new(
521
+ :vault_arn,
522
+ :vault_name,
523
+ :creation_date,
524
+ :last_inventory_date,
525
+ :number_of_archives,
526
+ :size_in_bytes)
527
+ include Aws::Structure
528
+ end
529
+
530
+ # Input for GetDataRetrievalPolicy.
531
+ # @note When making an API call, pass GetDataRetrievalPolicyInput
532
+ # data as a hash:
533
+ #
534
+ # {
535
+ # account_id: "string", # required
536
+ # }
537
+ # @!attribute [rw] account_id
538
+ # The `AccountId` value is the AWS account ID. This value must match
539
+ # the AWS account ID associated with the credentials used to sign the
540
+ # request. You can either specify an AWS account ID or optionally a
541
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
542
+ # account ID associated with the credentials used to sign the request.
543
+ # If you specify your account ID, do not include any hyphens ('-')
544
+ # in the ID.
545
+ # @return [String]
546
+ class GetDataRetrievalPolicyInput < Struct.new(
547
+ :account_id)
548
+ include Aws::Structure
549
+ end
550
+
551
+ # Contains the Amazon Glacier response to the `GetDataRetrievalPolicy`
552
+ # request.
553
+ # @!attribute [rw] policy
554
+ # Contains the returned data retrieval policy in JSON format.
555
+ # @return [Types::DataRetrievalPolicy]
556
+ class GetDataRetrievalPolicyOutput < Struct.new(
557
+ :policy)
558
+ include Aws::Structure
559
+ end
560
+
561
+ # Provides options for downloading output of an Amazon Glacier job.
562
+ # @note When making an API call, pass GetJobOutputInput
563
+ # data as a hash:
564
+ #
565
+ # {
566
+ # account_id: "string", # required
567
+ # vault_name: "string", # required
568
+ # job_id: "string", # required
569
+ # range: "string",
570
+ # }
571
+ # @!attribute [rw] account_id
572
+ # The `AccountId` value is the AWS account ID of the account that owns
573
+ # the vault. You can either specify an AWS account ID or optionally a
574
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
575
+ # account ID associated with the credentials used to sign the request.
576
+ # If you use an account ID, do not include any hyphens ('-') in the
577
+ # ID.
578
+ # @return [String]
579
+ #
580
+ # @!attribute [rw] vault_name
581
+ # The name of the vault.
582
+ # @return [String]
583
+ #
584
+ # @!attribute [rw] job_id
585
+ # The job ID whose data is downloaded.
586
+ # @return [String]
587
+ #
588
+ # @!attribute [rw] range
589
+ # The range of bytes to retrieve from the output. For example, if you
590
+ # want to download the first 1,048,576 bytes, specify the range as
591
+ # `bytes=0-1048575`. By default, this operation downloads the entire
592
+ # output.
593
+ #
594
+ # If the job output is large, then you can use a range to retrieve a
595
+ # portion of the output. This allows you to download the entire output
596
+ # in smaller chunks of bytes. For example, suppose you have 1 GB of
597
+ # job output you want to download and you decide to download 128 MB
598
+ # chunks of data at a time, which is a total of eight Get Job Output
599
+ # requests. You use the following process to download the job output:
600
+ #
601
+ # 1. Download a 128 MB chunk of output by specifying the appropriate
602
+ # byte range. Verify that all 128 MB of data was received.
603
+ #
604
+ # 2. Along with the data, the response includes a SHA256 tree hash of
605
+ # the payload. You compute the checksum of the payload on the
606
+ # client and compare it with the checksum you received in the
607
+ # response to ensure you received all the expected data.
608
+ #
609
+ # 3. Repeat steps 1 and 2 for all the eight 128 MB chunks of output
610
+ # data, each time specifying the appropriate byte range.
611
+ #
612
+ # 4. After downloading all the parts of the job output, you have a
613
+ # list of eight checksum values. Compute the tree hash of these
614
+ # values to find the checksum of the entire output. Using the
615
+ # DescribeJob API, obtain job information of the job that provided
616
+ # you the output. The response includes the checksum of the entire
617
+ # archive stored in Amazon Glacier. You compare this value with
618
+ # the checksum you computed to ensure you have downloaded the
619
+ # entire archive content with no errors.
620
+ # @return [String]
621
+ class GetJobOutputInput < Struct.new(
622
+ :account_id,
623
+ :vault_name,
624
+ :job_id,
625
+ :range)
626
+ include Aws::Structure
627
+ end
628
+
629
+ # Contains the Amazon Glacier response to your request.
630
+ # @!attribute [rw] body
631
+ # The job data, either archive data or inventory data.
632
+ # @return [IO]
633
+ #
634
+ # @!attribute [rw] checksum
635
+ # The checksum of the data in the response. This header is returned
636
+ # only when retrieving the output for an archive retrieval job.
637
+ # Furthermore, this header appears only under the following
638
+ # conditions:
639
+ #
640
+ # * You get the entire range of the archive.
641
+ #
642
+ # * You request a range to return of the archive that starts and ends
643
+ # on a multiple of 1 MB. For example, if you have an 3.1 MB archive
644
+ # and you specify a range to return that starts at 1 MB and ends at
645
+ # 2 MB, then the x-amz-sha256-tree-hash is returned as a response
646
+ # header.
647
+ #
648
+ # * You request a range of the archive to return that starts on a
649
+ # multiple of 1 MB and goes to the end of the archive. For example,
650
+ # if you have a 3.1 MB archive and you specify a range that starts
651
+ # at 2 MB and ends at 3.1 MB (the end of the archive), then the
652
+ # x-amz-sha256-tree-hash is returned as a response header.
653
+ # @return [String]
654
+ #
655
+ # @!attribute [rw] status
656
+ # The HTTP response code for a job output request. The value depends
657
+ # on whether a range was specified in the request.
658
+ # @return [Integer]
659
+ #
660
+ # @!attribute [rw] content_range
661
+ # The range of bytes returned by Amazon Glacier. If only partial
662
+ # output is downloaded, the response provides the range of bytes
663
+ # Amazon Glacier returned. For example, bytes 0-1048575/8388608
664
+ # returns the first 1 MB from 8 MB.
665
+ # @return [String]
666
+ #
667
+ # @!attribute [rw] accept_ranges
668
+ # Indicates the range units accepted. For more information, see
669
+ # [RFC2616][1].
670
+ #
671
+ #
672
+ #
673
+ # [1]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
674
+ # @return [String]
675
+ #
676
+ # @!attribute [rw] content_type
677
+ # The Content-Type depends on whether the job output is an archive or
678
+ # a vault inventory. For archive data, the Content-Type is
679
+ # application/octet-stream. For vault inventory, if you requested CSV
680
+ # format when you initiated the job, the Content-Type is text/csv.
681
+ # Otherwise, by default, vault inventory is returned as JSON, and the
682
+ # Content-Type is application/json.
683
+ # @return [String]
684
+ #
685
+ # @!attribute [rw] archive_description
686
+ # The description of an archive.
687
+ # @return [String]
688
+ class GetJobOutputOutput < Struct.new(
689
+ :body,
690
+ :checksum,
691
+ :status,
692
+ :content_range,
693
+ :accept_ranges,
694
+ :content_type,
695
+ :archive_description)
696
+ include Aws::Structure
697
+ end
698
+
699
+ # Input for GetVaultAccessPolicy.
700
+ # @note When making an API call, pass GetVaultAccessPolicyInput
701
+ # data as a hash:
702
+ #
703
+ # {
704
+ # account_id: "string", # required
705
+ # vault_name: "string", # required
706
+ # }
707
+ # @!attribute [rw] account_id
708
+ # The `AccountId` value is the AWS account ID of the account that owns
709
+ # the vault. You can either specify an AWS account ID or optionally a
710
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
711
+ # account ID associated with the credentials used to sign the request.
712
+ # If you use an account ID, do not include any hyphens ('-') in the
713
+ # ID.
714
+ # @return [String]
715
+ #
716
+ # @!attribute [rw] vault_name
717
+ # The name of the vault.
718
+ # @return [String]
719
+ class GetVaultAccessPolicyInput < Struct.new(
720
+ :account_id,
721
+ :vault_name)
722
+ include Aws::Structure
723
+ end
724
+
725
+ # Output for GetVaultAccessPolicy.
726
+ # @!attribute [rw] policy
727
+ # Contains the returned vault access policy as a JSON string.
728
+ # @return [Types::VaultAccessPolicy]
729
+ class GetVaultAccessPolicyOutput < Struct.new(
730
+ :policy)
731
+ include Aws::Structure
732
+ end
733
+
734
+ # The input values for `GetVaultLock`.
735
+ # @note When making an API call, pass GetVaultLockInput
736
+ # data as a hash:
737
+ #
738
+ # {
739
+ # account_id: "string", # required
740
+ # vault_name: "string", # required
741
+ # }
742
+ # @!attribute [rw] account_id
743
+ # The `AccountId` value is the AWS account ID of the account that owns
744
+ # the vault. You can either specify an AWS account ID or optionally a
745
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
746
+ # account ID associated with the credentials used to sign the request.
747
+ # If you use an account ID, do not include any hyphens ('-') in the
748
+ # ID.
749
+ # @return [String]
750
+ #
751
+ # @!attribute [rw] vault_name
752
+ # The name of the vault.
753
+ # @return [String]
754
+ class GetVaultLockInput < Struct.new(
755
+ :account_id,
756
+ :vault_name)
757
+ include Aws::Structure
758
+ end
759
+
760
+ # Contains the Amazon Glacier response to your request.
761
+ # @!attribute [rw] policy
762
+ # The vault lock policy as a JSON string, which uses "\\" as an
763
+ # escape character.
764
+ # @return [String]
765
+ #
766
+ # @!attribute [rw] state
767
+ # The state of the vault lock. `InProgress` or `Locked`.
768
+ # @return [String]
769
+ #
770
+ # @!attribute [rw] expiration_date
771
+ # The UTC date and time at which the lock ID expires. This value can
772
+ # be `null` if the vault lock is in a `Locked` state.
773
+ # @return [Time]
774
+ #
775
+ # @!attribute [rw] creation_date
776
+ # The UTC date and time at which the vault lock was put into the
777
+ # `InProgress` state.
778
+ # @return [Time]
779
+ class GetVaultLockOutput < Struct.new(
780
+ :policy,
781
+ :state,
782
+ :expiration_date,
783
+ :creation_date)
784
+ include Aws::Structure
785
+ end
786
+
787
+ # Provides options for retrieving the notification configuration set on
788
+ # an Amazon Glacier vault.
789
+ # @note When making an API call, pass GetVaultNotificationsInput
790
+ # data as a hash:
791
+ #
792
+ # {
793
+ # account_id: "string", # required
794
+ # vault_name: "string", # required
795
+ # }
796
+ # @!attribute [rw] account_id
797
+ # The `AccountId` value is the AWS account ID of the account that owns
798
+ # the vault. You can either specify an AWS account ID or optionally a
799
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
800
+ # account ID associated with the credentials used to sign the request.
801
+ # If you use an account ID, do not include any hyphens ('-') in the
802
+ # ID.
803
+ # @return [String]
804
+ #
805
+ # @!attribute [rw] vault_name
806
+ # The name of the vault.
807
+ # @return [String]
808
+ class GetVaultNotificationsInput < Struct.new(
809
+ :account_id,
810
+ :vault_name)
811
+ include Aws::Structure
812
+ end
813
+
814
+ # Contains the Amazon Glacier response to your request.
815
+ # @!attribute [rw] vault_notification_config
816
+ # Returns the notification configuration set on the vault.
817
+ # @return [Types::VaultNotificationConfig]
818
+ class GetVaultNotificationsOutput < Struct.new(
819
+ :vault_notification_config)
820
+ include Aws::Structure
821
+ end
822
+
823
+ # Describes an Amazon Glacier job.
824
+ # @!attribute [rw] job_id
825
+ # An opaque string that identifies an Amazon Glacier job.
826
+ # @return [String]
827
+ #
828
+ # @!attribute [rw] job_description
829
+ # The job description you provided when you initiated the job.
830
+ # @return [String]
831
+ #
832
+ # @!attribute [rw] action
833
+ # The job type. It is either ArchiveRetrieval or InventoryRetrieval.
834
+ # @return [String]
835
+ #
836
+ # @!attribute [rw] archive_id
837
+ # For an ArchiveRetrieval job, this is the archive ID requested for
838
+ # download. Otherwise, this field is null.
839
+ # @return [String]
840
+ #
841
+ # @!attribute [rw] vault_arn
842
+ # The Amazon Resource Name (ARN) of the vault from which the archive
843
+ # retrieval was requested.
844
+ # @return [String]
845
+ #
846
+ # @!attribute [rw] creation_date
847
+ # The UTC date when the job was created. A string representation of
848
+ # ISO 8601 date format, for example, "2012-03-20T17:03:43.221Z".
849
+ # @return [Time]
850
+ #
851
+ # @!attribute [rw] completed
852
+ # The job status. When a job is completed, you get the job's output.
853
+ # @return [Boolean]
854
+ #
855
+ # @!attribute [rw] status_code
856
+ # The status code can be InProgress, Succeeded, or Failed, and
857
+ # indicates the status of the job.
858
+ # @return [String]
859
+ #
860
+ # @!attribute [rw] status_message
861
+ # A friendly message that describes the job status.
862
+ # @return [String]
863
+ #
864
+ # @!attribute [rw] archive_size_in_bytes
865
+ # For an ArchiveRetrieval job, this is the size in bytes of the
866
+ # archive being requested for download. For the InventoryRetrieval
867
+ # job, the value is null.
868
+ # @return [Integer]
869
+ #
870
+ # @!attribute [rw] inventory_size_in_bytes
871
+ # For an InventoryRetrieval job, this is the size in bytes of the
872
+ # inventory requested for download. For the ArchiveRetrieval job, the
873
+ # value is null.
874
+ # @return [Integer]
875
+ #
876
+ # @!attribute [rw] sns_topic
877
+ # An Amazon Simple Notification Service (Amazon SNS) topic that
878
+ # receives notification.
879
+ # @return [String]
880
+ #
881
+ # @!attribute [rw] completion_date
882
+ # The UTC time that the archive retrieval request completed. While the
883
+ # job is in progress, the value will be null.
884
+ # @return [Time]
885
+ #
886
+ # @!attribute [rw] sha256_tree_hash
887
+ # For an ArchiveRetrieval job, it is the checksum of the archive.
888
+ # Otherwise, the value is null.
889
+ #
890
+ # The SHA256 tree hash value for the requested range of an archive. If
891
+ # the Initiate a Job request for an archive specified a tree-hash
892
+ # aligned range, then this field returns a value.
893
+ #
894
+ # For the specific case when the whole archive is retrieved, this
895
+ # value is the same as the ArchiveSHA256TreeHash value.
896
+ #
897
+ # This field is null in the following situations:
898
+ #
899
+ # * Archive retrieval jobs that specify a range that is not tree-hash
900
+ # aligned.
901
+ #
902
+ # ^
903
+ # ^
904
+ #
905
+ # * Archival jobs that specify a range that is equal to the whole
906
+ # archive and the job status is InProgress.
907
+ #
908
+ # ^
909
+ # ^
910
+ #
911
+ # * Inventory jobs.
912
+ #
913
+ # ^
914
+ # @return [String]
915
+ #
916
+ # @!attribute [rw] archive_sha256_tree_hash
917
+ # The SHA256 tree hash of the entire archive for an archive retrieval.
918
+ # For inventory retrieval jobs, this field is null.
919
+ # @return [String]
920
+ #
921
+ # @!attribute [rw] retrieval_byte_range
922
+ # The retrieved byte range for archive retrieval jobs in the form
923
+ # "*StartByteValue*-*EndByteValue*" If no range was specified in the
924
+ # archive retrieval, then the whole archive is retrieved and
925
+ # *StartByteValue* equals 0 and *EndByteValue* equals the size of the
926
+ # archive minus 1. For inventory retrieval jobs this field is null.
927
+ # @return [String]
928
+ #
929
+ # @!attribute [rw] tier
930
+ # The retrieval option to use for the archive retrieval. Valid values
931
+ # are `Expedited`, `Standard`, or `Bulk`. `Standard` is the default.
932
+ # @return [String]
933
+ #
934
+ # @!attribute [rw] inventory_retrieval_parameters
935
+ # Parameters used for range inventory retrieval.
936
+ # @return [Types::InventoryRetrievalJobDescription]
937
+ class GlacierJobDescription < Struct.new(
938
+ :job_id,
939
+ :job_description,
940
+ :action,
941
+ :archive_id,
942
+ :vault_arn,
943
+ :creation_date,
944
+ :completed,
945
+ :status_code,
946
+ :status_message,
947
+ :archive_size_in_bytes,
948
+ :inventory_size_in_bytes,
949
+ :sns_topic,
950
+ :completion_date,
951
+ :sha256_tree_hash,
952
+ :archive_sha256_tree_hash,
953
+ :retrieval_byte_range,
954
+ :tier,
955
+ :inventory_retrieval_parameters)
956
+ include Aws::Structure
957
+ end
958
+
959
+ # Provides options for initiating an Amazon Glacier job.
960
+ # @note When making an API call, pass InitiateJobInput
961
+ # data as a hash:
962
+ #
963
+ # {
964
+ # account_id: "string", # required
965
+ # vault_name: "string", # required
966
+ # job_parameters: {
967
+ # format: "string",
968
+ # type: "string",
969
+ # archive_id: "string",
970
+ # description: "string",
971
+ # sns_topic: "string",
972
+ # retrieval_byte_range: "string",
973
+ # tier: "string",
974
+ # inventory_retrieval_parameters: {
975
+ # start_date: Time.now,
976
+ # end_date: Time.now,
977
+ # limit: "string",
978
+ # marker: "string",
979
+ # },
980
+ # },
981
+ # }
982
+ # @!attribute [rw] account_id
983
+ # The `AccountId` value is the AWS account ID of the account that owns
984
+ # the vault. You can either specify an AWS account ID or optionally a
985
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
986
+ # account ID associated with the credentials used to sign the request.
987
+ # If you use an account ID, do not include any hyphens ('-') in the
988
+ # ID.
989
+ # @return [String]
990
+ #
991
+ # @!attribute [rw] vault_name
992
+ # The name of the vault.
993
+ # @return [String]
994
+ #
995
+ # @!attribute [rw] job_parameters
996
+ # Provides options for specifying job information.
997
+ # @return [Types::JobParameters]
998
+ class InitiateJobInput < Struct.new(
999
+ :account_id,
1000
+ :vault_name,
1001
+ :job_parameters)
1002
+ include Aws::Structure
1003
+ end
1004
+
1005
+ # Contains the Amazon Glacier response to your request.
1006
+ # @!attribute [rw] location
1007
+ # The relative URI path of the job.
1008
+ # @return [String]
1009
+ #
1010
+ # @!attribute [rw] job_id
1011
+ # The ID of the job.
1012
+ # @return [String]
1013
+ class InitiateJobOutput < Struct.new(
1014
+ :location,
1015
+ :job_id)
1016
+ include Aws::Structure
1017
+ end
1018
+
1019
+ # Provides options for initiating a multipart upload to an Amazon
1020
+ # Glacier vault.
1021
+ # @note When making an API call, pass InitiateMultipartUploadInput
1022
+ # data as a hash:
1023
+ #
1024
+ # {
1025
+ # account_id: "string", # required
1026
+ # vault_name: "string", # required
1027
+ # archive_description: "string",
1028
+ # part_size: 1,
1029
+ # }
1030
+ # @!attribute [rw] account_id
1031
+ # The `AccountId` value is the AWS account ID of the account that owns
1032
+ # the vault. You can either specify an AWS account ID or optionally a
1033
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
1034
+ # account ID associated with the credentials used to sign the request.
1035
+ # If you use an account ID, do not include any hyphens ('-') in the
1036
+ # ID.
1037
+ # @return [String]
1038
+ #
1039
+ # @!attribute [rw] vault_name
1040
+ # The name of the vault.
1041
+ # @return [String]
1042
+ #
1043
+ # @!attribute [rw] archive_description
1044
+ # The archive description that you are uploading in parts.
1045
+ #
1046
+ # The part size must be a megabyte (1024 KB) multiplied by a power of
1047
+ # 2, for example 1048576 (1 MB), 2097152 (2 MB), 4194304 (4 MB),
1048
+ # 8388608 (8 MB), and so on. The minimum allowable part size is 1 MB,
1049
+ # and the maximum is 4 GB (4096 MB).
1050
+ # @return [String]
1051
+ #
1052
+ # @!attribute [rw] part_size
1053
+ # The size of each part except the last, in bytes. The last part can
1054
+ # be smaller than this part size.
1055
+ # @return [Integer]
1056
+ class InitiateMultipartUploadInput < Struct.new(
1057
+ :account_id,
1058
+ :vault_name,
1059
+ :archive_description,
1060
+ :part_size)
1061
+ include Aws::Structure
1062
+ end
1063
+
1064
+ # The Amazon Glacier response to your request.
1065
+ # @!attribute [rw] location
1066
+ # The relative URI path of the multipart upload ID Amazon Glacier
1067
+ # created.
1068
+ # @return [String]
1069
+ #
1070
+ # @!attribute [rw] upload_id
1071
+ # The ID of the multipart upload. This value is also included as part
1072
+ # of the location.
1073
+ # @return [String]
1074
+ class InitiateMultipartUploadOutput < Struct.new(
1075
+ :location,
1076
+ :upload_id)
1077
+ include Aws::Structure
1078
+ end
1079
+
1080
+ # The input values for `InitiateVaultLock`.
1081
+ # @note When making an API call, pass InitiateVaultLockInput
1082
+ # data as a hash:
1083
+ #
1084
+ # {
1085
+ # account_id: "string", # required
1086
+ # vault_name: "string", # required
1087
+ # policy: {
1088
+ # policy: "string",
1089
+ # },
1090
+ # }
1091
+ # @!attribute [rw] account_id
1092
+ # The `AccountId` value is the AWS account ID. This value must match
1093
+ # the AWS account ID associated with the credentials used to sign the
1094
+ # request. You can either specify an AWS account ID or optionally a
1095
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
1096
+ # account ID associated with the credentials used to sign the request.
1097
+ # If you specify your account ID, do not include any hyphens ('-')
1098
+ # in the ID.
1099
+ # @return [String]
1100
+ #
1101
+ # @!attribute [rw] vault_name
1102
+ # The name of the vault.
1103
+ # @return [String]
1104
+ #
1105
+ # @!attribute [rw] policy
1106
+ # The vault lock policy as a JSON string, which uses "\\" as an
1107
+ # escape character.
1108
+ # @return [Types::VaultLockPolicy]
1109
+ class InitiateVaultLockInput < Struct.new(
1110
+ :account_id,
1111
+ :vault_name,
1112
+ :policy)
1113
+ include Aws::Structure
1114
+ end
1115
+
1116
+ # Contains the Amazon Glacier response to your request.
1117
+ # @!attribute [rw] lock_id
1118
+ # The lock ID, which is used to complete the vault locking process.
1119
+ # @return [String]
1120
+ class InitiateVaultLockOutput < Struct.new(
1121
+ :lock_id)
1122
+ include Aws::Structure
1123
+ end
1124
+
1125
+ # Describes the options for a range inventory retrieval job.
1126
+ # @!attribute [rw] format
1127
+ # The output format for the vault inventory list, which is set by the
1128
+ # **InitiateJob** request when initiating a job to retrieve a vault
1129
+ # inventory. Valid values are `CSV` and `JSON`.
1130
+ # @return [String]
1131
+ #
1132
+ # @!attribute [rw] start_date
1133
+ # The start of the date range in Universal Coordinated Time (UTC) for
1134
+ # vault inventory retrieval that includes archives created on or after
1135
+ # this date. This value should be a string in the ISO 8601 date
1136
+ # format, for example `2013-03-20T17:03:43Z`.
1137
+ # @return [Time]
1138
+ #
1139
+ # @!attribute [rw] end_date
1140
+ # The end of the date range in UTC for vault inventory retrieval that
1141
+ # includes archives created before this date. This value should be a
1142
+ # string in the ISO 8601 date format, for example
1143
+ # `2013-03-20T17:03:43Z`.
1144
+ # @return [Time]
1145
+ #
1146
+ # @!attribute [rw] limit
1147
+ # The maximum number of inventory items returned per vault inventory
1148
+ # retrieval request. This limit is set when initiating the job with
1149
+ # the a **InitiateJob** request.
1150
+ # @return [String]
1151
+ #
1152
+ # @!attribute [rw] marker
1153
+ # An opaque string that represents where to continue pagination of the
1154
+ # vault inventory retrieval results. You use the marker in a new
1155
+ # **InitiateJob** request to obtain additional inventory items. If
1156
+ # there are no more inventory items, this value is `null`. For more
1157
+ # information, see [ Range Inventory Retrieval][1].
1158
+ #
1159
+ #
1160
+ #
1161
+ # [1]: http://docs.aws.amazon.com/amazonglacier/latest/dev/api-initiate-job-post.html#api-initiate-job-post-vault-inventory-list-filtering
1162
+ # @return [String]
1163
+ class InventoryRetrievalJobDescription < Struct.new(
1164
+ :format,
1165
+ :start_date,
1166
+ :end_date,
1167
+ :limit,
1168
+ :marker)
1169
+ include Aws::Structure
1170
+ end
1171
+
1172
+ # Provides options for specifying a range inventory retrieval job.
1173
+ # @note When making an API call, pass InventoryRetrievalJobInput
1174
+ # data as a hash:
1175
+ #
1176
+ # {
1177
+ # start_date: Time.now,
1178
+ # end_date: Time.now,
1179
+ # limit: "string",
1180
+ # marker: "string",
1181
+ # }
1182
+ # @!attribute [rw] start_date
1183
+ # The start of the date range in UTC for vault inventory retrieval
1184
+ # that includes archives created on or after this date. This value
1185
+ # should be a string in the ISO 8601 date format, for example
1186
+ # `2013-03-20T17:03:43Z`.
1187
+ # @return [Time]
1188
+ #
1189
+ # @!attribute [rw] end_date
1190
+ # The end of the date range in UTC for vault inventory retrieval that
1191
+ # includes archives created before this date. This value should be a
1192
+ # string in the ISO 8601 date format, for example
1193
+ # `2013-03-20T17:03:43Z`.
1194
+ # @return [Time]
1195
+ #
1196
+ # @!attribute [rw] limit
1197
+ # Specifies the maximum number of inventory items returned per vault
1198
+ # inventory retrieval request. Valid values are greater than or equal
1199
+ # to 1.
1200
+ # @return [String]
1201
+ #
1202
+ # @!attribute [rw] marker
1203
+ # An opaque string that represents where to continue pagination of the
1204
+ # vault inventory retrieval results. You use the marker in a new
1205
+ # **InitiateJob** request to obtain additional inventory items. If
1206
+ # there are no more inventory items, this value is `null`.
1207
+ # @return [String]
1208
+ class InventoryRetrievalJobInput < Struct.new(
1209
+ :start_date,
1210
+ :end_date,
1211
+ :limit,
1212
+ :marker)
1213
+ include Aws::Structure
1214
+ end
1215
+
1216
+ # Provides options for defining a job.
1217
+ # @note When making an API call, pass JobParameters
1218
+ # data as a hash:
1219
+ #
1220
+ # {
1221
+ # format: "string",
1222
+ # type: "string",
1223
+ # archive_id: "string",
1224
+ # description: "string",
1225
+ # sns_topic: "string",
1226
+ # retrieval_byte_range: "string",
1227
+ # tier: "string",
1228
+ # inventory_retrieval_parameters: {
1229
+ # start_date: Time.now,
1230
+ # end_date: Time.now,
1231
+ # limit: "string",
1232
+ # marker: "string",
1233
+ # },
1234
+ # }
1235
+ # @!attribute [rw] format
1236
+ # When initiating a job to retrieve a vault inventory, you can
1237
+ # optionally add this parameter to your request to specify the output
1238
+ # format. If you are initiating an inventory job and do not specify a
1239
+ # Format field, JSON is the default format. Valid values are "CSV"
1240
+ # and "JSON".
1241
+ # @return [String]
1242
+ #
1243
+ # @!attribute [rw] type
1244
+ # The job type. You can initiate a job to retrieve an archive or get
1245
+ # an inventory of a vault. Valid values are "archive-retrieval" and
1246
+ # "inventory-retrieval".
1247
+ # @return [String]
1248
+ #
1249
+ # @!attribute [rw] archive_id
1250
+ # The ID of the archive that you want to retrieve. This field is
1251
+ # required only if `Type` is set to archive-retrieval. An error occurs
1252
+ # if you specify this request parameter for an inventory retrieval job
1253
+ # request.
1254
+ # @return [String]
1255
+ #
1256
+ # @!attribute [rw] description
1257
+ # The optional description for the job. The description must be less
1258
+ # than or equal to 1,024 bytes. The allowable characters are 7-bit
1259
+ # ASCII without control codes-specifically, ASCII values 32-126
1260
+ # decimal or 0x20-0x7E hexadecimal.
1261
+ # @return [String]
1262
+ #
1263
+ # @!attribute [rw] sns_topic
1264
+ # The Amazon SNS topic ARN to which Amazon Glacier sends a
1265
+ # notification when the job is completed and the output is ready for
1266
+ # you to download. The specified topic publishes the notification to
1267
+ # its subscribers. The SNS topic must exist.
1268
+ # @return [String]
1269
+ #
1270
+ # @!attribute [rw] retrieval_byte_range
1271
+ # The byte range to retrieve for an archive retrieval. in the form
1272
+ # "*StartByteValue*-*EndByteValue*" If not specified, the whole
1273
+ # archive is retrieved. If specified, the byte range must be megabyte
1274
+ # (1024*1024) aligned which means that *StartByteValue* must be
1275
+ # divisible by 1 MB and *EndByteValue* plus 1 must be divisible by 1
1276
+ # MB or be the end of the archive specified as the archive byte size
1277
+ # value minus 1. If RetrievalByteRange is not megabyte aligned, this
1278
+ # operation returns a 400 response.
1279
+ #
1280
+ # An error occurs if you specify this field for an inventory retrieval
1281
+ # job request.
1282
+ # @return [String]
1283
+ #
1284
+ # @!attribute [rw] tier
1285
+ # The retrieval option to use for the archive retrieval. Valid values
1286
+ # are `Expedited`, `Standard`, or `Bulk`. `Standard` is the default.
1287
+ # @return [String]
1288
+ #
1289
+ # @!attribute [rw] inventory_retrieval_parameters
1290
+ # Input parameters used for range inventory retrieval.
1291
+ # @return [Types::InventoryRetrievalJobInput]
1292
+ class JobParameters < Struct.new(
1293
+ :format,
1294
+ :type,
1295
+ :archive_id,
1296
+ :description,
1297
+ :sns_topic,
1298
+ :retrieval_byte_range,
1299
+ :tier,
1300
+ :inventory_retrieval_parameters)
1301
+ include Aws::Structure
1302
+ end
1303
+
1304
+ # Provides options for retrieving a job list for an Amazon Glacier
1305
+ # vault.
1306
+ # @note When making an API call, pass ListJobsInput
1307
+ # data as a hash:
1308
+ #
1309
+ # {
1310
+ # account_id: "string", # required
1311
+ # vault_name: "string", # required
1312
+ # limit: 1,
1313
+ # marker: "string",
1314
+ # statuscode: "string",
1315
+ # completed: "string",
1316
+ # }
1317
+ # @!attribute [rw] account_id
1318
+ # The `AccountId` value is the AWS account ID of the account that owns
1319
+ # the vault. You can either specify an AWS account ID or optionally a
1320
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
1321
+ # account ID associated with the credentials used to sign the request.
1322
+ # If you use an account ID, do not include any hyphens ('-') in the
1323
+ # ID.
1324
+ # @return [String]
1325
+ #
1326
+ # @!attribute [rw] vault_name
1327
+ # The name of the vault.
1328
+ # @return [String]
1329
+ #
1330
+ # @!attribute [rw] limit
1331
+ # The maximum number of jobs to be returned. The default limit is
1332
+ # 1000. The number of jobs returned might be fewer than the specified
1333
+ # limit, but the number of returned jobs never exceeds the limit.
1334
+ # @return [Integer]
1335
+ #
1336
+ # @!attribute [rw] marker
1337
+ # An opaque string used for pagination. This value specifies the job
1338
+ # at which the listing of jobs should begin. Get the marker value from
1339
+ # a previous List Jobs response. You only need to include the marker
1340
+ # if you are continuing the pagination of results started in a
1341
+ # previous List Jobs request.
1342
+ # @return [String]
1343
+ #
1344
+ # @!attribute [rw] statuscode
1345
+ # The type of job status to return. You can specify the following
1346
+ # values: `InProgress`, `Succeeded`, or `Failed`.
1347
+ # @return [String]
1348
+ #
1349
+ # @!attribute [rw] completed
1350
+ # The state of the jobs to return. You can specify `true` or `false`.
1351
+ # @return [String]
1352
+ class ListJobsInput < Struct.new(
1353
+ :account_id,
1354
+ :vault_name,
1355
+ :limit,
1356
+ :marker,
1357
+ :statuscode,
1358
+ :completed)
1359
+ include Aws::Structure
1360
+ end
1361
+
1362
+ # Contains the Amazon Glacier response to your request.
1363
+ # @!attribute [rw] job_list
1364
+ # A list of job objects. Each job object contains metadata describing
1365
+ # the job.
1366
+ # @return [Array<Types::GlacierJobDescription>]
1367
+ #
1368
+ # @!attribute [rw] marker
1369
+ # An opaque string used for pagination that specifies the job at which
1370
+ # the listing of jobs should begin. You get the `marker` value from a
1371
+ # previous List Jobs response. You only need to include the marker if
1372
+ # you are continuing the pagination of the results started in a
1373
+ # previous List Jobs request.
1374
+ # @return [String]
1375
+ class ListJobsOutput < Struct.new(
1376
+ :job_list,
1377
+ :marker)
1378
+ include Aws::Structure
1379
+ end
1380
+
1381
+ # Provides options for retrieving list of in-progress multipart uploads
1382
+ # for an Amazon Glacier vault.
1383
+ # @note When making an API call, pass ListMultipartUploadsInput
1384
+ # data as a hash:
1385
+ #
1386
+ # {
1387
+ # account_id: "string", # required
1388
+ # vault_name: "string", # required
1389
+ # marker: "string",
1390
+ # limit: 1,
1391
+ # }
1392
+ # @!attribute [rw] account_id
1393
+ # The `AccountId` value is the AWS account ID of the account that owns
1394
+ # the vault. You can either specify an AWS account ID or optionally a
1395
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
1396
+ # account ID associated with the credentials used to sign the request.
1397
+ # If you use an account ID, do not include any hyphens ('-') in the
1398
+ # ID.
1399
+ # @return [String]
1400
+ #
1401
+ # @!attribute [rw] vault_name
1402
+ # The name of the vault.
1403
+ # @return [String]
1404
+ #
1405
+ # @!attribute [rw] marker
1406
+ # An opaque string used for pagination. This value specifies the
1407
+ # upload at which the listing of uploads should begin. Get the marker
1408
+ # value from a previous List Uploads response. You need only include
1409
+ # the marker if you are continuing the pagination of results started
1410
+ # in a previous List Uploads request.
1411
+ # @return [String]
1412
+ #
1413
+ # @!attribute [rw] limit
1414
+ # Specifies the maximum number of uploads returned in the response
1415
+ # body. If this value is not specified, the List Uploads operation
1416
+ # returns up to 1,000 uploads.
1417
+ # @return [Integer]
1418
+ class ListMultipartUploadsInput < Struct.new(
1419
+ :account_id,
1420
+ :vault_name,
1421
+ :marker,
1422
+ :limit)
1423
+ include Aws::Structure
1424
+ end
1425
+
1426
+ # Contains the Amazon Glacier response to your request.
1427
+ # @!attribute [rw] uploads_list
1428
+ # A list of in-progress multipart uploads.
1429
+ # @return [Array<Types::UploadListElement>]
1430
+ #
1431
+ # @!attribute [rw] marker
1432
+ # An opaque string that represents where to continue pagination of the
1433
+ # results. You use the marker in a new List Multipart Uploads request
1434
+ # to obtain more uploads in the list. If there are no more uploads,
1435
+ # this value is `null`.
1436
+ # @return [String]
1437
+ class ListMultipartUploadsOutput < Struct.new(
1438
+ :uploads_list,
1439
+ :marker)
1440
+ include Aws::Structure
1441
+ end
1442
+
1443
+ # Provides options for retrieving a list of parts of an archive that
1444
+ # have been uploaded in a specific multipart upload.
1445
+ # @note When making an API call, pass ListPartsInput
1446
+ # data as a hash:
1447
+ #
1448
+ # {
1449
+ # account_id: "string", # required
1450
+ # vault_name: "string", # required
1451
+ # upload_id: "string", # required
1452
+ # marker: "string",
1453
+ # limit: 1,
1454
+ # }
1455
+ # @!attribute [rw] account_id
1456
+ # The `AccountId` value is the AWS account ID of the account that owns
1457
+ # the vault. You can either specify an AWS account ID or optionally a
1458
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
1459
+ # account ID associated with the credentials used to sign the request.
1460
+ # If you use an account ID, do not include any hyphens ('-') in the
1461
+ # ID.
1462
+ # @return [String]
1463
+ #
1464
+ # @!attribute [rw] vault_name
1465
+ # The name of the vault.
1466
+ # @return [String]
1467
+ #
1468
+ # @!attribute [rw] upload_id
1469
+ # The upload ID of the multipart upload.
1470
+ # @return [String]
1471
+ #
1472
+ # @!attribute [rw] marker
1473
+ # An opaque string used for pagination. This value specifies the part
1474
+ # at which the listing of parts should begin. Get the marker value
1475
+ # from the response of a previous List Parts response. You need only
1476
+ # include the marker if you are continuing the pagination of results
1477
+ # started in a previous List Parts request.
1478
+ # @return [String]
1479
+ #
1480
+ # @!attribute [rw] limit
1481
+ # The maximum number of parts to be returned. The default limit is
1482
+ # 1000. The number of parts returned might be fewer than the specified
1483
+ # limit, but the number of returned parts never exceeds the limit.
1484
+ # @return [Integer]
1485
+ class ListPartsInput < Struct.new(
1486
+ :account_id,
1487
+ :vault_name,
1488
+ :upload_id,
1489
+ :marker,
1490
+ :limit)
1491
+ include Aws::Structure
1492
+ end
1493
+
1494
+ # Contains the Amazon Glacier response to your request.
1495
+ # @!attribute [rw] multipart_upload_id
1496
+ # The ID of the upload to which the parts are associated.
1497
+ # @return [String]
1498
+ #
1499
+ # @!attribute [rw] vault_arn
1500
+ # The Amazon Resource Name (ARN) of the vault to which the multipart
1501
+ # upload was initiated.
1502
+ # @return [String]
1503
+ #
1504
+ # @!attribute [rw] archive_description
1505
+ # The description of the archive that was specified in the Initiate
1506
+ # Multipart Upload request.
1507
+ # @return [String]
1508
+ #
1509
+ # @!attribute [rw] part_size_in_bytes
1510
+ # The part size in bytes. This is the same value that you specified in
1511
+ # the Initiate Multipart Upload request.
1512
+ # @return [Integer]
1513
+ #
1514
+ # @!attribute [rw] creation_date
1515
+ # The UTC time at which the multipart upload was initiated.
1516
+ # @return [Time]
1517
+ #
1518
+ # @!attribute [rw] parts
1519
+ # A list of the part sizes of the multipart upload. Each object in the
1520
+ # array contains a `RangeBytes` and `sha256-tree-hash` name/value
1521
+ # pair.
1522
+ # @return [Array<Types::PartListElement>]
1523
+ #
1524
+ # @!attribute [rw] marker
1525
+ # An opaque string that represents where to continue pagination of the
1526
+ # results. You use the marker in a new List Parts request to obtain
1527
+ # more jobs in the list. If there are no more parts, this value is
1528
+ # `null`.
1529
+ # @return [String]
1530
+ class ListPartsOutput < Struct.new(
1531
+ :multipart_upload_id,
1532
+ :vault_arn,
1533
+ :archive_description,
1534
+ :part_size_in_bytes,
1535
+ :creation_date,
1536
+ :parts,
1537
+ :marker)
1538
+ include Aws::Structure
1539
+ end
1540
+
1541
+ # @note When making an API call, pass ListProvisionedCapacityInput
1542
+ # data as a hash:
1543
+ #
1544
+ # {
1545
+ # account_id: "string", # required
1546
+ # }
1547
+ # @!attribute [rw] account_id
1548
+ # The `AccountId` value is the AWS account ID of the account that owns
1549
+ # the vault. You can either specify an AWS account ID or optionally a
1550
+ # single '-' (hyphen), in which case Amazon Glacier uses the AWS
1551
+ # account ID associated with the credentials used to sign the request.
1552
+ # If you use an account ID, don't include any hyphens ('-') in the
1553
+ # ID.
1554
+ # @return [String]
1555
+ class ListProvisionedCapacityInput < Struct.new(
1556
+ :account_id)
1557
+ include Aws::Structure
1558
+ end
1559
+
1560
+ # @!attribute [rw] provisioned_capacity_list
1561
+ # The response body contains the following JSON fields.
1562
+ # @return [Array<Types::ProvisionedCapacityDescription>]
1563
+ class ListProvisionedCapacityOutput < Struct.new(
1564
+ :provisioned_capacity_list)
1565
+ include Aws::Structure
1566
+ end
1567
+
1568
+ # The input value for `ListTagsForVaultInput`.
1569
+ # @note When making an API call, pass ListTagsForVaultInput
1570
+ # data as a hash:
1571
+ #
1572
+ # {
1573
+ # account_id: "string", # required
1574
+ # vault_name: "string", # required
1575
+ # }
1576
+ # @!attribute [rw] account_id
1577
+ # The `AccountId` value is the AWS account ID of the account that owns
1578
+ # the vault. You can either specify an AWS account ID or optionally a
1579
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
1580
+ # account ID associated with the credentials used to sign the request.
1581
+ # If you use an account ID, do not include any hyphens ('-') in the
1582
+ # ID.
1583
+ # @return [String]
1584
+ #
1585
+ # @!attribute [rw] vault_name
1586
+ # The name of the vault.
1587
+ # @return [String]
1588
+ class ListTagsForVaultInput < Struct.new(
1589
+ :account_id,
1590
+ :vault_name)
1591
+ include Aws::Structure
1592
+ end
1593
+
1594
+ # Contains the Amazon Glacier response to your request.
1595
+ # @!attribute [rw] tags
1596
+ # The tags attached to the vault. Each tag is composed of a key and a
1597
+ # value.
1598
+ # @return [Hash<String,String>]
1599
+ class ListTagsForVaultOutput < Struct.new(
1600
+ :tags)
1601
+ include Aws::Structure
1602
+ end
1603
+
1604
+ # Provides options to retrieve the vault list owned by the calling
1605
+ # user's account. The list provides metadata information for each
1606
+ # vault.
1607
+ # @note When making an API call, pass ListVaultsInput
1608
+ # data as a hash:
1609
+ #
1610
+ # {
1611
+ # account_id: "string", # required
1612
+ # marker: "string",
1613
+ # limit: 1,
1614
+ # }
1615
+ # @!attribute [rw] account_id
1616
+ # The `AccountId` value is the AWS account ID. This value must match
1617
+ # the AWS account ID associated with the credentials used to sign the
1618
+ # request. You can either specify an AWS account ID or optionally a
1619
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
1620
+ # account ID associated with the credentials used to sign the request.
1621
+ # If you specify your account ID, do not include any hyphens ('-')
1622
+ # in the ID.
1623
+ # @return [String]
1624
+ #
1625
+ # @!attribute [rw] marker
1626
+ # A string used for pagination. The marker specifies the vault ARN
1627
+ # after which the listing of vaults should begin.
1628
+ # @return [String]
1629
+ #
1630
+ # @!attribute [rw] limit
1631
+ # The maximum number of vaults to be returned. The default limit is
1632
+ # 1000. The number of vaults returned might be fewer than the
1633
+ # specified limit, but the number of returned vaults never exceeds the
1634
+ # limit.
1635
+ # @return [Integer]
1636
+ class ListVaultsInput < Struct.new(
1637
+ :account_id,
1638
+ :marker,
1639
+ :limit)
1640
+ include Aws::Structure
1641
+ end
1642
+
1643
+ # Contains the Amazon Glacier response to your request.
1644
+ # @!attribute [rw] vault_list
1645
+ # List of vaults.
1646
+ # @return [Array<Types::DescribeVaultOutput>]
1647
+ #
1648
+ # @!attribute [rw] marker
1649
+ # The vault ARN at which to continue pagination of the results. You
1650
+ # use the marker in another List Vaults request to obtain more vaults
1651
+ # in the list.
1652
+ # @return [String]
1653
+ class ListVaultsOutput < Struct.new(
1654
+ :vault_list,
1655
+ :marker)
1656
+ include Aws::Structure
1657
+ end
1658
+
1659
+ # A list of the part sizes of the multipart upload.
1660
+ # @!attribute [rw] range_in_bytes
1661
+ # The byte range of a part, inclusive of the upper value of the range.
1662
+ # @return [String]
1663
+ #
1664
+ # @!attribute [rw] sha256_tree_hash
1665
+ # The SHA256 tree hash value that Amazon Glacier calculated for the
1666
+ # part. This field is never `null`.
1667
+ # @return [String]
1668
+ class PartListElement < Struct.new(
1669
+ :range_in_bytes,
1670
+ :sha256_tree_hash)
1671
+ include Aws::Structure
1672
+ end
1673
+
1674
+ # The definition for a provisioned capacity unit.
1675
+ # @!attribute [rw] capacity_id
1676
+ # The ID that identifies the provisioned capacity unit.
1677
+ # @return [String]
1678
+ #
1679
+ # @!attribute [rw] start_date
1680
+ # The date that the provisioned capacity unit was purchased, in
1681
+ # Universal Coordinated Time (UTC).
1682
+ # @return [Time]
1683
+ #
1684
+ # @!attribute [rw] expiration_date
1685
+ # The date that the provisioned capacity unit expires, in Universal
1686
+ # Coordinated Time (UTC).
1687
+ # @return [Time]
1688
+ class ProvisionedCapacityDescription < Struct.new(
1689
+ :capacity_id,
1690
+ :start_date,
1691
+ :expiration_date)
1692
+ include Aws::Structure
1693
+ end
1694
+
1695
+ # @note When making an API call, pass PurchaseProvisionedCapacityInput
1696
+ # data as a hash:
1697
+ #
1698
+ # {
1699
+ # account_id: "string", # required
1700
+ # }
1701
+ # @!attribute [rw] account_id
1702
+ # The AWS account ID of the account that owns the vault. You can
1703
+ # either specify an AWS account ID or optionally a single '-'
1704
+ # (hyphen), in which case Amazon Glacier uses the AWS account ID
1705
+ # associated with the credentials used to sign the request. If you use
1706
+ # an account ID, don't include any hyphens ('-') in the ID.
1707
+ # @return [String]
1708
+ class PurchaseProvisionedCapacityInput < Struct.new(
1709
+ :account_id)
1710
+ include Aws::Structure
1711
+ end
1712
+
1713
+ # @!attribute [rw] capacity_id
1714
+ # The ID that identifies the provisioned capacity unit.
1715
+ # @return [String]
1716
+ class PurchaseProvisionedCapacityOutput < Struct.new(
1717
+ :capacity_id)
1718
+ include Aws::Structure
1719
+ end
1720
+
1721
+ # The input value for `RemoveTagsFromVaultInput`.
1722
+ # @note When making an API call, pass RemoveTagsFromVaultInput
1723
+ # data as a hash:
1724
+ #
1725
+ # {
1726
+ # account_id: "string", # required
1727
+ # vault_name: "string", # required
1728
+ # tag_keys: ["string"],
1729
+ # }
1730
+ # @!attribute [rw] account_id
1731
+ # The `AccountId` value is the AWS account ID of the account that owns
1732
+ # the vault. You can either specify an AWS account ID or optionally a
1733
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
1734
+ # account ID associated with the credentials used to sign the request.
1735
+ # If you use an account ID, do not include any hyphens ('-') in the
1736
+ # ID.
1737
+ # @return [String]
1738
+ #
1739
+ # @!attribute [rw] vault_name
1740
+ # The name of the vault.
1741
+ # @return [String]
1742
+ #
1743
+ # @!attribute [rw] tag_keys
1744
+ # A list of tag keys. Each corresponding tag is removed from the
1745
+ # vault.
1746
+ # @return [Array<String>]
1747
+ class RemoveTagsFromVaultInput < Struct.new(
1748
+ :account_id,
1749
+ :vault_name,
1750
+ :tag_keys)
1751
+ include Aws::Structure
1752
+ end
1753
+
1754
+ # SetDataRetrievalPolicy input.
1755
+ # @note When making an API call, pass SetDataRetrievalPolicyInput
1756
+ # data as a hash:
1757
+ #
1758
+ # {
1759
+ # account_id: "string", # required
1760
+ # policy: {
1761
+ # rules: [
1762
+ # {
1763
+ # strategy: "string",
1764
+ # bytes_per_hour: 1,
1765
+ # },
1766
+ # ],
1767
+ # },
1768
+ # }
1769
+ # @!attribute [rw] account_id
1770
+ # The `AccountId` value is the AWS account ID. This value must match
1771
+ # the AWS account ID associated with the credentials used to sign the
1772
+ # request. You can either specify an AWS account ID or optionally a
1773
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
1774
+ # account ID associated with the credentials used to sign the request.
1775
+ # If you specify your account ID, do not include any hyphens ('-')
1776
+ # in the ID.
1777
+ # @return [String]
1778
+ #
1779
+ # @!attribute [rw] policy
1780
+ # The data retrieval policy in JSON format.
1781
+ # @return [Types::DataRetrievalPolicy]
1782
+ class SetDataRetrievalPolicyInput < Struct.new(
1783
+ :account_id,
1784
+ :policy)
1785
+ include Aws::Structure
1786
+ end
1787
+
1788
+ # SetVaultAccessPolicy input.
1789
+ # @note When making an API call, pass SetVaultAccessPolicyInput
1790
+ # data as a hash:
1791
+ #
1792
+ # {
1793
+ # account_id: "string", # required
1794
+ # vault_name: "string", # required
1795
+ # policy: {
1796
+ # policy: "string",
1797
+ # },
1798
+ # }
1799
+ # @!attribute [rw] account_id
1800
+ # The `AccountId` value is the AWS account ID of the account that owns
1801
+ # the vault. You can either specify an AWS account ID or optionally a
1802
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
1803
+ # account ID associated with the credentials used to sign the request.
1804
+ # If you use an account ID, do not include any hyphens ('-') in the
1805
+ # ID.
1806
+ # @return [String]
1807
+ #
1808
+ # @!attribute [rw] vault_name
1809
+ # The name of the vault.
1810
+ # @return [String]
1811
+ #
1812
+ # @!attribute [rw] policy
1813
+ # The vault access policy as a JSON string.
1814
+ # @return [Types::VaultAccessPolicy]
1815
+ class SetVaultAccessPolicyInput < Struct.new(
1816
+ :account_id,
1817
+ :vault_name,
1818
+ :policy)
1819
+ include Aws::Structure
1820
+ end
1821
+
1822
+ # Provides options to configure notifications that will be sent when
1823
+ # specific events happen to a vault.
1824
+ # @note When making an API call, pass SetVaultNotificationsInput
1825
+ # data as a hash:
1826
+ #
1827
+ # {
1828
+ # account_id: "string", # required
1829
+ # vault_name: "string", # required
1830
+ # vault_notification_config: {
1831
+ # sns_topic: "string",
1832
+ # events: ["string"],
1833
+ # },
1834
+ # }
1835
+ # @!attribute [rw] account_id
1836
+ # The `AccountId` value is the AWS account ID of the account that owns
1837
+ # the vault. You can either specify an AWS account ID or optionally a
1838
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
1839
+ # account ID associated with the credentials used to sign the request.
1840
+ # If you use an account ID, do not include any hyphens ('-') in the
1841
+ # ID.
1842
+ # @return [String]
1843
+ #
1844
+ # @!attribute [rw] vault_name
1845
+ # The name of the vault.
1846
+ # @return [String]
1847
+ #
1848
+ # @!attribute [rw] vault_notification_config
1849
+ # Provides options for specifying notification configuration.
1850
+ # @return [Types::VaultNotificationConfig]
1851
+ class SetVaultNotificationsInput < Struct.new(
1852
+ :account_id,
1853
+ :vault_name,
1854
+ :vault_notification_config)
1855
+ include Aws::Structure
1856
+ end
1857
+
1858
+ # Provides options to add an archive to a vault.
1859
+ # @note When making an API call, pass UploadArchiveInput
1860
+ # data as a hash:
1861
+ #
1862
+ # {
1863
+ # vault_name: "string", # required
1864
+ # account_id: "string", # required
1865
+ # archive_description: "string",
1866
+ # checksum: "string",
1867
+ # body: "data",
1868
+ # }
1869
+ # @!attribute [rw] vault_name
1870
+ # The name of the vault.
1871
+ # @return [String]
1872
+ #
1873
+ # @!attribute [rw] account_id
1874
+ # The `AccountId` value is the AWS account ID of the account that owns
1875
+ # the vault. You can either specify an AWS account ID or optionally a
1876
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
1877
+ # account ID associated with the credentials used to sign the request.
1878
+ # If you use an account ID, do not include any hyphens ('-') in the
1879
+ # ID.
1880
+ # @return [String]
1881
+ #
1882
+ # @!attribute [rw] archive_description
1883
+ # The optional description of the archive you are uploading.
1884
+ # @return [String]
1885
+ #
1886
+ # @!attribute [rw] checksum
1887
+ # The SHA256 tree hash of the data being uploaded.
1888
+ # @return [String]
1889
+ #
1890
+ # @!attribute [rw] body
1891
+ # The data to upload.
1892
+ # @return [IO]
1893
+ class UploadArchiveInput < Struct.new(
1894
+ :vault_name,
1895
+ :account_id,
1896
+ :archive_description,
1897
+ :checksum,
1898
+ :body)
1899
+ include Aws::Structure
1900
+ end
1901
+
1902
+ # A list of in-progress multipart uploads for a vault.
1903
+ # @!attribute [rw] multipart_upload_id
1904
+ # The ID of a multipart upload.
1905
+ # @return [String]
1906
+ #
1907
+ # @!attribute [rw] vault_arn
1908
+ # The Amazon Resource Name (ARN) of the vault that contains the
1909
+ # archive.
1910
+ # @return [String]
1911
+ #
1912
+ # @!attribute [rw] archive_description
1913
+ # The description of the archive that was specified in the Initiate
1914
+ # Multipart Upload request.
1915
+ # @return [String]
1916
+ #
1917
+ # @!attribute [rw] part_size_in_bytes
1918
+ # The part size, in bytes, specified in the Initiate Multipart Upload
1919
+ # request. This is the size of all the parts in the upload except the
1920
+ # last part, which may be smaller than this size.
1921
+ # @return [Integer]
1922
+ #
1923
+ # @!attribute [rw] creation_date
1924
+ # The UTC time at which the multipart upload was initiated.
1925
+ # @return [Time]
1926
+ class UploadListElement < Struct.new(
1927
+ :multipart_upload_id,
1928
+ :vault_arn,
1929
+ :archive_description,
1930
+ :part_size_in_bytes,
1931
+ :creation_date)
1932
+ include Aws::Structure
1933
+ end
1934
+
1935
+ # Provides options to upload a part of an archive in a multipart upload
1936
+ # operation.
1937
+ # @note When making an API call, pass UploadMultipartPartInput
1938
+ # data as a hash:
1939
+ #
1940
+ # {
1941
+ # account_id: "string", # required
1942
+ # vault_name: "string", # required
1943
+ # upload_id: "string", # required
1944
+ # checksum: "string",
1945
+ # range: "string",
1946
+ # body: "data",
1947
+ # }
1948
+ # @!attribute [rw] account_id
1949
+ # The `AccountId` value is the AWS account ID of the account that owns
1950
+ # the vault. You can either specify an AWS account ID or optionally a
1951
+ # single '`-`' (hyphen), in which case Amazon Glacier uses the AWS
1952
+ # account ID associated with the credentials used to sign the request.
1953
+ # If you use an account ID, do not include any hyphens ('-') in the
1954
+ # ID.
1955
+ # @return [String]
1956
+ #
1957
+ # @!attribute [rw] vault_name
1958
+ # The name of the vault.
1959
+ # @return [String]
1960
+ #
1961
+ # @!attribute [rw] upload_id
1962
+ # The upload ID of the multipart upload.
1963
+ # @return [String]
1964
+ #
1965
+ # @!attribute [rw] checksum
1966
+ # The SHA256 tree hash of the data being uploaded.
1967
+ # @return [String]
1968
+ #
1969
+ # @!attribute [rw] range
1970
+ # Identifies the range of bytes in the assembled archive that will be
1971
+ # uploaded in this part. Amazon Glacier uses this information to
1972
+ # assemble the archive in the proper sequence. The format of this
1973
+ # header follows RFC 2616. An example header is Content-Range:bytes
1974
+ # 0-4194303/*.
1975
+ # @return [String]
1976
+ #
1977
+ # @!attribute [rw] body
1978
+ # The data to upload.
1979
+ # @return [IO]
1980
+ class UploadMultipartPartInput < Struct.new(
1981
+ :account_id,
1982
+ :vault_name,
1983
+ :upload_id,
1984
+ :checksum,
1985
+ :range,
1986
+ :body)
1987
+ include Aws::Structure
1988
+ end
1989
+
1990
+ # Contains the Amazon Glacier response to your request.
1991
+ # @!attribute [rw] checksum
1992
+ # The SHA256 tree hash that Amazon Glacier computed for the uploaded
1993
+ # part.
1994
+ # @return [String]
1995
+ class UploadMultipartPartOutput < Struct.new(
1996
+ :checksum)
1997
+ include Aws::Structure
1998
+ end
1999
+
2000
+ # Contains the vault access policy.
2001
+ # @note When making an API call, pass VaultAccessPolicy
2002
+ # data as a hash:
2003
+ #
2004
+ # {
2005
+ # policy: "string",
2006
+ # }
2007
+ # @!attribute [rw] policy
2008
+ # The vault access policy.
2009
+ # @return [String]
2010
+ class VaultAccessPolicy < Struct.new(
2011
+ :policy)
2012
+ include Aws::Structure
2013
+ end
2014
+
2015
+ # Contains the vault lock policy.
2016
+ # @note When making an API call, pass VaultLockPolicy
2017
+ # data as a hash:
2018
+ #
2019
+ # {
2020
+ # policy: "string",
2021
+ # }
2022
+ # @!attribute [rw] policy
2023
+ # The vault lock policy.
2024
+ # @return [String]
2025
+ class VaultLockPolicy < Struct.new(
2026
+ :policy)
2027
+ include Aws::Structure
2028
+ end
2029
+
2030
+ # Represents a vault's notification configuration.
2031
+ # @note When making an API call, pass VaultNotificationConfig
2032
+ # data as a hash:
2033
+ #
2034
+ # {
2035
+ # sns_topic: "string",
2036
+ # events: ["string"],
2037
+ # }
2038
+ # @!attribute [rw] sns_topic
2039
+ # The Amazon Simple Notification Service (Amazon SNS) topic Amazon
2040
+ # Resource Name (ARN).
2041
+ # @return [String]
2042
+ #
2043
+ # @!attribute [rw] events
2044
+ # A list of one or more events for which Amazon Glacier will send a
2045
+ # notification to the specified Amazon SNS topic.
2046
+ # @return [Array<String>]
2047
+ class VaultNotificationConfig < Struct.new(
2048
+ :sns_topic,
2049
+ :events)
2050
+ include Aws::Structure
2051
+ end
2052
+
2053
+ end
2054
+ end
2055
+ end