:doc:`StorageGateway <../../storagegateway>` / Client / create_snapshot_from_volume_recovery_point

******************************************
create_snapshot_from_volume_recovery_point
******************************************



.. py:method:: StorageGateway.Client.create_snapshot_from_volume_recovery_point(**kwargs)

  

  Initiates a snapshot of a gateway from a volume recovery point. This operation is only supported in the cached volume gateway type.

   

  A volume recovery point is a point in time at which all data of the volume is consistent and from which you can create a snapshot. To get a list of volume recovery point for cached volume gateway, use  ListVolumeRecoveryPoints.

   

  In the ``CreateSnapshotFromVolumeRecoveryPoint`` request, you identify the volume by providing its Amazon Resource Name (ARN). You must also provide a description for the snapshot. When the gateway takes a snapshot of the specified volume, the snapshot and its description appear in the Storage Gateway console. In response, the gateway returns you a snapshot ID. You can use this snapshot ID to check the snapshot progress or later use it when you want to create a volume from a snapshot.

   

  .. note::

    

    To list or delete a snapshot, you must use the Amazon EC2 API. For more information, see `DescribeSnapshots <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSnapshots.html>`__ or `DeleteSnapshot <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DeleteSnapshot.html>`__ in the *Amazon Elastic Compute Cloud API Reference*.

    

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/CreateSnapshotFromVolumeRecoveryPoint>`_  


  **Request Syntax**
  ::

    response = client.create_snapshot_from_volume_recovery_point(
        VolumeARN='string',
        SnapshotDescription='string',
        Tags=[
            {
                'Key': 'string',
                'Value': 'string'
            },
        ]
    )
    
  :type VolumeARN: string
  :param VolumeARN: **[REQUIRED]** 

    The Amazon Resource Name (ARN) of the iSCSI volume target. Use the  DescribeStorediSCSIVolumes operation to return to retrieve the TargetARN for specified VolumeARN.

    

  
  :type SnapshotDescription: string
  :param SnapshotDescription: **[REQUIRED]** 

    Textual description of the snapshot that appears in the Amazon EC2 console, Elastic Block Store snapshots panel in the **Description** field, and in the Storage Gateway snapshot **Details** pane, **Description** field.

    

  
  :type Tags: list
  :param Tags: 

    A list of up to 50 tags that can be assigned to a snapshot. Each tag is a key-value pair.

     

    .. note::

      

      Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the maximum length for a tag's value is 256.

      

    

  
    - *(dict) --* 

      A key-value pair that helps you manage, filter, and search for your resource. Allowed characters: letters, white space, and numbers, representable in UTF-8, and the following characters: + - = . _ : /.

      

    
      - **Key** *(string) --* **[REQUIRED]** 

        Tag key. The key can't start with aws:.

        

      
      - **Value** *(string) --* **[REQUIRED]** 

        Value of the tag key.

        

      
    

  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'SnapshotId': 'string',
          'VolumeARN': 'string',
          'VolumeRecoveryPointTime': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **SnapshotId** *(string) --* 

        The ID of the snapshot.

        
      

      - **VolumeARN** *(string) --* 

        The Amazon Resource Name (ARN) of the iSCSI volume target. Use the  DescribeStorediSCSIVolumes operation to return to retrieve the TargetARN for specified VolumeARN.

        
      

      - **VolumeRecoveryPointTime** *(string) --* 

        The time the volume was created from the recovery point.

        
  
  **Exceptions**
  
  *   :py:class:`StorageGateway.Client.exceptions.InvalidGatewayRequestException`

  
  *   :py:class:`StorageGateway.Client.exceptions.InternalServerError`

  
  *   :py:class:`StorageGateway.Client.exceptions.ServiceUnavailableError`

  

  **Examples**

  Initiates a snapshot of a gateway from a volume recovery point.
  ::

    response = client.create_snapshot_from_volume_recovery_point(
        SnapshotDescription='My root volume snapshot as of 2017-06-30T10:10:10.000Z',
        VolumeARN='arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
    )
    
    print(response)

  
  Expected Output:
  ::

    {
        'SnapshotId': 'snap-78e22663',
        'VolumeARN': 'arn:aws:storagegateway:us-east-1:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABB',
        'VolumeRecoveryPointTime': '2017-06-30T10:10:10.000Z',
        'ResponseMetadata': {
            '...': '...',
        },
    }

  