:doc:`DynamoDB <../../dynamodb>` / Client / export_table_to_point_in_time

*****************************
export_table_to_point_in_time
*****************************



.. py:method:: DynamoDB.Client.export_table_to_point_in_time(**kwargs)

  

  Exports table data to an S3 bucket. The table must have point in time recovery enabled, and you can export data from any time within the point in time recovery window.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ExportTableToPointInTime>`_  


  **Request Syntax**
  ::

    response = client.export_table_to_point_in_time(
        TableArn='string',
        ExportTime=datetime(2015, 1, 1),
        ClientToken='string',
        S3Bucket='string',
        S3BucketOwner='string',
        S3Prefix='string',
        S3SseAlgorithm='AES256'|'KMS',
        S3SseKmsKeyId='string',
        ExportFormat='DYNAMODB_JSON'|'ION',
        ExportType='FULL_EXPORT'|'INCREMENTAL_EXPORT',
        IncrementalExportSpecification={
            'ExportFromTime': datetime(2015, 1, 1),
            'ExportToTime': datetime(2015, 1, 1),
            'ExportViewType': 'NEW_IMAGE'|'NEW_AND_OLD_IMAGES'
        }
    )
    
  :type TableArn: string
  :param TableArn: **[REQUIRED]** 

    The Amazon Resource Name (ARN) associated with the table to export.

    

  
  :type ExportTime: datetime
  :param ExportTime: 

    Time in the past from which to export table data, counted in seconds from the start of the Unix epoch. The table export will be a snapshot of the table's state at this point in time.

    

  
  :type ClientToken: string
  :param ClientToken: 

    Providing a ``ClientToken`` makes the call to ``ExportTableToPointInTimeInput`` idempotent, meaning that multiple identical calls have the same effect as one single call.

     

    A client token is valid for 8 hours after the first request that uses it is completed. After 8 hours, any request with the same client token is treated as a new request. Do not resubmit the same request with the same client token for more than 8 hours, or the result might not be idempotent.

     

    If you submit a request with the same client token but a change in other parameters within the 8-hour idempotency window, DynamoDB returns an ``ExportConflictException``.

    This field is autopopulated if not provided.

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

    The name of the Amazon S3 bucket to export the snapshot to.

    

  
  :type S3BucketOwner: string
  :param S3BucketOwner: 

    The ID of the Amazon Web Services account that owns the bucket the export will be stored in.

     

    .. note::

      

      S3BucketOwner is a required parameter when exporting to a S3 bucket in another account.

      

    

  
  :type S3Prefix: string
  :param S3Prefix: 

    The Amazon S3 bucket prefix to use as the file name and path of the exported snapshot.

    

  
  :type S3SseAlgorithm: string
  :param S3SseAlgorithm: 

    Type of encryption used on the bucket where export data will be stored. Valid values for ``S3SseAlgorithm`` are:

     

    
    * ``AES256`` - server-side encryption with Amazon S3 managed keys
     
    * ``KMS`` - server-side encryption with KMS managed keys
    

    

  
  :type S3SseKmsKeyId: string
  :param S3SseKmsKeyId: 

    The ID of the KMS managed key used to encrypt the S3 bucket where export data will be stored (if applicable).

    

  
  :type ExportFormat: string
  :param ExportFormat: 

    The format for the exported data. Valid values for ``ExportFormat`` are ``DYNAMODB_JSON`` or ``ION``.

    

  
  :type ExportType: string
  :param ExportType: 

    Choice of whether to execute as a full export or incremental export. Valid values are FULL_EXPORT or INCREMENTAL_EXPORT. The default value is FULL_EXPORT. If INCREMENTAL_EXPORT is provided, the IncrementalExportSpecification must also be used.

    

  
  :type IncrementalExportSpecification: dict
  :param IncrementalExportSpecification: 

    Optional object containing the parameters specific to an incremental export.

    

  
    - **ExportFromTime** *(datetime) --* 

      Time in the past which provides the inclusive start range for the export table's data, counted in seconds from the start of the Unix epoch. The incremental export will reflect the table's state including and after this point in time.

      

    
    - **ExportToTime** *(datetime) --* 

      Time in the past which provides the exclusive end range for the export table's data, counted in seconds from the start of the Unix epoch. The incremental export will reflect the table's state just prior to this point in time. If this is not provided, the latest time with data available will be used.

      

    
    - **ExportViewType** *(string) --* 

      The view type that was chosen for the export. Valid values are ``NEW_AND_OLD_IMAGES`` and ``NEW_IMAGES``. The default value is ``NEW_AND_OLD_IMAGES``.

      

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

    
    ::

      {
          'ExportDescription': {
              'ExportArn': 'string',
              'ExportStatus': 'IN_PROGRESS'|'COMPLETED'|'FAILED',
              'StartTime': datetime(2015, 1, 1),
              'EndTime': datetime(2015, 1, 1),
              'ExportManifest': 'string',
              'TableArn': 'string',
              'TableId': 'string',
              'ExportTime': datetime(2015, 1, 1),
              'ClientToken': 'string',
              'S3Bucket': 'string',
              'S3BucketOwner': 'string',
              'S3Prefix': 'string',
              'S3SseAlgorithm': 'AES256'|'KMS',
              'S3SseKmsKeyId': 'string',
              'FailureCode': 'string',
              'FailureMessage': 'string',
              'ExportFormat': 'DYNAMODB_JSON'|'ION',
              'BilledSizeBytes': 123,
              'ItemCount': 123,
              'ExportType': 'FULL_EXPORT'|'INCREMENTAL_EXPORT',
              'IncrementalExportSpecification': {
                  'ExportFromTime': datetime(2015, 1, 1),
                  'ExportToTime': datetime(2015, 1, 1),
                  'ExportViewType': 'NEW_IMAGE'|'NEW_AND_OLD_IMAGES'
              }
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **ExportDescription** *(dict) --* 

        Contains a description of the table export.

        
        

        - **ExportArn** *(string) --* 

          The Amazon Resource Name (ARN) of the table export.

          
        

        - **ExportStatus** *(string) --* 

          Export can be in one of the following states: IN_PROGRESS, COMPLETED, or FAILED.

          
        

        - **StartTime** *(datetime) --* 

          The time at which the export task began.

          
        

        - **EndTime** *(datetime) --* 

          The time at which the export task completed.

          
        

        - **ExportManifest** *(string) --* 

          The name of the manifest file for the export task.

          
        

        - **TableArn** *(string) --* 

          The Amazon Resource Name (ARN) of the table that was exported.

          
        

        - **TableId** *(string) --* 

          Unique ID of the table that was exported.

          
        

        - **ExportTime** *(datetime) --* 

          Point in time from which table data was exported.

          
        

        - **ClientToken** *(string) --* 

          The client token that was provided for the export task. A client token makes calls to ``ExportTableToPointInTimeInput`` idempotent, meaning that multiple identical calls have the same effect as one single call.

          
        

        - **S3Bucket** *(string) --* 

          The name of the Amazon S3 bucket containing the export.

          
        

        - **S3BucketOwner** *(string) --* 

          The ID of the Amazon Web Services account that owns the bucket containing the export.

          
        

        - **S3Prefix** *(string) --* 

          The Amazon S3 bucket prefix used as the file name and path of the exported snapshot.

          
        

        - **S3SseAlgorithm** *(string) --* 

          Type of encryption used on the bucket where export data is stored. Valid values for ``S3SseAlgorithm`` are:

           

          
          * ``AES256`` - server-side encryption with Amazon S3 managed keys
           
          * ``KMS`` - server-side encryption with KMS managed keys
          

          
        

        - **S3SseKmsKeyId** *(string) --* 

          The ID of the KMS managed key used to encrypt the S3 bucket where export data is stored (if applicable).

          
        

        - **FailureCode** *(string) --* 

          Status code for the result of the failed export.

          
        

        - **FailureMessage** *(string) --* 

          Export failure reason description.

          
        

        - **ExportFormat** *(string) --* 

          The format of the exported data. Valid values for ``ExportFormat`` are ``DYNAMODB_JSON`` or ``ION``.

          
        

        - **BilledSizeBytes** *(integer) --* 

          The billable size of the table export.

          
        

        - **ItemCount** *(integer) --* 

          The number of items exported.

          
        

        - **ExportType** *(string) --* 

          The type of export that was performed. Valid values are ``FULL_EXPORT`` or ``INCREMENTAL_EXPORT``.

          
        

        - **IncrementalExportSpecification** *(dict) --* 

          Optional object containing the parameters specific to an incremental export.

          
          

          - **ExportFromTime** *(datetime) --* 

            Time in the past which provides the inclusive start range for the export table's data, counted in seconds from the start of the Unix epoch. The incremental export will reflect the table's state including and after this point in time.

            
          

          - **ExportToTime** *(datetime) --* 

            Time in the past which provides the exclusive end range for the export table's data, counted in seconds from the start of the Unix epoch. The incremental export will reflect the table's state just prior to this point in time. If this is not provided, the latest time with data available will be used.

            
          

          - **ExportViewType** *(string) --* 

            The view type that was chosen for the export. Valid values are ``NEW_AND_OLD_IMAGES`` and ``NEW_IMAGES``. The default value is ``NEW_AND_OLD_IMAGES``.

            
      
    
  
  **Exceptions**
  
  *   :py:class:`DynamoDB.Client.exceptions.TableNotFoundException`

  
  *   :py:class:`DynamoDB.Client.exceptions.PointInTimeRecoveryUnavailableException`

  
  *   :py:class:`DynamoDB.Client.exceptions.LimitExceededException`

  
  *   :py:class:`DynamoDB.Client.exceptions.InvalidExportTimeException`

  
  *   :py:class:`DynamoDB.Client.exceptions.ExportConflictException`

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

  