class Aws::EBS::Types::StartSnapshotRequest

@note When making an API call, you may pass StartSnapshotRequest

data as a hash:

    {
      volume_size: 1, # required
      parent_snapshot_id: "SnapshotId",
      tags: [
        {
          key: "TagKey",
          value: "TagValue",
        },
      ],
      description: "Description",
      client_token: "IdempotencyToken",
      encrypted: false,
      kms_key_arn: "KmsKeyArn",
      timeout: 1,
    }

@!attribute [rw] volume_size

The size of the volume, in GiB. The maximum size is `65536` GiB (64
TiB).
@return [Integer]

@!attribute [rw] parent_snapshot_id

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.

If your account is enabled for encryption by default, you cannot use
an unencrypted snapshot as a parent snapshot. You must first create
an encrypted copy of the parent snapshot using [CopySnapshot][1].

[1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CopySnapshot.html
@return [String]

@!attribute [rw] tags

The tags to apply to the snapshot.
@return [Array<Types::Tag>]

@!attribute [rw] description

A description for the snapshot.
@return [String]

@!attribute [rw] client_token

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.

If you do not specify a client token, one is automatically generated
by the Amazon Web Services SDK.

For more information, see [ Idempotency for StartSnapshot API][1] in
the *Amazon Elastic Compute Cloud User Guide*.

**A suitable default value is auto-generated.** You should normally
not need to pass this option.

[1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-direct-api-idempotency.html
@return [String]

@!attribute [rw] encrypted

Indicates whether to encrypt the snapshot. To create an encrypted
snapshot, specify `true`. To create an unencrypted snapshot, omit
this parameter.

If you specify a value for **ParentSnapshotId**, omit this
parameter.

If you specify `true`, the snapshot is encrypted using the KMS key
specified using the **KmsKeyArn** parameter. If no value is
specified for **KmsKeyArn**, the default KMS key for your account is
used. If no default KMS key has been specified for your account, the
Amazon Web Services managed KMS key is used. To set a default KMS
key for your account, use [ ModifyEbsDefaultKmsKeyId][1].

If your account is enabled for encryption by default, you cannot set
this parameter to `false`. In this case, you can omit this
parameter.

For more information, see [ Using encryption][2] in the *Amazon
Elastic Compute Cloud User Guide*.

[1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyEbsDefaultKmsKeyId.html
[2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html#ebsapis-using-encryption
@return [Boolean]

@!attribute [rw] kms_key_arn

The Amazon Resource Name (ARN) of the Key Management Service (KMS)
key to be used to encrypt the snapshot. If you do not specify a KMS
key, the default Amazon Web Services managed KMS key is used.

If you specify a **ParentSnapshotId**, omit this parameter; the
snapshot will be encrypted using the same KMS key that was used to
encrypt the parent snapshot.

If **Encrypted** is set to `true`, you must specify a KMS key ARN.
@return [String]

@!attribute [rw] timeout

The amount of time (in minutes) after which the snapshot is
automatically cancelled if:

* No blocks are written to the snapshot.

* The snapshot is not completed after writing the last block of
  data.

If no value is specified, the timeout defaults to `60` minutes.
@return [Integer]

@see docs.aws.amazon.com/goto/WebAPI/ebs-2019-11-02/StartSnapshotRequest AWS API Documentation

Constants

SENSITIVE