:doc:`Backup <../../backup>` / Client / start_restore_job

*****************
start_restore_job
*****************



.. py:method:: Backup.Client.start_restore_job(**kwargs)

  

  Recovers the saved resource identified by an Amazon Resource Name (ARN).

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartRestoreJob>`_  


  **Request Syntax**
  ::

    response = client.start_restore_job(
        RecoveryPointArn='string',
        Metadata={
            'string': 'string'
        },
        IamRoleArn='string',
        IdempotencyToken='string',
        ResourceType='string',
        CopySourceTagsToRestoredResource=True|False
    )
    
  :type RecoveryPointArn: string
  :param RecoveryPointArn: **[REQUIRED]** 

    An ARN that uniquely identifies a recovery point; for example, ``arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45``.

    

  
  :type Metadata: dict
  :param Metadata: **[REQUIRED]** 

    A set of metadata key-value pairs.

     

    You can get configuration metadata about a resource at the time it was backed up by calling ``GetRecoveryPointRestoreMetadata``. However, values in addition to those provided by ``GetRecoveryPointRestoreMetadata`` might be required to restore a resource. For example, you might need to provide a new resource name if the original already exists.

     

    For more information about the metadata for each resource, see the following:

     

    
    * `Metadata for Amazon Aurora <https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-aur.html#aur-restore-cli>`__
     
    * `Metadata for Amazon DocumentDB <https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-docdb.html#docdb-restore-cli>`__
     
    * `Metadata for CloudFormation <https://docs.aws.amazon.com/aws-backup/latest/devguide/restore-application-stacks.html#restoring-cfn-cli>`__
     
    * `Metadata for Amazon DynamoDB <https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-dynamodb.html#ddb-restore-cli>`__
     
    * `Metadata for Amazon EBS <https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-ebs.html#ebs-restore-cli>`__
     
    * `Metadata for Amazon EC2 <https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-ec2.html#restoring-ec2-cli>`__
     
    * `Metadata for Amazon EFS <https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-efs.html#efs-restore-cli>`__
     
    * `Metadata for Amazon FSx <https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-fsx.html#fsx-restore-cli>`__
     
    * `Metadata for Amazon Neptune <https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-nep.html#nep-restore-cli>`__
     
    * `Metadata for Amazon RDS <https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-rds.html#rds-restore-cli>`__
     
    * `Metadata for Amazon Redshift <https://docs.aws.amazon.com/aws-backup/latest/devguide/redshift-restores.html#redshift-restore-api>`__
     
    * `Metadata for Storage Gateway <https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-storage-gateway.html#restoring-sgw-cli>`__
     
    * `Metadata for Amazon S3 <https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-s3.html#s3-restore-cli>`__
     
    * `Metadata for Amazon Timestream <https://docs.aws.amazon.com/aws-backup/latest/devguide/timestream-restore.html#timestream-restore-api>`__
     
    * `Metadata for virtual machines <https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-vm.html#vm-restore-cli>`__
    

    

  
    - *(string) --* 

    
      - *(string) --* 

      


  :type IamRoleArn: string
  :param IamRoleArn: 

    The Amazon Resource Name (ARN) of the IAM role that Backup uses to create the target resource; for example: ``arn:aws:iam::123456789012:role/S3Access``.

    

  
  :type IdempotencyToken: string
  :param IdempotencyToken: 

    A customer-chosen string that you can use to distinguish between otherwise identical calls to ``StartRestoreJob``. Retrying a successful request with the same idempotency token results in a success message with no action taken.

    This field is autopopulated if not provided.

  
  :type ResourceType: string
  :param ResourceType: 

    Starts a job to restore a recovery point for one of the following resources:

     

    
    * ``Aurora`` - Amazon Aurora
     
    * ``DocumentDB`` - Amazon DocumentDB
     
    * ``CloudFormation`` - CloudFormation
     
    * ``DynamoDB`` - Amazon DynamoDB
     
    * ``EBS`` - Amazon Elastic Block Store
     
    * ``EC2`` - Amazon Elastic Compute Cloud
     
    * ``EFS`` - Amazon Elastic File System
     
    * ``FSx`` - Amazon FSx
     
    * ``Neptune`` - Amazon Neptune
     
    * ``RDS`` - Amazon Relational Database Service
     
    * ``Redshift`` - Amazon Redshift
     
    * ``Storage Gateway`` - Storage Gateway
     
    * ``S3`` - Amazon Simple Storage Service
     
    * ``Timestream`` - Amazon Timestream
     
    * ``VirtualMachine`` - Virtual machines
    

    

  
  :type CopySourceTagsToRestoredResource: boolean
  :param CopySourceTagsToRestoredResource: 

    This is an optional parameter. If this equals ``True``, tags included in the backup will be copied to the restored resource.

     

    This can only be applied to backups created through Backup.

    

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

    
    ::

      {
          'RestoreJobId': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **RestoreJobId** *(string) --* 

        Uniquely identifies the job that restores a recovery point.

        
  
  **Exceptions**
  
  *   :py:class:`Backup.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`Backup.Client.exceptions.InvalidParameterValueException`

  
  *   :py:class:`Backup.Client.exceptions.MissingParameterValueException`

  
  *   :py:class:`Backup.Client.exceptions.ServiceUnavailableException`

  
  *   :py:class:`Backup.Client.exceptions.InvalidRequestException`

  