capo-ebs 0.2.0__tar.gz → 0.3.0__tar.gz

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.
Files changed (104) hide show
  1. {capo_ebs-0.2.0/src/capo_ebs.egg-info → capo_ebs-0.3.0}/PKG-INFO +1 -1
  2. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/pyproject.toml +1 -1
  3. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_services/async_ebs.py +26 -26
  4. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_services/ebs.py +26 -26
  5. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/get_snapshot_block_request.py +1 -1
  6. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/put_snapshot_block_request.py +2 -2
  7. capo_ebs-0.3.0/src/capo_ebs/types/start_snapshot_request.py +84 -0
  8. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/start_snapshot_response.py +1 -1
  9. {capo_ebs-0.2.0 → capo_ebs-0.3.0/src/capo_ebs.egg-info}/PKG-INFO +1 -1
  10. capo_ebs-0.2.0/src/capo_ebs/types/start_snapshot_request.py +0 -84
  11. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/LICENSE +0 -0
  12. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/README.md +0 -0
  13. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/setup.cfg +0 -0
  14. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/__init__.py +0 -0
  15. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_async.py +0 -0
  16. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_auth/_identity.py +0 -0
  17. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_auth/_providers.py +0 -0
  18. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_auth/_signers.py +0 -0
  19. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_auth/_sigv4.py +0 -0
  20. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_auth/_zapros_handler.py +0 -0
  21. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_body.py +0 -0
  22. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_iter.py +0 -0
  23. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_operations/ebs/complete_snapshot.py +0 -0
  24. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_operations/ebs/get_snapshot_block.py +0 -0
  25. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_operations/ebs/list_changed_blocks.py +0 -0
  26. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_operations/ebs/list_snapshot_blocks.py +0 -0
  27. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_operations/ebs/put_snapshot_block.py +0 -0
  28. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_operations/ebs/start_snapshot.py +0 -0
  29. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_pagination.py +0 -0
  30. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_protocol/__init__.py +0 -0
  31. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_protocol/errors.py +0 -0
  32. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_protocol/eventstream.py +0 -0
  33. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_protocol/serialize.py +0 -0
  34. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_protocol/xml.py +0 -0
  35. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_rule_engine/__init__.py +0 -0
  36. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_rule_engine/_aws_partition.py +0 -0
  37. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_rule_engine/_endpoint_rule_set.py +0 -0
  38. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_rule_engine/_endpoint_runtime.py +0 -0
  39. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_services/_aws_config.py +0 -0
  40. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/_services/_pipeline.py +0 -0
  41. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/errors/__init__.py +0 -0
  42. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/errors/_base.py +0 -0
  43. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/errors/access_denied_exception.py +0 -0
  44. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/errors/concurrent_limit_exceeded_exception.py +0 -0
  45. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/errors/conflict_exception.py +0 -0
  46. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/errors/internal_server_exception.py +0 -0
  47. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/errors/request_throttled_exception.py +0 -0
  48. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/errors/resource_not_found_exception.py +0 -0
  49. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/errors/service_quota_exceeded_exception.py +0 -0
  50. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/errors/validation_exception.py +0 -0
  51. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/py.typed +0 -0
  52. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/_prelude/blob.py +0 -0
  53. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/_prelude/timestamp.py +0 -0
  54. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/access_denied_exception_reason.py +0 -0
  55. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/block.py +0 -0
  56. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/block_data.py +0 -0
  57. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/block_index.py +0 -0
  58. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/block_size.py +0 -0
  59. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/block_token.py +0 -0
  60. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/blocks.py +0 -0
  61. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/boolean.py +0 -0
  62. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/changed_block.py +0 -0
  63. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/changed_blocks.py +0 -0
  64. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/changed_blocks_count.py +0 -0
  65. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/checksum.py +0 -0
  66. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/checksum_aggregation_method.py +0 -0
  67. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/checksum_algorithm.py +0 -0
  68. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/complete_snapshot_request.py +0 -0
  69. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/complete_snapshot_response.py +0 -0
  70. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/data_length.py +0 -0
  71. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/description.py +0 -0
  72. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/error_message.py +0 -0
  73. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/get_snapshot_block_response.py +0 -0
  74. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/idempotency_token.py +0 -0
  75. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/kms_key_arn.py +0 -0
  76. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/list_changed_blocks_request.py +0 -0
  77. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/list_changed_blocks_response.py +0 -0
  78. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/list_snapshot_blocks_request.py +0 -0
  79. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/list_snapshot_blocks_response.py +0 -0
  80. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/max_results.py +0 -0
  81. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/owner_id.py +0 -0
  82. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/page_token.py +0 -0
  83. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/progress.py +0 -0
  84. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/put_snapshot_block_response.py +0 -0
  85. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/request_throttled_exception_reason.py +0 -0
  86. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/resource_not_found_exception_reason.py +0 -0
  87. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/service_quota_exceeded_exception_reason.py +0 -0
  88. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/snapshot_id.py +0 -0
  89. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/sse_type.py +0 -0
  90. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/status.py +0 -0
  91. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/tag.py +0 -0
  92. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/tag_key.py +0 -0
  93. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/tag_value.py +0 -0
  94. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/tags.py +0 -0
  95. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/time_stamp.py +0 -0
  96. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/timeout.py +0 -0
  97. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/validation_exception_reason.py +0 -0
  98. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs/types/volume_size.py +0 -0
  99. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs.egg-info/SOURCES.txt +0 -0
  100. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs.egg-info/dependency_links.txt +0 -0
  101. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs.egg-info/requires.txt +0 -0
  102. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/src/capo_ebs.egg-info/top_level.txt +0 -0
  103. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/tests/test_body.py +0 -0
  104. {capo_ebs-0.2.0 → capo_ebs-0.3.0}/tests/test_sigv4.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: capo-ebs
3
- Version: 0.2.0
3
+ Version: 0.3.0
4
4
  Summary: Python SDK for AWS EBS.
5
5
  Classifier: Development Status :: 4 - Beta
6
6
  Classifier: Intended Audience :: Developers
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "capo-ebs"
3
- version = "0.2.0"
3
+ version = "0.3.0"
4
4
  description = "Python SDK for AWS EBS."
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"
@@ -173,7 +173,7 @@ class AsyncEBSClient:
173
173
  "capo_ebs.types.checksum_aggregation_method.ChecksumAggregationMethod"
174
174
  ] = None,
175
175
  ) -> "capo_ebs.types.complete_snapshot_response.CompleteSnapshotResponse":
176
- r"""<p>Seals and completes the snapshot after all of the required blocks of data have been written to it. Completing the snapshot changes the status to <code>completed</code>. You cannot write new blocks to a snapshot after it has been completed.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
176
+ """<p>Seals and completes the snapshot after all of the required blocks of data have been written to it. Completing the snapshot changes the status to <code>completed</code>. You cannot write new blocks to a snapshot after it has been completed.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
177
177
 
178
178
  Args:
179
179
  snapshot_id: <p>The ID of the snapshot.</p>
@@ -184,8 +184,8 @@ class AsyncEBSClient:
184
184
 
185
185
  Raises:
186
186
  capo_ebs.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
187
- capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
188
- capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
187
+ capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
188
+ capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
189
189
  capo_ebs.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
190
190
  capo_ebs.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>Your current service quotas do not allow you to perform this action.</p>
191
191
  capo_ebs.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints of the EBS direct APIs.</p>
@@ -236,17 +236,17 @@ class AsyncEBSClient:
236
236
  *,
237
237
  config_overrides: Optional[AsyncEBSClientConfig] = None,
238
238
  ) -> "AsyncGenerator[capo_ebs.types.get_snapshot_block_response.GetSnapshotBlockResponse]":
239
- r"""<p>Returns the data in a block in an Amazon Elastic Block Store snapshot.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
239
+ """<p>Returns the data in a block in an Amazon Elastic Block Store snapshot.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
240
240
 
241
241
  Args:
242
- snapshot_id: <p>The ID of the snapshot containing the block from which to get data.</p> <important> <p>If the specified snapshot is encrypted, you must have permission to use the KMS key that was used to encrypt the snapshot. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html\"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
242
+ snapshot_id: <p>The ID of the snapshot containing the block from which to get data.</p> <important> <p>If the specified snapshot is encrypted, you must have permission to use the KMS key that was used to encrypt the snapshot. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
243
243
  block_index: <p>The block index of the block in which to read the data. A block index is a logical index in units of <code>512</code> KiB blocks. To identify the block index, divide the logical offset of the data in the logical volume by the block size (logical offset of data/<code>524288</code>). The logical offset of the data must be <code>512</code> KiB aligned.</p>
244
244
  block_token: <p>The block token of the block from which to get data. You can obtain the <code>BlockToken</code> by running the <code>ListChangedBlocks</code> or <code>ListSnapshotBlocks</code> operations.</p>
245
245
 
246
246
  Raises:
247
247
  capo_ebs.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
248
- capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
249
- capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
248
+ capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
249
+ capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
250
250
  capo_ebs.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
251
251
  capo_ebs.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>Your current service quotas do not allow you to perform this action.</p>
252
252
  capo_ebs.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints of the EBS direct APIs.</p>
@@ -295,7 +295,7 @@ class AsyncEBSClient:
295
295
  max_results: Optional["capo_ebs.types.max_results.MaxResults"] = None,
296
296
  starting_block_index: Optional["capo_ebs.types.block_index.BlockIndex"] = None,
297
297
  ) -> "capo_ebs.types.list_changed_blocks_response.ListChangedBlocksResponse":
298
- r"""<p>Returns information about the blocks that are different between two Amazon Elastic Block Store snapshots of the same volume/snapshot lineage.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
298
+ """<p>Returns information about the blocks that are different between two Amazon Elastic Block Store snapshots of the same volume/snapshot lineage.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
299
299
 
300
300
  Args:
301
301
  first_snapshot_id: <p>The ID of the first snapshot to use for the comparison.</p> <important> <p>The <code>FirstSnapshotID</code> parameter must be specified with a <code>SecondSnapshotId</code> parameter; otherwise, an error occurs.</p> </important>
@@ -306,8 +306,8 @@ class AsyncEBSClient:
306
306
 
307
307
  Raises:
308
308
  capo_ebs.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
309
- capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
310
- capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
309
+ capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
310
+ capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
311
311
  capo_ebs.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
312
312
  capo_ebs.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>Your current service quotas do not allow you to perform this action.</p>
313
313
  capo_ebs.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints of the EBS direct APIs.</p>
@@ -384,7 +384,7 @@ class AsyncEBSClient:
384
384
  max_results: Optional["capo_ebs.types.max_results.MaxResults"] = None,
385
385
  starting_block_index: Optional["capo_ebs.types.block_index.BlockIndex"] = None,
386
386
  ) -> "capo_ebs.types.list_snapshot_blocks_response.ListSnapshotBlocksResponse":
387
- r"""<p>Returns information about the blocks in an Amazon Elastic Block Store snapshot.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
387
+ """<p>Returns information about the blocks in an Amazon Elastic Block Store snapshot.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
388
388
 
389
389
  Args:
390
390
  snapshot_id: <p>The ID of the snapshot from which to get block indexes and block tokens.</p>
@@ -394,8 +394,8 @@ class AsyncEBSClient:
394
394
 
395
395
  Raises:
396
396
  capo_ebs.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
397
- capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
398
- capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
397
+ capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
398
+ capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
399
399
  capo_ebs.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
400
400
  capo_ebs.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>Your current service quotas do not allow you to perform this action.</p>
401
401
  capo_ebs.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints of the EBS direct APIs.</p>
@@ -471,12 +471,12 @@ class AsyncEBSClient:
471
471
  config_overrides: Optional[AsyncEBSClientConfig] = None,
472
472
  progress: Optional["capo_ebs.types.progress.Progress"] = None,
473
473
  ) -> "capo_ebs.types.put_snapshot_block_response.PutSnapshotBlockResponse":
474
- r"""<p>Writes a block of data to a snapshot. If the specified block contains data, the existing data is overwritten. The target snapshot must be in the <code>pending</code> state.</p> <p>Data written to a snapshot must be aligned with 512-KiB sectors.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
474
+ """<p>Writes a block of data to a snapshot. If the specified block contains data, the existing data is overwritten. The target snapshot must be in the <code>pending</code> state.</p> <p>Data written to a snapshot must be aligned with 512-KiB sectors.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
475
475
 
476
476
  Args:
477
- snapshot_id: <p>The ID of the snapshot.</p> <important> <p>If the specified snapshot is encrypted, you must have permission to use the KMS key that was used to encrypt the snapshot. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html\"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>..</p> </important>
477
+ snapshot_id: <p>The ID of the snapshot.</p> <important> <p>If the specified snapshot is encrypted, you must have permission to use the KMS key that was used to encrypt the snapshot. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>..</p> </important>
478
478
  block_index: <p>The block index of the block in which to write the data. A block index is a logical index in units of <code>512</code> KiB blocks. To identify the block index, divide the logical offset of the data in the logical volume by the block size (logical offset of data/<code>524288</code>). The logical offset of the data must be <code>512</code> KiB aligned.</p>
479
- block_data: <p>The data to write to the block.</p> <p>The block data is not signed as part of the Signature Version 4 signing process. As a result, you must generate and provide a Base64-encoded SHA256 checksum for the block data using the <b>x-amz-Checksum</b> header. Also, you must specify the checksum algorithm using the <b>x-amz-Checksum-Algorithm</b> header. The checksum that you provide is part of the Signature Version 4 signing process. It is validated against a checksum generated by Amazon EBS to ensure the validity and authenticity of the data. If the checksums do not correspond, the request fails. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapis-using-checksums\"> Using checksums with the EBS direct APIs</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
479
+ block_data: <p>The data to write to the block.</p> <p>The block data is not signed as part of the Signature Version 4 signing process. As a result, you must generate and provide a Base64-encoded SHA256 checksum for the block data using the <b>x-amz-Checksum</b> header. Also, you must specify the checksum algorithm using the <b>x-amz-Checksum-Algorithm</b> header. The checksum that you provide is part of the Signature Version 4 signing process. It is validated against a checksum generated by Amazon EBS to ensure the validity and authenticity of the data. If the checksums do not correspond, the request fails. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapis-using-checksums"> Using checksums with the EBS direct APIs</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
480
480
  data_length: <p>The size of the data to write to the block, in bytes. Currently, the only supported size is <code>524288</code> bytes.</p> <p>Valid values: <code>524288</code> </p>
481
481
  progress: <p>The progress of the write process, as a percentage.</p>
482
482
  checksum: <p>A Base64-encoded SHA256 checksum of the data. Only SHA256 checksums are supported.</p>
@@ -484,8 +484,8 @@ class AsyncEBSClient:
484
484
 
485
485
  Raises:
486
486
  capo_ebs.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
487
- capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
488
- capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
487
+ capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
488
+ capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
489
489
  capo_ebs.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
490
490
  capo_ebs.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>Your current service quotas do not allow you to perform this action.</p>
491
491
  capo_ebs.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints of the EBS direct APIs.</p>
@@ -543,24 +543,24 @@ class AsyncEBSClient:
543
543
  kms_key_arn: Optional["capo_ebs.types.kms_key_arn.KmsKeyArn"] = None,
544
544
  timeout: Optional["capo_ebs.types.timeout.Timeout"] = None,
545
545
  ) -> "capo_ebs.types.start_snapshot_response.StartSnapshotResponse":
546
- r"""<p>Creates a new Amazon EBS snapshot. The new snapshot enters the <code>pending</code> state after the request completes. </p> <p>After creating the snapshot, use <a href=\"https://docs.aws.amazon.com/ebs/latest/APIReference/API_PutSnapshotBlock.html\"> PutSnapshotBlock</a> to write blocks of data to the snapshot.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
546
+ """<p>Creates a new Amazon EBS snapshot. The new snapshot enters the <code>pending</code> state after the request completes. </p> <p>After creating the snapshot, use <a href="https://docs.aws.amazon.com/ebs/latest/APIReference/API_PutSnapshotBlock.html"> PutSnapshotBlock</a> to write blocks of data to the snapshot.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
547
547
 
548
548
  Args:
549
549
  volume_size: <p>The size of the volume, in GiB. The maximum size is <code>65536</code> GiB (64 TiB).</p>
550
- parent_snapshot_id: <p>The ID of the parent snapshot. If there is no parent snapshot, or if you are creating the first snapshot for an on-premises volume, omit this parameter.</p> <p>You can't specify <b>ParentSnapshotId</b> and <b>Encrypted</b> in the same request. If you specify both parameters, the request fails with <code>ValidationException</code>.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default\"> encryption by default</a>. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html\"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>If you specify an encrypted parent snapshot, you must have permission to use the KMS key that was used to encrypt the parent snapshot. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions\"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
550
+ parent_snapshot_id: <p>The ID of the parent snapshot. If there is no parent snapshot, or if you are creating the first snapshot for an on-premises volume, omit this parameter.</p> <p>You can't specify <b>ParentSnapshotId</b> and <b>Encrypted</b> in the same request. If you specify both parameters, the request fails with <code>ValidationException</code>.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default"> encryption by default</a>. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>If you specify an encrypted parent snapshot, you must have permission to use the KMS key that was used to encrypt the parent snapshot. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
551
551
  tags: <p>The tags to apply to the snapshot.</p>
552
552
  description: <p>A description for the snapshot.</p>
553
- client_token: <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Idempotency ensures that an API request completes only once. With an idempotent request, if the original request completes successfully. The subsequent retries with the same client token return the result from the original successful request and they have no additional effect.</p> <p>If you do not specify a client token, one is automatically generated by the Amazon Web Services SDK.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-direct-api-idempotency.html\"> Idempotency for StartSnapshot API</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
554
- encrypted: <p>Indicates whether to encrypt the snapshot.</p> <p>You can't specify <b>Encrypted</b> and <b> ParentSnapshotId</b> in the same request. If you specify both parameters, the request fails with <code>ValidationException</code>.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default\"> encryption by default</a>. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html\"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>To create an encrypted snapshot, you must have permission to use the KMS key. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions\"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
555
- kms_key_arn: <p>The Amazon Resource Name (ARN) of the Key Management Service (KMS) key to be used to encrypt the snapshot.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default\"> encryption by default</a>. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html\"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>To create an encrypted snapshot, you must have permission to use the KMS key. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions\"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
553
+ client_token: <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Idempotency ensures that an API request completes only once. With an idempotent request, if the original request completes successfully. The subsequent retries with the same client token return the result from the original successful request and they have no additional effect.</p> <p>If you do not specify a client token, one is automatically generated by the Amazon Web Services SDK.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-direct-api-idempotency.html"> Idempotency for StartSnapshot API</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
554
+ encrypted: <p>Indicates whether to encrypt the snapshot.</p> <p>You can't specify <b>Encrypted</b> and <b> ParentSnapshotId</b> in the same request. If you specify both parameters, the request fails with <code>ValidationException</code>.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default"> encryption by default</a>. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>To create an encrypted snapshot, you must have permission to use the KMS key. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
555
+ kms_key_arn: <p>The Amazon Resource Name (ARN) of the Key Management Service (KMS) key to be used to encrypt the snapshot.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default"> encryption by default</a>. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>To create an encrypted snapshot, you must have permission to use the KMS key. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
556
556
  timeout: <p>The amount of time (in minutes) after which the snapshot is automatically cancelled if:</p> <ul> <li> <p>No blocks are written to the snapshot.</p> </li> <li> <p>The snapshot is not completed after writing the last block of data.</p> </li> </ul> <p>If no value is specified, the timeout defaults to <code>60</code> minutes.</p>
557
557
 
558
558
  Raises:
559
559
  capo_ebs.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
560
- capo_ebs.errors.concurrent_limit_exceeded_exception.ConcurrentLimitExceededException: <p>You have reached the limit for concurrent API requests. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapi-performance\">Optimizing performance of the EBS direct APIs</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
560
+ capo_ebs.errors.concurrent_limit_exceeded_exception.ConcurrentLimitExceededException: <p>You have reached the limit for concurrent API requests. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapi-performance">Optimizing performance of the EBS direct APIs</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
561
561
  capo_ebs.errors.conflict_exception.ConflictException: <p>The request uses the same client token as a previous, but non-identical request.</p>
562
- capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
563
- capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
562
+ capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
563
+ capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
564
564
  capo_ebs.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
565
565
  capo_ebs.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>Your current service quotas do not allow you to perform this action.</p>
566
566
  capo_ebs.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints of the EBS direct APIs.</p>
@@ -173,7 +173,7 @@ class EBSClient:
173
173
  "capo_ebs.types.checksum_aggregation_method.ChecksumAggregationMethod"
174
174
  ] = None,
175
175
  ) -> "capo_ebs.types.complete_snapshot_response.CompleteSnapshotResponse":
176
- r"""<p>Seals and completes the snapshot after all of the required blocks of data have been written to it. Completing the snapshot changes the status to <code>completed</code>. You cannot write new blocks to a snapshot after it has been completed.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
176
+ """<p>Seals and completes the snapshot after all of the required blocks of data have been written to it. Completing the snapshot changes the status to <code>completed</code>. You cannot write new blocks to a snapshot after it has been completed.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
177
177
 
178
178
  Args:
179
179
  snapshot_id: <p>The ID of the snapshot.</p>
@@ -184,8 +184,8 @@ class EBSClient:
184
184
 
185
185
  Raises:
186
186
  capo_ebs.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
187
- capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
188
- capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
187
+ capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
188
+ capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
189
189
  capo_ebs.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
190
190
  capo_ebs.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>Your current service quotas do not allow you to perform this action.</p>
191
191
  capo_ebs.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints of the EBS direct APIs.</p>
@@ -237,17 +237,17 @@ class EBSClient:
237
237
  ) -> (
238
238
  "Generator[capo_ebs.types.get_snapshot_block_response.GetSnapshotBlockResponse]"
239
239
  ):
240
- r"""<p>Returns the data in a block in an Amazon Elastic Block Store snapshot.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
240
+ """<p>Returns the data in a block in an Amazon Elastic Block Store snapshot.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
241
241
 
242
242
  Args:
243
- snapshot_id: <p>The ID of the snapshot containing the block from which to get data.</p> <important> <p>If the specified snapshot is encrypted, you must have permission to use the KMS key that was used to encrypt the snapshot. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html\"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
243
+ snapshot_id: <p>The ID of the snapshot containing the block from which to get data.</p> <important> <p>If the specified snapshot is encrypted, you must have permission to use the KMS key that was used to encrypt the snapshot. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
244
244
  block_index: <p>The block index of the block in which to read the data. A block index is a logical index in units of <code>512</code> KiB blocks. To identify the block index, divide the logical offset of the data in the logical volume by the block size (logical offset of data/<code>524288</code>). The logical offset of the data must be <code>512</code> KiB aligned.</p>
245
245
  block_token: <p>The block token of the block from which to get data. You can obtain the <code>BlockToken</code> by running the <code>ListChangedBlocks</code> or <code>ListSnapshotBlocks</code> operations.</p>
246
246
 
247
247
  Raises:
248
248
  capo_ebs.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
249
- capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
250
- capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
249
+ capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
250
+ capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
251
251
  capo_ebs.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
252
252
  capo_ebs.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>Your current service quotas do not allow you to perform this action.</p>
253
253
  capo_ebs.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints of the EBS direct APIs.</p>
@@ -295,7 +295,7 @@ class EBSClient:
295
295
  max_results: Optional["capo_ebs.types.max_results.MaxResults"] = None,
296
296
  starting_block_index: Optional["capo_ebs.types.block_index.BlockIndex"] = None,
297
297
  ) -> "capo_ebs.types.list_changed_blocks_response.ListChangedBlocksResponse":
298
- r"""<p>Returns information about the blocks that are different between two Amazon Elastic Block Store snapshots of the same volume/snapshot lineage.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
298
+ """<p>Returns information about the blocks that are different between two Amazon Elastic Block Store snapshots of the same volume/snapshot lineage.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
299
299
 
300
300
  Args:
301
301
  first_snapshot_id: <p>The ID of the first snapshot to use for the comparison.</p> <important> <p>The <code>FirstSnapshotID</code> parameter must be specified with a <code>SecondSnapshotId</code> parameter; otherwise, an error occurs.</p> </important>
@@ -306,8 +306,8 @@ class EBSClient:
306
306
 
307
307
  Raises:
308
308
  capo_ebs.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
309
- capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
310
- capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
309
+ capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
310
+ capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
311
311
  capo_ebs.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
312
312
  capo_ebs.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>Your current service quotas do not allow you to perform this action.</p>
313
313
  capo_ebs.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints of the EBS direct APIs.</p>
@@ -383,7 +383,7 @@ class EBSClient:
383
383
  max_results: Optional["capo_ebs.types.max_results.MaxResults"] = None,
384
384
  starting_block_index: Optional["capo_ebs.types.block_index.BlockIndex"] = None,
385
385
  ) -> "capo_ebs.types.list_snapshot_blocks_response.ListSnapshotBlocksResponse":
386
- r"""<p>Returns information about the blocks in an Amazon Elastic Block Store snapshot.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
386
+ """<p>Returns information about the blocks in an Amazon Elastic Block Store snapshot.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
387
387
 
388
388
  Args:
389
389
  snapshot_id: <p>The ID of the snapshot from which to get block indexes and block tokens.</p>
@@ -393,8 +393,8 @@ class EBSClient:
393
393
 
394
394
  Raises:
395
395
  capo_ebs.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
396
- capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
397
- capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
396
+ capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
397
+ capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
398
398
  capo_ebs.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
399
399
  capo_ebs.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>Your current service quotas do not allow you to perform this action.</p>
400
400
  capo_ebs.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints of the EBS direct APIs.</p>
@@ -469,12 +469,12 @@ class EBSClient:
469
469
  config_overrides: Optional[EBSClientConfig] = None,
470
470
  progress: Optional["capo_ebs.types.progress.Progress"] = None,
471
471
  ) -> "capo_ebs.types.put_snapshot_block_response.PutSnapshotBlockResponse":
472
- r"""<p>Writes a block of data to a snapshot. If the specified block contains data, the existing data is overwritten. The target snapshot must be in the <code>pending</code> state.</p> <p>Data written to a snapshot must be aligned with 512-KiB sectors.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
472
+ """<p>Writes a block of data to a snapshot. If the specified block contains data, the existing data is overwritten. The target snapshot must be in the <code>pending</code> state.</p> <p>Data written to a snapshot must be aligned with 512-KiB sectors.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
473
473
 
474
474
  Args:
475
- snapshot_id: <p>The ID of the snapshot.</p> <important> <p>If the specified snapshot is encrypted, you must have permission to use the KMS key that was used to encrypt the snapshot. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html\"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>..</p> </important>
475
+ snapshot_id: <p>The ID of the snapshot.</p> <important> <p>If the specified snapshot is encrypted, you must have permission to use the KMS key that was used to encrypt the snapshot. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>..</p> </important>
476
476
  block_index: <p>The block index of the block in which to write the data. A block index is a logical index in units of <code>512</code> KiB blocks. To identify the block index, divide the logical offset of the data in the logical volume by the block size (logical offset of data/<code>524288</code>). The logical offset of the data must be <code>512</code> KiB aligned.</p>
477
- block_data: <p>The data to write to the block.</p> <p>The block data is not signed as part of the Signature Version 4 signing process. As a result, you must generate and provide a Base64-encoded SHA256 checksum for the block data using the <b>x-amz-Checksum</b> header. Also, you must specify the checksum algorithm using the <b>x-amz-Checksum-Algorithm</b> header. The checksum that you provide is part of the Signature Version 4 signing process. It is validated against a checksum generated by Amazon EBS to ensure the validity and authenticity of the data. If the checksums do not correspond, the request fails. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapis-using-checksums\"> Using checksums with the EBS direct APIs</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
477
+ block_data: <p>The data to write to the block.</p> <p>The block data is not signed as part of the Signature Version 4 signing process. As a result, you must generate and provide a Base64-encoded SHA256 checksum for the block data using the <b>x-amz-Checksum</b> header. Also, you must specify the checksum algorithm using the <b>x-amz-Checksum-Algorithm</b> header. The checksum that you provide is part of the Signature Version 4 signing process. It is validated against a checksum generated by Amazon EBS to ensure the validity and authenticity of the data. If the checksums do not correspond, the request fails. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapis-using-checksums"> Using checksums with the EBS direct APIs</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
478
478
  data_length: <p>The size of the data to write to the block, in bytes. Currently, the only supported size is <code>524288</code> bytes.</p> <p>Valid values: <code>524288</code> </p>
479
479
  progress: <p>The progress of the write process, as a percentage.</p>
480
480
  checksum: <p>A Base64-encoded SHA256 checksum of the data. Only SHA256 checksums are supported.</p>
@@ -482,8 +482,8 @@ class EBSClient:
482
482
 
483
483
  Raises:
484
484
  capo_ebs.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
485
- capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
486
- capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
485
+ capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
486
+ capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
487
487
  capo_ebs.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
488
488
  capo_ebs.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>Your current service quotas do not allow you to perform this action.</p>
489
489
  capo_ebs.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints of the EBS direct APIs.</p>
@@ -540,24 +540,24 @@ class EBSClient:
540
540
  kms_key_arn: Optional["capo_ebs.types.kms_key_arn.KmsKeyArn"] = None,
541
541
  timeout: Optional["capo_ebs.types.timeout.Timeout"] = None,
542
542
  ) -> "capo_ebs.types.start_snapshot_response.StartSnapshotResponse":
543
- r"""<p>Creates a new Amazon EBS snapshot. The new snapshot enters the <code>pending</code> state after the request completes. </p> <p>After creating the snapshot, use <a href=\"https://docs.aws.amazon.com/ebs/latest/APIReference/API_PutSnapshotBlock.html\"> PutSnapshotBlock</a> to write blocks of data to the snapshot.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
543
+ """<p>Creates a new Amazon EBS snapshot. The new snapshot enters the <code>pending</code> state after the request completes. </p> <p>After creating the snapshot, use <a href="https://docs.aws.amazon.com/ebs/latest/APIReference/API_PutSnapshotBlock.html"> PutSnapshotBlock</a> to write blocks of data to the snapshot.</p> <note> <p>You should always retry requests that receive server (<code>5xx</code>) error responses, and <code>ThrottlingException</code> and <code>RequestThrottledException</code> client error responses. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </note>
544
544
 
545
545
  Args:
546
546
  volume_size: <p>The size of the volume, in GiB. The maximum size is <code>65536</code> GiB (64 TiB).</p>
547
- parent_snapshot_id: <p>The ID of the parent snapshot. If there is no parent snapshot, or if you are creating the first snapshot for an on-premises volume, omit this parameter.</p> <p>You can't specify <b>ParentSnapshotId</b> and <b>Encrypted</b> in the same request. If you specify both parameters, the request fails with <code>ValidationException</code>.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default\"> encryption by default</a>. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html\"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>If you specify an encrypted parent snapshot, you must have permission to use the KMS key that was used to encrypt the parent snapshot. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions\"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
547
+ parent_snapshot_id: <p>The ID of the parent snapshot. If there is no parent snapshot, or if you are creating the first snapshot for an on-premises volume, omit this parameter.</p> <p>You can't specify <b>ParentSnapshotId</b> and <b>Encrypted</b> in the same request. If you specify both parameters, the request fails with <code>ValidationException</code>.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default"> encryption by default</a>. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>If you specify an encrypted parent snapshot, you must have permission to use the KMS key that was used to encrypt the parent snapshot. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
548
548
  tags: <p>The tags to apply to the snapshot.</p>
549
549
  description: <p>A description for the snapshot.</p>
550
- client_token: <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Idempotency ensures that an API request completes only once. With an idempotent request, if the original request completes successfully. The subsequent retries with the same client token return the result from the original successful request and they have no additional effect.</p> <p>If you do not specify a client token, one is automatically generated by the Amazon Web Services SDK.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-direct-api-idempotency.html\"> Idempotency for StartSnapshot API</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
551
- encrypted: <p>Indicates whether to encrypt the snapshot.</p> <p>You can't specify <b>Encrypted</b> and <b> ParentSnapshotId</b> in the same request. If you specify both parameters, the request fails with <code>ValidationException</code>.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default\"> encryption by default</a>. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html\"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>To create an encrypted snapshot, you must have permission to use the KMS key. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions\"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
552
- kms_key_arn: <p>The Amazon Resource Name (ARN) of the Key Management Service (KMS) key to be used to encrypt the snapshot.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default\"> encryption by default</a>. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html\"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>To create an encrypted snapshot, you must have permission to use the KMS key. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions\"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
550
+ client_token: <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Idempotency ensures that an API request completes only once. With an idempotent request, if the original request completes successfully. The subsequent retries with the same client token return the result from the original successful request and they have no additional effect.</p> <p>If you do not specify a client token, one is automatically generated by the Amazon Web Services SDK.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-direct-api-idempotency.html"> Idempotency for StartSnapshot API</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
551
+ encrypted: <p>Indicates whether to encrypt the snapshot.</p> <p>You can't specify <b>Encrypted</b> and <b> ParentSnapshotId</b> in the same request. If you specify both parameters, the request fails with <code>ValidationException</code>.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default"> encryption by default</a>. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>To create an encrypted snapshot, you must have permission to use the KMS key. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
552
+ kms_key_arn: <p>The Amazon Resource Name (ARN) of the Key Management Service (KMS) key to be used to encrypt the snapshot.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default"> encryption by default</a>. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>To create an encrypted snapshot, you must have permission to use the KMS key. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>
553
553
  timeout: <p>The amount of time (in minutes) after which the snapshot is automatically cancelled if:</p> <ul> <li> <p>No blocks are written to the snapshot.</p> </li> <li> <p>The snapshot is not completed after writing the last block of data.</p> </li> </ul> <p>If no value is specified, the timeout defaults to <code>60</code> minutes.</p>
554
554
 
555
555
  Raises:
556
556
  capo_ebs.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
557
- capo_ebs.errors.concurrent_limit_exceeded_exception.ConcurrentLimitExceededException: <p>You have reached the limit for concurrent API requests. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapi-performance\">Optimizing performance of the EBS direct APIs</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
557
+ capo_ebs.errors.concurrent_limit_exceeded_exception.ConcurrentLimitExceededException: <p>You have reached the limit for concurrent API requests. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapi-performance">Optimizing performance of the EBS direct APIs</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
558
558
  capo_ebs.errors.conflict_exception.ConflictException: <p>The request uses the same client token as a previous, but non-identical request.</p>
559
- capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
560
- capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html\">Error retries</a>.</p>
559
+ capo_ebs.errors.internal_server_exception.InternalServerException: <p>An internal error has occurred. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
560
+ capo_ebs.errors.request_throttled_exception.RequestThrottledException: <p>The number of API requests has exceeded the maximum allowed API request throttling limit for the snapshot. For more information see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/error-retries.html">Error retries</a>.</p>
561
561
  capo_ebs.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
562
562
  capo_ebs.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>Your current service quotas do not allow you to perform this action.</p>
563
563
  capo_ebs.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints of the EBS direct APIs.</p>
@@ -12,7 +12,7 @@ if TYPE_CHECKING:
12
12
 
13
13
  class GetSnapshotBlockRequest(TypedDict, closed=True):
14
14
  snapshot_id: "capo_ebs.types.snapshot_id.SnapshotId"
15
- r"""<p>The ID of the snapshot containing the block from which to get data.</p> <important> <p>If the specified snapshot is encrypted, you must have permission to use the KMS key that was used to encrypt the snapshot. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html\"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>"""
15
+ """<p>The ID of the snapshot containing the block from which to get data.</p> <important> <p>If the specified snapshot is encrypted, you must have permission to use the KMS key that was used to encrypt the snapshot. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>"""
16
16
  block_index: "capo_ebs.types.block_index.BlockIndex"
17
17
  """<p>The block index of the block in which to read the data. A block index is a logical index in units of <code>512</code> KiB blocks. To identify the block index, divide the logical offset of the data in the logical volume by the block size (logical offset of data/<code>524288</code>). The logical offset of the data must be <code>512</code> KiB aligned.</p>"""
18
18
  block_token: "capo_ebs.types.block_token.BlockToken"
@@ -16,11 +16,11 @@ if TYPE_CHECKING:
16
16
 
17
17
  class PutSnapshotBlockRequest(TypedDict, closed=True):
18
18
  snapshot_id: "capo_ebs.types.snapshot_id.SnapshotId"
19
- r"""<p>The ID of the snapshot.</p> <important> <p>If the specified snapshot is encrypted, you must have permission to use the KMS key that was used to encrypt the snapshot. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html\"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>..</p> </important>"""
19
+ """<p>The ID of the snapshot.</p> <important> <p>If the specified snapshot is encrypted, you must have permission to use the KMS key that was used to encrypt the snapshot. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>..</p> </important>"""
20
20
  block_index: "capo_ebs.types.block_index.BlockIndex"
21
21
  """<p>The block index of the block in which to write the data. A block index is a logical index in units of <code>512</code> KiB blocks. To identify the block index, divide the logical offset of the data in the logical volume by the block size (logical offset of data/<code>524288</code>). The logical offset of the data must be <code>512</code> KiB aligned.</p>"""
22
22
  block_data: "capo_ebs.types.block_data.BlockData"
23
- r"""<p>The data to write to the block.</p> <p>The block data is not signed as part of the Signature Version 4 signing process. As a result, you must generate and provide a Base64-encoded SHA256 checksum for the block data using the <b>x-amz-Checksum</b> header. Also, you must specify the checksum algorithm using the <b>x-amz-Checksum-Algorithm</b> header. The checksum that you provide is part of the Signature Version 4 signing process. It is validated against a checksum generated by Amazon EBS to ensure the validity and authenticity of the data. If the checksums do not correspond, the request fails. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapis-using-checksums\"> Using checksums with the EBS direct APIs</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>"""
23
+ """<p>The data to write to the block.</p> <p>The block data is not signed as part of the Signature Version 4 signing process. As a result, you must generate and provide a Base64-encoded SHA256 checksum for the block data using the <b>x-amz-Checksum</b> header. Also, you must specify the checksum algorithm using the <b>x-amz-Checksum-Algorithm</b> header. The checksum that you provide is part of the Signature Version 4 signing process. It is validated against a checksum generated by Amazon EBS to ensure the validity and authenticity of the data. If the checksums do not correspond, the request fails. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapis-using-checksums"> Using checksums with the EBS direct APIs</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>"""
24
24
  data_length: "capo_ebs.types.data_length.DataLength"
25
25
  """<p>The size of the data to write to the block, in bytes. Currently, the only supported size is <code>524288</code> bytes.</p> <p>Valid values: <code>524288</code> </p>"""
26
26
  progress: NotRequired["capo_ebs.types.progress.Progress"]
@@ -0,0 +1,84 @@
1
+ """Generated from Smithy shape ``com.amazonaws.ebs#StartSnapshotRequest``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ from capo_ebs.errors import DeserializationError
8
+
9
+ if TYPE_CHECKING:
10
+ import capo_ebs.types.boolean
11
+ import capo_ebs.types.description
12
+ import capo_ebs.types.idempotency_token
13
+ import capo_ebs.types.kms_key_arn
14
+ import capo_ebs.types.snapshot_id
15
+ import capo_ebs.types.tags
16
+ import capo_ebs.types.timeout
17
+ import capo_ebs.types.volume_size
18
+
19
+
20
+ class StartSnapshotRequest(TypedDict, closed=True):
21
+ volume_size: "capo_ebs.types.volume_size.VolumeSize"
22
+ """<p>The size of the volume, in GiB. The maximum size is <code>65536</code> GiB (64 TiB).</p>"""
23
+ parent_snapshot_id: NotRequired["capo_ebs.types.snapshot_id.SnapshotId"]
24
+ """<p>The ID of the parent snapshot. If there is no parent snapshot, or if you are creating the first snapshot for an on-premises volume, omit this parameter.</p> <p>You can't specify <b>ParentSnapshotId</b> and <b>Encrypted</b> in the same request. If you specify both parameters, the request fails with <code>ValidationException</code>.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default"> encryption by default</a>. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>If you specify an encrypted parent snapshot, you must have permission to use the KMS key that was used to encrypt the parent snapshot. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>"""
25
+ tags: NotRequired["capo_ebs.types.tags.Tags"]
26
+ """<p>The tags to apply to the snapshot.</p>"""
27
+ description: NotRequired["capo_ebs.types.description.Description"]
28
+ """<p>A description for the snapshot.</p>"""
29
+ client_token: NotRequired["capo_ebs.types.idempotency_token.IdempotencyToken"]
30
+ """<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Idempotency ensures that an API request completes only once. With an idempotent request, if the original request completes successfully. The subsequent retries with the same client token return the result from the original successful request and they have no additional effect.</p> <p>If you do not specify a client token, one is automatically generated by the Amazon Web Services SDK.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-direct-api-idempotency.html"> Idempotency for StartSnapshot API</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>"""
31
+ encrypted: NotRequired["capo_ebs.types.boolean.Boolean"]
32
+ """<p>Indicates whether to encrypt the snapshot.</p> <p>You can't specify <b>Encrypted</b> and <b> ParentSnapshotId</b> in the same request. If you specify both parameters, the request fails with <code>ValidationException</code>.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default"> encryption by default</a>. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>To create an encrypted snapshot, you must have permission to use the KMS key. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>"""
33
+ kms_key_arn: NotRequired["capo_ebs.types.kms_key_arn.KmsKeyArn"]
34
+ """<p>The Amazon Resource Name (ARN) of the Key Management Service (KMS) key to be used to encrypt the snapshot.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default"> encryption by default</a>. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>To create an encrypted snapshot, you must have permission to use the KMS key. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>"""
35
+ timeout: NotRequired["capo_ebs.types.timeout.Timeout"]
36
+ """<p>The amount of time (in minutes) after which the snapshot is automatically cancelled if:</p> <ul> <li> <p>No blocks are written to the snapshot.</p> </li> <li> <p>The snapshot is not completed after writing the last block of data.</p> </li> </ul> <p>If no value is specified, the timeout defaults to <code>60</code> minutes.</p>"""
37
+
38
+
39
+ # --- restJson1 ser/de ---
40
+ def serialize_json(value: StartSnapshotRequest) -> dict:
41
+ out: dict = {}
42
+ out["VolumeSize"] = value["volume_size"]
43
+ if "parent_snapshot_id" in value:
44
+ out["ParentSnapshotId"] = value["parent_snapshot_id"]
45
+ if "tags" in value:
46
+ import capo_ebs.types.tags
47
+
48
+ out["Tags"] = capo_ebs.types.tags.serialize_json(value["tags"])
49
+ if "description" in value:
50
+ out["Description"] = value["description"]
51
+ if "client_token" in value:
52
+ out["ClientToken"] = value["client_token"]
53
+ if "encrypted" in value:
54
+ out["Encrypted"] = value["encrypted"]
55
+ if "kms_key_arn" in value:
56
+ out["KmsKeyArn"] = value["kms_key_arn"]
57
+ if "timeout" in value:
58
+ out["Timeout"] = value["timeout"]
59
+ return out
60
+
61
+
62
+ def deserialize_json(data: dict) -> StartSnapshotRequest:
63
+ out: StartSnapshotRequest = {} # type: ignore[typeddict-item]
64
+ if data.get("VolumeSize") is not None:
65
+ out["volume_size"] = data["VolumeSize"]
66
+ else:
67
+ raise DeserializationError("StartSnapshotRequest.volume_size required")
68
+ if data.get("ParentSnapshotId") is not None:
69
+ out["parent_snapshot_id"] = data["ParentSnapshotId"]
70
+ if data.get("Tags") is not None:
71
+ import capo_ebs.types.tags
72
+
73
+ out["tags"] = capo_ebs.types.tags.deserialize_json(data["Tags"])
74
+ if data.get("Description") is not None:
75
+ out["description"] = data["Description"]
76
+ if data.get("ClientToken") is not None:
77
+ out["client_token"] = data["ClientToken"]
78
+ if data.get("Encrypted") is not None:
79
+ out["encrypted"] = data["Encrypted"]
80
+ if data.get("KmsKeyArn") is not None:
81
+ out["kms_key_arn"] = data["KmsKeyArn"]
82
+ if data.get("Timeout") is not None:
83
+ out["timeout"] = data["Timeout"]
84
+ return out
@@ -33,7 +33,7 @@ class StartSnapshotResponse(TypedDict, closed=True):
33
33
  block_size: NotRequired["capo_ebs.types.block_size.BlockSize"]
34
34
  """<p>The size of the blocks in the snapshot, in bytes.</p>"""
35
35
  tags: NotRequired["capo_ebs.types.tags.Tags"]
36
- r"""<p>The tags applied to the snapshot. You can specify up to 50 tags per snapshot. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html\"> Tagging your Amazon EC2 resources</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>"""
36
+ """<p>The tags applied to the snapshot. You can specify up to 50 tags per snapshot. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html"> Tagging your Amazon EC2 resources</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>"""
37
37
  parent_snapshot_id: NotRequired["capo_ebs.types.snapshot_id.SnapshotId"]
38
38
  """<p>The ID of the parent snapshot.</p>"""
39
39
  kms_key_arn: NotRequired["capo_ebs.types.kms_key_arn.KmsKeyArn"]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: capo-ebs
3
- Version: 0.2.0
3
+ Version: 0.3.0
4
4
  Summary: Python SDK for AWS EBS.
5
5
  Classifier: Development Status :: 4 - Beta
6
6
  Classifier: Intended Audience :: Developers
@@ -1,84 +0,0 @@
1
- """Generated from Smithy shape ``com.amazonaws.ebs#StartSnapshotRequest``."""
2
-
3
- from typing import TYPE_CHECKING
4
-
5
- from typing_extensions import NotRequired, TypedDict
6
-
7
- from capo_ebs.errors import DeserializationError
8
-
9
- if TYPE_CHECKING:
10
- import capo_ebs.types.boolean
11
- import capo_ebs.types.description
12
- import capo_ebs.types.idempotency_token
13
- import capo_ebs.types.kms_key_arn
14
- import capo_ebs.types.snapshot_id
15
- import capo_ebs.types.tags
16
- import capo_ebs.types.timeout
17
- import capo_ebs.types.volume_size
18
-
19
-
20
- class StartSnapshotRequest(TypedDict, closed=True):
21
- volume_size: "capo_ebs.types.volume_size.VolumeSize"
22
- """<p>The size of the volume, in GiB. The maximum size is <code>65536</code> GiB (64 TiB).</p>"""
23
- parent_snapshot_id: NotRequired["capo_ebs.types.snapshot_id.SnapshotId"]
24
- r"""<p>The ID of the parent snapshot. If there is no parent snapshot, or if you are creating the first snapshot for an on-premises volume, omit this parameter.</p> <p>You can't specify <b>ParentSnapshotId</b> and <b>Encrypted</b> in the same request. If you specify both parameters, the request fails with <code>ValidationException</code>.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default\"> encryption by default</a>. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html\"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>If you specify an encrypted parent snapshot, you must have permission to use the KMS key that was used to encrypt the parent snapshot. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions\"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>"""
25
- tags: NotRequired["capo_ebs.types.tags.Tags"]
26
- """<p>The tags to apply to the snapshot.</p>"""
27
- description: NotRequired["capo_ebs.types.description.Description"]
28
- """<p>A description for the snapshot.</p>"""
29
- client_token: NotRequired["capo_ebs.types.idempotency_token.IdempotencyToken"]
30
- r"""<p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Idempotency ensures that an API request completes only once. With an idempotent request, if the original request completes successfully. The subsequent retries with the same client token return the result from the original successful request and they have no additional effect.</p> <p>If you do not specify a client token, one is automatically generated by the Amazon Web Services SDK.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-direct-api-idempotency.html\"> Idempotency for StartSnapshot API</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>"""
31
- encrypted: NotRequired["capo_ebs.types.boolean.Boolean"]
32
- r"""<p>Indicates whether to encrypt the snapshot.</p> <p>You can't specify <b>Encrypted</b> and <b> ParentSnapshotId</b> in the same request. If you specify both parameters, the request fails with <code>ValidationException</code>.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default\"> encryption by default</a>. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html\"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>To create an encrypted snapshot, you must have permission to use the KMS key. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions\"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>"""
33
- kms_key_arn: NotRequired["capo_ebs.types.kms_key_arn.KmsKeyArn"]
34
- r"""<p>The Amazon Resource Name (ARN) of the Key Management Service (KMS) key to be used to encrypt the snapshot.</p> <p>The encryption status of the snapshot depends on the values that you specify for <b>Encrypted</b>, <b>KmsKeyArn</b>, and <b>ParentSnapshotId</b>, and whether your Amazon Web Services account is enabled for <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default\"> encryption by default</a>. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapis-using-encryption.html\"> Using encryption</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> <important> <p>To create an encrypted snapshot, you must have permission to use the KMS key. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebsapi-permissions.html#ebsapi-kms-permissions\"> Permissions to use Key Management Service keys</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p> </important>"""
35
- timeout: NotRequired["capo_ebs.types.timeout.Timeout"]
36
- """<p>The amount of time (in minutes) after which the snapshot is automatically cancelled if:</p> <ul> <li> <p>No blocks are written to the snapshot.</p> </li> <li> <p>The snapshot is not completed after writing the last block of data.</p> </li> </ul> <p>If no value is specified, the timeout defaults to <code>60</code> minutes.</p>"""
37
-
38
-
39
- # --- restJson1 ser/de ---
40
- def serialize_json(value: StartSnapshotRequest) -> dict:
41
- out: dict = {}
42
- out["VolumeSize"] = value["volume_size"]
43
- if "parent_snapshot_id" in value:
44
- out["ParentSnapshotId"] = value["parent_snapshot_id"]
45
- if "tags" in value:
46
- import capo_ebs.types.tags
47
-
48
- out["Tags"] = capo_ebs.types.tags.serialize_json(value["tags"])
49
- if "description" in value:
50
- out["Description"] = value["description"]
51
- if "client_token" in value:
52
- out["ClientToken"] = value["client_token"]
53
- if "encrypted" in value:
54
- out["Encrypted"] = value["encrypted"]
55
- if "kms_key_arn" in value:
56
- out["KmsKeyArn"] = value["kms_key_arn"]
57
- if "timeout" in value:
58
- out["Timeout"] = value["timeout"]
59
- return out
60
-
61
-
62
- def deserialize_json(data: dict) -> StartSnapshotRequest:
63
- out: StartSnapshotRequest = {} # type: ignore[typeddict-item]
64
- if data.get("VolumeSize") is not None:
65
- out["volume_size"] = data["VolumeSize"]
66
- else:
67
- raise DeserializationError("StartSnapshotRequest.volume_size required")
68
- if data.get("ParentSnapshotId") is not None:
69
- out["parent_snapshot_id"] = data["ParentSnapshotId"]
70
- if data.get("Tags") is not None:
71
- import capo_ebs.types.tags
72
-
73
- out["tags"] = capo_ebs.types.tags.deserialize_json(data["Tags"])
74
- if data.get("Description") is not None:
75
- out["description"] = data["Description"]
76
- if data.get("ClientToken") is not None:
77
- out["client_token"] = data["ClientToken"]
78
- if data.get("Encrypted") is not None:
79
- out["encrypted"] = data["Encrypted"]
80
- if data.get("KmsKeyArn") is not None:
81
- out["kms_key_arn"] = data["KmsKeyArn"]
82
- if data.get("Timeout") is not None:
83
- out["timeout"] = data["Timeout"]
84
- return out
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes