def copy(options = {})
      options = options.merge(source_snapshot_id: @id)
      resp = @client.copy_snapshot(options)
      resp.data
    end
def copy(options = {})
      options = options.merge(source_snapshot_id: @id)
      resp = @client.copy_snapshot(options)
      resp.data
    end
@!group Actions
 @example Request syntax with placeholder values

   snapshot.copy({
     description: "String",
     destination_region: "String",
     encrypted: false,
     kms_key_id: "String",
     presigned_url: "String",
     source_region: "String", # required
     dry_run: false,
   })
 @param [Hash] options ({})
 @option options [String] :description
   A description for the EBS snapshot.
 @option options [String] :destination_region
   The destination Region to use in the `PresignedUrl` parameter of a
   snapshot copy operation. This parameter is only valid for specifying
   the destination Region in a `PresignedUrl` parameter, where it is
   required.

   The snapshot copy is sent to the regional endpoint that you sent the
   HTTP request to (for example, `ec2.us-east-1.amazonaws.com`). With the
   AWS CLI, this is specified using the `--region` parameter or the
   default Region in your AWS configuration file.
 @option options [Boolean] :encrypted
   Specifies whether the destination snapshot should be encrypted. You
   can encrypt a copy of an unencrypted snapshot, but you cannot use it
   to create an unencrypted copy of an encrypted snapshot. Your default
   CMK for EBS is used unless you specify a non-default AWS Key
   Management Service (AWS KMS) CMK using `KmsKeyId`. For more
   information, see [Amazon EBS Encryption][1] in the *Amazon Elastic
   Compute Cloud User Guide*.



   [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html
 @option options [String] :kms_key_id
   An identifier for the AWS Key Management Service (AWS KMS) customer
   master key (CMK) to use when creating the encrypted volume. This
   parameter is only required if you want to use a non-default CMK; if
   this parameter is not specified, the default CMK for EBS is used. If a
   `KmsKeyId` is specified, the `Encrypted` flag must also be set.

   The CMK identifier may be provided in any of the following formats:

   * Key ID

   * Key alias. The alias ARN contains the `arn:aws:kms` namespace,
     followed by the region of the CMK, the AWS account ID of the CMK
     owner, the `alias` namespace, and then the CMK alias. For example,
     arn:aws:kms:*us-east-1*\:*012345678910*\:alias/*ExampleAlias*.

   * ARN using key ID. The ID ARN contains the `arn:aws:kms` namespace,
     followed by the region of the CMK, the AWS account ID of the CMK
     owner, the `key` namespace, and then the CMK ID. For example,
     arn:aws:kms:*us-east-1*\:*012345678910*\:key/*abcd1234-a123-456a-a12b-a123b4cd56ef*.

   * ARN using key alias. The alias ARN contains the `arn:aws:kms`
     namespace, followed by the region of the CMK, the AWS account ID of
     the CMK owner, the `alias` namespace, and then the CMK alias. For
     example,
     arn:aws:kms:*us-east-1*\:*012345678910*\:alias/*ExampleAlias*.

   AWS parses `KmsKeyId` asynchronously, meaning that the action you call
   may appear to complete even though you provided an invalid identifier.
   The action will eventually fail.
 @option options [String] :presigned_url
   When you copy an encrypted source snapshot using the Amazon EC2 Query
   API, you must supply a pre-signed URL. This parameter is optional for
   unencrypted snapshots. For more information, see [Query Requests][1].

   The `PresignedUrl` should use the snapshot source endpoint, the
   `CopySnapshot` action, and include the `SourceRegion`,
   `SourceSnapshotId`, and `DestinationRegion` parameters. The
   `PresignedUrl` must be signed using AWS Signature Version 4. Because
   EBS snapshots are stored in Amazon S3, the signing algorithm for this
   parameter uses the same logic that is described in [Authenticating
   Requests by Using Query Parameters (AWS Signature Version 4)][2] in
   the *Amazon Simple Storage Service API Reference*. An invalid or
   improperly signed `PresignedUrl` will cause the copy operation to fail
   asynchronously, and the snapshot will move to an `error` state.



   [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html
   [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html
 @option options [required, String] :source_region
   The ID of the Region that contains the snapshot to be copied.
 @option options [Boolean] :dry_run
   Checks whether you have the required permissions for the action,
   without actually making the request, and provides an error response.
   If you have the required permissions, the error response is
   `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
 @return [Types::CopySnapshotResult]