:doc:`kendra <../../kendra>` / Client / list_data_source_sync_jobs

**************************
list_data_source_sync_jobs
**************************



.. py:method:: kendra.Client.list_data_source_sync_jobs(**kwargs)

  

  Gets statistics about synchronizing a data source connector.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/ListDataSourceSyncJobs>`_  


  **Request Syntax**
  ::

    response = client.list_data_source_sync_jobs(
        Id='string',
        IndexId='string',
        NextToken='string',
        MaxResults=123,
        StartTimeFilter={
            'StartTime': datetime(2015, 1, 1),
            'EndTime': datetime(2015, 1, 1)
        },
        StatusFilter='FAILED'|'SUCCEEDED'|'SYNCING'|'INCOMPLETE'|'STOPPING'|'ABORTED'|'SYNCING_INDEXING'
    )
    
  :type Id: string
  :param Id: **[REQUIRED]** 

    The identifier of the data source connector.

    

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

    The identifier of the index used with the data source connector.

    

  
  :type NextToken: string
  :param NextToken: 

    If the previous response was incomplete (because there is more data to retrieve), Amazon Kendra returns a pagination token in the response. You can use this pagination token to retrieve the next set of jobs.

    

  
  :type MaxResults: integer
  :param MaxResults: 

    The maximum number of synchronization jobs to return in the response. If there are fewer results in the list, this response contains only the actual results.

    

  
  :type StartTimeFilter: dict
  :param StartTimeFilter: 

    When specified, the synchronization jobs returned in the list are limited to jobs between the specified dates.

    

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

      The Unix timestamp for the beginning of the time range.

      

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

      The Unix timestamp for the end of the time range.

      

    
  
  :type StatusFilter: string
  :param StatusFilter: 

    Only returns synchronization jobs with the ``Status`` field equal to the specified status.

    

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

    
    ::

      {
          'History': [
              {
                  'ExecutionId': 'string',
                  'StartTime': datetime(2015, 1, 1),
                  'EndTime': datetime(2015, 1, 1),
                  'Status': 'FAILED'|'SUCCEEDED'|'SYNCING'|'INCOMPLETE'|'STOPPING'|'ABORTED'|'SYNCING_INDEXING',
                  'ErrorMessage': 'string',
                  'ErrorCode': 'InternalError'|'InvalidRequest',
                  'DataSourceErrorCode': 'string',
                  'Metrics': {
                      'DocumentsAdded': 'string',
                      'DocumentsModified': 'string',
                      'DocumentsDeleted': 'string',
                      'DocumentsFailed': 'string',
                      'DocumentsScanned': 'string'
                  }
              },
          ],
          'NextToken': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **History** *(list) --* 

        A history of synchronization jobs for the data source connector.

        
        

        - *(dict) --* 

          Provides information about a data source synchronization job.

          
          

          - **ExecutionId** *(string) --* 

            A identifier for the synchronization job.

            
          

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

            The Unix timestamp when the synchronization job started.

            
          

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

            The Unix timestamp when the synchronization job completed.

            
          

          - **Status** *(string) --* 

            The execution status of the synchronization job. When the ``Status`` field is set to ``SUCCEEDED``, the synchronization job is done. If the status code is set to ``FAILED``, the ``ErrorCode`` and ``ErrorMessage`` fields give you the reason for the failure.

            
          

          - **ErrorMessage** *(string) --* 

            If the ``Status`` field is set to ``ERROR``, the ``ErrorMessage`` field contains a description of the error that caused the synchronization to fail.

            
          

          - **ErrorCode** *(string) --* 

            If the ``Status`` field is set to ``FAILED``, the ``ErrorCode`` field indicates the reason the synchronization failed.

            
          

          - **DataSourceErrorCode** *(string) --* 

            If the reason that the synchronization failed is due to an error with the underlying data source, this field contains a code that identifies the error.

            
          

          - **Metrics** *(dict) --* 

            Maps a batch delete document request to a specific data source sync job. This is optional and should only be supplied when documents are deleted by a data source connector.

            
            

            - **DocumentsAdded** *(string) --* 

              The number of documents added from the data source up to now in the data source sync.

              
            

            - **DocumentsModified** *(string) --* 

              The number of documents modified in the data source up to now in the data source sync run.

              
            

            - **DocumentsDeleted** *(string) --* 

              The number of documents deleted from the data source up to now in the data source sync run.

              
            

            - **DocumentsFailed** *(string) --* 

              The number of documents that failed to sync from the data source up to now in the data source sync run.

              
            

            - **DocumentsScanned** *(string) --* 

              The current number of documents crawled by the current sync job in the data source.

              
        
      
    
      

      - **NextToken** *(string) --* 

        If the response is truncated, Amazon Kendra returns this token that you can use in the subsequent request to retrieve the next set of jobs.

        
  
  **Exceptions**
  
  *   :py:class:`kendra.Client.exceptions.ValidationException`

  
  *   :py:class:`kendra.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`kendra.Client.exceptions.ThrottlingException`

  
  *   :py:class:`kendra.Client.exceptions.AccessDeniedException`

  
  *   :py:class:`kendra.Client.exceptions.ConflictException`

  
  *   :py:class:`kendra.Client.exceptions.InternalServerException`

  