Amazon Elastic Compute Cloud

2024/12/16 - Amazon Elastic Compute Cloud - 3 updated api methods

Changes  This release adds support for EBS local snapshots in AWS Dedicated Local Zones, which allows you to store snapshots of EBS volumes locally in Dedicated Local Zones.

CreateSnapshot (updated) Link ¶
Changes (request, response)
Request
{'Location': 'regional | local'}
Response
{'AvailabilityZone': 'string'}

Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use snapshots for backups, to make copies of EBS volumes, and to save data before shutting down an instance.

The location of the source EBS volume determines where you can create the snapshot.

  • If the source volume is in a Region, you must create the snapshot in the same Region as the volume.

  • If the source volume is in a Local Zone, you can create the snapshot in the same Local Zone or in parent Amazon Web Services Region.

  • If the source volume is on an Outpost, you can create the snapshot on the same Outpost or in its parent Amazon Web Services Region.

When a snapshot is created, any Amazon Web Services Marketplace product codes that are associated with the source volume are propagated to the snapshot.

You can take a snapshot of an attached volume that is in use. However, snapshots only capture data that has been written to your Amazon EBS volume at the time the snapshot command is issued; this might exclude any data that has been cached by any applications or the operating system. If you can pause any file systems on the volume long enough to take a snapshot, your snapshot should be complete. However, if you cannot pause all file writes to the volume, you should unmount the volume from within the instance, issue the snapshot command, and then remount the volume to ensure a consistent and complete snapshot. You may remount and use your volume while the snapshot status is pending.

When you create a snapshot for an EBS volume that serves as a root device, we recommend that you stop the instance before taking the snapshot.

Snapshots that are taken from encrypted volumes are automatically encrypted. Volumes that are created from encrypted snapshots are also automatically encrypted. Your encrypted volumes and any associated snapshots always remain protected. For more information, Amazon EBS encryption in the Amazon EBS User Guide.

See also: AWS API Documentation

Request Syntax

client.create_snapshot(
    Description='string',
    OutpostArn='string',
    VolumeId='string',
    TagSpecifications=[
        {
            'ResourceType': 'capacity-reservation'|'client-vpn-endpoint'|'customer-gateway'|'carrier-gateway'|'coip-pool'|'declarative-policies-report'|'dedicated-host'|'dhcp-options'|'egress-only-internet-gateway'|'elastic-ip'|'elastic-gpu'|'export-image-task'|'export-instance-task'|'fleet'|'fpga-image'|'host-reservation'|'image'|'import-image-task'|'import-snapshot-task'|'instance'|'instance-event-window'|'internet-gateway'|'ipam'|'ipam-pool'|'ipam-scope'|'ipv4pool-ec2'|'ipv6pool-ec2'|'key-pair'|'launch-template'|'local-gateway'|'local-gateway-route-table'|'local-gateway-virtual-interface'|'local-gateway-virtual-interface-group'|'local-gateway-route-table-vpc-association'|'local-gateway-route-table-virtual-interface-group-association'|'natgateway'|'network-acl'|'network-interface'|'network-insights-analysis'|'network-insights-path'|'network-insights-access-scope'|'network-insights-access-scope-analysis'|'placement-group'|'prefix-list'|'replace-root-volume-task'|'reserved-instances'|'route-table'|'security-group'|'security-group-rule'|'snapshot'|'spot-fleet-request'|'spot-instances-request'|'subnet'|'subnet-cidr-reservation'|'traffic-mirror-filter'|'traffic-mirror-session'|'traffic-mirror-target'|'transit-gateway'|'transit-gateway-attachment'|'transit-gateway-connect-peer'|'transit-gateway-multicast-domain'|'transit-gateway-policy-table'|'transit-gateway-route-table'|'transit-gateway-route-table-announcement'|'volume'|'vpc'|'vpc-endpoint'|'vpc-endpoint-connection'|'vpc-endpoint-service'|'vpc-endpoint-service-permission'|'vpc-peering-connection'|'vpn-connection'|'vpn-gateway'|'vpc-flow-log'|'capacity-reservation-fleet'|'traffic-mirror-filter-rule'|'vpc-endpoint-connection-device-type'|'verified-access-instance'|'verified-access-group'|'verified-access-endpoint'|'verified-access-policy'|'verified-access-trust-provider'|'vpn-connection-device-type'|'vpc-block-public-access-exclusion'|'ipam-resource-discovery'|'ipam-resource-discovery-association'|'instance-connect-endpoint'|'verified-access-endpoint-target'|'ipam-external-resource-verification-token',
            'Tags': [
                {
                    'Key': 'string',
                    'Value': 'string'
                },
            ]
        },
    ],
    Location='regional'|'local',
    DryRun=True|False
)
type Description:

string

param Description:

A description for the snapshot.

type OutpostArn:

string

param OutpostArn:
  • To create the snapshot on the same Outpost as the source volume, specify the ARN of that Outpost. The snapshot must be created on the same Outpost as the volume.

  • To create the snapshot in the parent Region of the Outpost, omit this parameter.

For more information, see Create local snapshots from volumes on an Outpost in the Amazon EBS User Guide.

type VolumeId:

string

param VolumeId:

[REQUIRED]

The ID of the Amazon EBS volume.

type TagSpecifications:

list

param TagSpecifications:

The tags to apply to the snapshot during creation.

  • (dict) --

    The tags to apply to a resource when the resource is being created. When you specify a tag, you must specify the resource type to tag, otherwise the request will fail.

    • ResourceType (string) --

      The type of resource to tag on creation.

    • Tags (list) --

      The tags to apply to the resource.

      • (dict) --

        Describes a tag.

        • Key (string) --

          The key of the tag.

          Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws:.

        • Value (string) --

          The value of the tag.

          Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.

type Location:

string

param Location:
  • To create a local snapshot in the same Local Zone as the source volume, specify local.

  • To create a regional snapshot in the parent Region of the Local Zone, specify regional or omit this parameter.

Default value: regional

type DryRun:

boolean

param DryRun:

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.

rtype:

dict

returns:

Response Syntax

{
    'OwnerAlias': 'string',
    'OutpostArn': 'string',
    'Tags': [
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    'StorageTier': 'archive'|'standard',
    'RestoreExpiryTime': datetime(2015, 1, 1),
    'SseType': 'sse-ebs'|'sse-kms'|'none',
    'AvailabilityZone': 'string',
    'TransferType': 'time-based'|'standard',
    'CompletionDurationMinutes': 123,
    'CompletionTime': datetime(2015, 1, 1),
    'SnapshotId': 'string',
    'VolumeId': 'string',
    'State': 'pending'|'completed'|'error'|'recoverable'|'recovering',
    'StateMessage': 'string',
    'StartTime': datetime(2015, 1, 1),
    'Progress': 'string',
    'OwnerId': 'string',
    'Description': 'string',
    'VolumeSize': 123,
    'Encrypted': True|False,
    'KmsKeyId': 'string',
    'DataEncryptionKeyId': 'string'
}

Response Structure

  • (dict) --

    Describes a snapshot.

    • OwnerAlias (string) --

      The Amazon Web Services owner alias, from an Amazon-maintained list ( amazon). This is not the user-configured Amazon Web Services account alias set using the IAM console.

    • OutpostArn (string) --

      The ARN of the Outpost on which the snapshot is stored. For more information, see Amazon EBS local snapshots on Outposts in the Amazon EBS User Guide.

    • Tags (list) --

      Any tags assigned to the snapshot.

      • (dict) --

        Describes a tag.

        • Key (string) --

          The key of the tag.

          Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws:.

        • Value (string) --

          The value of the tag.

          Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.

    • StorageTier (string) --

      The storage tier in which the snapshot is stored. standard indicates that the snapshot is stored in the standard snapshot storage tier and that it is ready for use. archive indicates that the snapshot is currently archived and that it must be restored before it can be used.

    • RestoreExpiryTime (datetime) --

      Only for archived snapshots that are temporarily restored. Indicates the date and time when a temporarily restored snapshot will be automatically re-archived.

    • SseType (string) --

      Reserved for future use.

    • AvailabilityZone (string) --

      The Availability Zone or Local Zone of the snapshot. For example, us-west-1a (Availability Zone) or us-west-2-lax-1a (Local Zone).

    • TransferType (string) --

      Indicates whether the snapshot copy was created with a standard or time-based snapshot copy operation. Time-based snapshot copy operations complete within the completion duration specified in the request. Standard snapshot copy operations are completed on a best-effort basis.

      • standard - The snapshot copy was created with a standard snapshot copy operation.

      • time-based - The snapshot copy was created with a time-based snapshot copy operation.

    • CompletionDurationMinutes (integer) --

      The completion duration requested for the time-based snapshot copy operation.

    • CompletionTime (datetime) --

      The time stamp when the snapshot was completed.

    • SnapshotId (string) --

      The ID of the snapshot. Each snapshot receives a unique identifier when it is created.

    • VolumeId (string) --

      The ID of the volume that was used to create the snapshot. Snapshots created by the CopySnapshot action have an arbitrary volume ID that should not be used for any purpose.

    • State (string) --

      The snapshot state.

    • StateMessage (string) --

      Encrypted Amazon EBS snapshots are copied asynchronously. If a snapshot copy operation fails (for example, if the proper KMS permissions are not obtained) this field displays error state details to help you diagnose why the error occurred. This parameter is only returned by DescribeSnapshots.

    • StartTime (datetime) --

      The time stamp when the snapshot was initiated.

    • Progress (string) --

      The progress of the snapshot, as a percentage.

    • OwnerId (string) --

      The ID of the Amazon Web Services account that owns the EBS snapshot.

    • Description (string) --

      The description for the snapshot.

    • VolumeSize (integer) --

      The size of the volume, in GiB.

    • Encrypted (boolean) --

      Indicates whether the snapshot is encrypted.

    • KmsKeyId (string) --

      The Amazon Resource Name (ARN) of the KMS key that was used to protect the volume encryption key for the parent volume.

    • DataEncryptionKeyId (string) --

      The data encryption key identifier for the snapshot. This value is a unique identifier that corresponds to the data encryption key that was used to encrypt the original volume or snapshot copy. Because data encryption keys are inherited by volumes created from snapshots, and vice versa, if snapshots share the same data encryption key identifier, then they belong to the same volume/snapshot lineage. This parameter is only returned by DescribeSnapshots.

CreateSnapshots (updated) Link ¶
Changes (request, response)
Request
{'Location': 'regional | local'}
Response
{'Snapshots': {'AvailabilityZone': 'string'}}

Creates crash-consistent snapshots of multiple EBS volumes attached to an Amazon EC2 instance. Volumes are chosen by specifying an instance. Each volume attached to the specified instance will produce one snapshot that is crash-consistent across the instance. You can include all of the volumes currently attached to the instance, or you can exclude the root volume or specific data (non-root) volumes from the multi-volume snapshot set.

The location of the source instance determines where you can create the snapshots.

  • If the source instance is in a Region, you must create the snapshots in the same Region as the instance.

  • If the source instance is in a Local Zone, you can create the snapshots in the same Local Zone or in parent Amazon Web Services Region.

  • If the source instance is on an Outpost, you can create the snapshots on the same Outpost or in its parent Amazon Web Services Region.

See also: AWS API Documentation

Request Syntax

client.create_snapshots(
    Description='string',
    InstanceSpecification={
        'InstanceId': 'string',
        'ExcludeBootVolume': True|False,
        'ExcludeDataVolumeIds': [
            'string',
        ]
    },
    OutpostArn='string',
    TagSpecifications=[
        {
            'ResourceType': 'capacity-reservation'|'client-vpn-endpoint'|'customer-gateway'|'carrier-gateway'|'coip-pool'|'declarative-policies-report'|'dedicated-host'|'dhcp-options'|'egress-only-internet-gateway'|'elastic-ip'|'elastic-gpu'|'export-image-task'|'export-instance-task'|'fleet'|'fpga-image'|'host-reservation'|'image'|'import-image-task'|'import-snapshot-task'|'instance'|'instance-event-window'|'internet-gateway'|'ipam'|'ipam-pool'|'ipam-scope'|'ipv4pool-ec2'|'ipv6pool-ec2'|'key-pair'|'launch-template'|'local-gateway'|'local-gateway-route-table'|'local-gateway-virtual-interface'|'local-gateway-virtual-interface-group'|'local-gateway-route-table-vpc-association'|'local-gateway-route-table-virtual-interface-group-association'|'natgateway'|'network-acl'|'network-interface'|'network-insights-analysis'|'network-insights-path'|'network-insights-access-scope'|'network-insights-access-scope-analysis'|'placement-group'|'prefix-list'|'replace-root-volume-task'|'reserved-instances'|'route-table'|'security-group'|'security-group-rule'|'snapshot'|'spot-fleet-request'|'spot-instances-request'|'subnet'|'subnet-cidr-reservation'|'traffic-mirror-filter'|'traffic-mirror-session'|'traffic-mirror-target'|'transit-gateway'|'transit-gateway-attachment'|'transit-gateway-connect-peer'|'transit-gateway-multicast-domain'|'transit-gateway-policy-table'|'transit-gateway-route-table'|'transit-gateway-route-table-announcement'|'volume'|'vpc'|'vpc-endpoint'|'vpc-endpoint-connection'|'vpc-endpoint-service'|'vpc-endpoint-service-permission'|'vpc-peering-connection'|'vpn-connection'|'vpn-gateway'|'vpc-flow-log'|'capacity-reservation-fleet'|'traffic-mirror-filter-rule'|'vpc-endpoint-connection-device-type'|'verified-access-instance'|'verified-access-group'|'verified-access-endpoint'|'verified-access-policy'|'verified-access-trust-provider'|'vpn-connection-device-type'|'vpc-block-public-access-exclusion'|'ipam-resource-discovery'|'ipam-resource-discovery-association'|'instance-connect-endpoint'|'verified-access-endpoint-target'|'ipam-external-resource-verification-token',
            'Tags': [
                {
                    'Key': 'string',
                    'Value': 'string'
                },
            ]
        },
    ],
    DryRun=True|False,
    CopyTagsFromSource='volume',
    Location='regional'|'local'
)
type Description:

string

param Description:

A description propagated to every snapshot specified by the instance.

type InstanceSpecification:

dict

param InstanceSpecification:

[REQUIRED]

The instance to specify which volumes should be included in the snapshots.

  • InstanceId (string) -- [REQUIRED]

    The instance to specify which volumes should be snapshotted.

  • ExcludeBootVolume (boolean) --

    Excludes the root volume from being snapshotted.

  • ExcludeDataVolumeIds (list) --

    The IDs of the data (non-root) volumes to exclude from the multi-volume snapshot set. If you specify the ID of the root volume, the request fails. To exclude the root volume, use ExcludeBootVolume.

    You can specify up to 40 volume IDs per request.

    • (string) --

type OutpostArn:

string

param OutpostArn:
  • To create the snapshots on the same Outpost as the source instance, specify the ARN of that Outpost. The snapshots must be created on the same Outpost as the instance.

  • To create the snapshots in the parent Region of the Outpost, omit this parameter.

For more information, see Create local snapshots from volumes on an Outpost in the Amazon EBS User Guide.

type TagSpecifications:

list

param TagSpecifications:

Tags to apply to every snapshot specified by the instance.

  • (dict) --

    The tags to apply to a resource when the resource is being created. When you specify a tag, you must specify the resource type to tag, otherwise the request will fail.

    • ResourceType (string) --

      The type of resource to tag on creation.

    • Tags (list) --

      The tags to apply to the resource.

      • (dict) --

        Describes a tag.

        • Key (string) --

          The key of the tag.

          Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws:.

        • Value (string) --

          The value of the tag.

          Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.

type DryRun:

boolean

param DryRun:

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.

type CopyTagsFromSource:

string

param CopyTagsFromSource:

Copies the tags from the specified volume to corresponding snapshot.

type Location:

string

param Location:
  • To create local snapshots in the same Local Zone as the source instance, specify local.

  • To create a regional snapshots in the parent Region of the Local Zone, specify regional or omit this parameter.

Default value: regional

rtype:

dict

returns:

Response Syntax

{
    'Snapshots': [
        {
            'Description': 'string',
            'Tags': [
                {
                    'Key': 'string',
                    'Value': 'string'
                },
            ],
            'Encrypted': True|False,
            'VolumeId': 'string',
            'State': 'pending'|'completed'|'error'|'recoverable'|'recovering',
            'VolumeSize': 123,
            'StartTime': datetime(2015, 1, 1),
            'Progress': 'string',
            'OwnerId': 'string',
            'SnapshotId': 'string',
            'OutpostArn': 'string',
            'SseType': 'sse-ebs'|'sse-kms'|'none',
            'AvailabilityZone': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • Snapshots (list) --

      List of snapshots.

      • (dict) --

        Information about a snapshot.

        • Description (string) --

          Description specified by the CreateSnapshotRequest that has been applied to all snapshots.

        • Tags (list) --

          Tags associated with this snapshot.

          • (dict) --

            Describes a tag.

            • Key (string) --

              The key of the tag.

              Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws:.

            • Value (string) --

              The value of the tag.

              Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.

        • Encrypted (boolean) --

          Indicates whether the snapshot is encrypted.

        • VolumeId (string) --

          Source volume from which this snapshot was created.

        • State (string) --

          Current state of the snapshot.

        • VolumeSize (integer) --

          Size of the volume from which this snapshot was created.

        • StartTime (datetime) --

          Time this snapshot was started. This is the same for all snapshots initiated by the same request.

        • Progress (string) --

          Progress this snapshot has made towards completing.

        • OwnerId (string) --

          Account id used when creating this snapshot.

        • SnapshotId (string) --

          Snapshot id that can be used to describe this snapshot.

        • OutpostArn (string) --

          The ARN of the Outpost on which the snapshot is stored. For more information, see Amazon EBS local snapshots on Outposts in the Amazon EBS User Guide.

        • SseType (string) --

          Reserved for future use.

        • AvailabilityZone (string) --

          The Availability Zone or Local Zone of the snapshots. For example, us-west-1a (Availability Zone) or us-west-2-lax-1a (Local Zone).

DescribeSnapshots (updated) Link ¶
Changes (response)
{'Snapshots': {'AvailabilityZone': 'string'}}

Describes the specified EBS snapshots available to you or all of the EBS snapshots available to you.

The snapshots available to you include public snapshots, private snapshots that you own, and private snapshots owned by other Amazon Web Services accounts for which you have explicit create volume permissions.

The create volume permissions fall into the following categories:

  • public: The owner of the snapshot granted create volume permissions for the snapshot to the all group. All Amazon Web Services accounts have create volume permissions for these snapshots.

  • explicit: The owner of the snapshot granted create volume permissions to a specific Amazon Web Services account.

  • implicit: An Amazon Web Services account has implicit create volume permissions for all snapshots it owns.

The list of snapshots returned can be filtered by specifying snapshot IDs, snapshot owners, or Amazon Web Services accounts with create volume permissions. If no options are specified, Amazon EC2 returns all snapshots for which you have create volume permissions.

If you specify one or more snapshot IDs, only snapshots that have the specified IDs are returned. If you specify an invalid snapshot ID, an error is returned. If you specify a snapshot ID for which you do not have access, it is not included in the returned results.

If you specify one or more snapshot owners using the OwnerIds option, only snapshots from the specified owners and for which you have access are returned. The results can include the Amazon Web Services account IDs of the specified owners, amazon for snapshots owned by Amazon, or self for snapshots that you own.

If you specify a list of restorable users, only snapshots with create snapshot permissions for those users are returned. You can specify Amazon Web Services account IDs (if you own the snapshots), self for snapshots for which you own or have explicit permissions, or all for public snapshots.

If you are describing a long list of snapshots, we recommend that you paginate the output to make the list more manageable. For more information, see Pagination.

To get the state of fast snapshot restores for a snapshot, use DescribeFastSnapshotRestores.

For more information about EBS snapshots, see Amazon EBS snapshots in the Amazon EBS User Guide.

See also: AWS API Documentation

Request Syntax

client.describe_snapshots(
    MaxResults=123,
    NextToken='string',
    OwnerIds=[
        'string',
    ],
    RestorableByUserIds=[
        'string',
    ],
    SnapshotIds=[
        'string',
    ],
    DryRun=True|False,
    Filters=[
        {
            'Name': 'string',
            'Values': [
                'string',
            ]
        },
    ]
)
type MaxResults:

integer

param MaxResults:

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

type NextToken:

string

param NextToken:

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

type OwnerIds:

list

param OwnerIds:

Scopes the results to snapshots with the specified owners. You can specify a combination of Amazon Web Services account IDs, self, and amazon.

  • (string) --

type RestorableByUserIds:

list

param RestorableByUserIds:

The IDs of the Amazon Web Services accounts that can create volumes from the snapshot.

  • (string) --

type SnapshotIds:

list

param SnapshotIds:

The snapshot IDs.

Default: Describes the snapshots for which you have create volume permissions.

  • (string) --

type DryRun:

boolean

param DryRun:

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.

type Filters:

list

param Filters:

The filters.

  • description - A description of the snapshot.

  • encrypted - Indicates whether the snapshot is encrypted ( true | false)

  • owner-alias - The owner alias, from an Amazon-maintained list ( amazon). This is not the user-configured Amazon Web Services account alias set using the IAM console. We recommend that you use the related parameter instead of this filter.

  • owner-id - The Amazon Web Services account ID of the owner. We recommend that you use the related parameter instead of this filter.

  • progress - The progress of the snapshot, as a percentage (for example, 80%).

  • snapshot-id - The snapshot ID.

  • start-time - The time stamp when the snapshot was initiated.

  • status - The status of the snapshot ( pending | completed | error).

  • storage-tier - The storage tier of the snapshot ( archive | standard).

  • transfer-type - The type of operation used to create the snapshot ( time-based | standard).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • volume-id - The ID of the volume the snapshot is for.

  • volume-size - The size of the volume, in GiB.

  • (dict) --

    A filter name and value pair that is used to return a more specific list of results from a describe operation. Filters can be used to match a set of resources by specific criteria, such as tags, attributes, or IDs.

    If you specify multiple filters, the filters are joined with an AND, and the request returns only results that match all of the specified filters.

    For more information, see List and filter using the CLI and API in the Amazon EC2 User Guide.

    • Name (string) --

      The name of the filter. Filter names are case-sensitive.

    • Values (list) --

      The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an OR, and the request returns all results that match any of the specified values.

      • (string) --

rtype:

dict

returns:

Response Syntax

{
    'NextToken': 'string',
    'Snapshots': [
        {
            'OwnerAlias': 'string',
            'OutpostArn': 'string',
            'Tags': [
                {
                    'Key': 'string',
                    'Value': 'string'
                },
            ],
            'StorageTier': 'archive'|'standard',
            'RestoreExpiryTime': datetime(2015, 1, 1),
            'SseType': 'sse-ebs'|'sse-kms'|'none',
            'AvailabilityZone': 'string',
            'TransferType': 'time-based'|'standard',
            'CompletionDurationMinutes': 123,
            'CompletionTime': datetime(2015, 1, 1),
            'SnapshotId': 'string',
            'VolumeId': 'string',
            'State': 'pending'|'completed'|'error'|'recoverable'|'recovering',
            'StateMessage': 'string',
            'StartTime': datetime(2015, 1, 1),
            'Progress': 'string',
            'OwnerId': 'string',
            'Description': 'string',
            'VolumeSize': 123,
            'Encrypted': True|False,
            'KmsKeyId': 'string',
            'DataEncryptionKeyId': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • NextToken (string) --

      The token to include in another request to get the next page of items. This value is null when there are no more items to return.

    • Snapshots (list) --

      Information about the snapshots.

      • (dict) --

        Describes a snapshot.

        • OwnerAlias (string) --

          The Amazon Web Services owner alias, from an Amazon-maintained list ( amazon). This is not the user-configured Amazon Web Services account alias set using the IAM console.

        • OutpostArn (string) --

          The ARN of the Outpost on which the snapshot is stored. For more information, see Amazon EBS local snapshots on Outposts in the Amazon EBS User Guide.

        • Tags (list) --

          Any tags assigned to the snapshot.

          • (dict) --

            Describes a tag.

            • Key (string) --

              The key of the tag.

              Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws:.

            • Value (string) --

              The value of the tag.

              Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.

        • StorageTier (string) --

          The storage tier in which the snapshot is stored. standard indicates that the snapshot is stored in the standard snapshot storage tier and that it is ready for use. archive indicates that the snapshot is currently archived and that it must be restored before it can be used.

        • RestoreExpiryTime (datetime) --

          Only for archived snapshots that are temporarily restored. Indicates the date and time when a temporarily restored snapshot will be automatically re-archived.

        • SseType (string) --

          Reserved for future use.

        • AvailabilityZone (string) --

          The Availability Zone or Local Zone of the snapshot. For example, us-west-1a (Availability Zone) or us-west-2-lax-1a (Local Zone).

        • TransferType (string) --

          Indicates whether the snapshot copy was created with a standard or time-based snapshot copy operation. Time-based snapshot copy operations complete within the completion duration specified in the request. Standard snapshot copy operations are completed on a best-effort basis.

          • standard - The snapshot copy was created with a standard snapshot copy operation.

          • time-based - The snapshot copy was created with a time-based snapshot copy operation.

        • CompletionDurationMinutes (integer) --

          The completion duration requested for the time-based snapshot copy operation.

        • CompletionTime (datetime) --

          The time stamp when the snapshot was completed.

        • SnapshotId (string) --

          The ID of the snapshot. Each snapshot receives a unique identifier when it is created.

        • VolumeId (string) --

          The ID of the volume that was used to create the snapshot. Snapshots created by the CopySnapshot action have an arbitrary volume ID that should not be used for any purpose.

        • State (string) --

          The snapshot state.

        • StateMessage (string) --

          Encrypted Amazon EBS snapshots are copied asynchronously. If a snapshot copy operation fails (for example, if the proper KMS permissions are not obtained) this field displays error state details to help you diagnose why the error occurred. This parameter is only returned by DescribeSnapshots.

        • StartTime (datetime) --

          The time stamp when the snapshot was initiated.

        • Progress (string) --

          The progress of the snapshot, as a percentage.

        • OwnerId (string) --

          The ID of the Amazon Web Services account that owns the EBS snapshot.

        • Description (string) --

          The description for the snapshot.

        • VolumeSize (integer) --

          The size of the volume, in GiB.

        • Encrypted (boolean) --

          Indicates whether the snapshot is encrypted.

        • KmsKeyId (string) --

          The Amazon Resource Name (ARN) of the KMS key that was used to protect the volume encryption key for the parent volume.

        • DataEncryptionKeyId (string) --

          The data encryption key identifier for the snapshot. This value is a unique identifier that corresponds to the data encryption key that was used to encrypt the original volume or snapshot copy. Because data encryption keys are inherited by volumes created from snapshots, and vice versa, if snapshots share the same data encryption key identifier, then they belong to the same volume/snapshot lineage. This parameter is only returned by DescribeSnapshots.