:doc:`ResilienceHub <../../resiliencehub>` / Client / list_app_assessment_compliance_drifts

*************************************
list_app_assessment_compliance_drifts
*************************************



.. py:method:: ResilienceHub.Client.list_app_assessment_compliance_drifts(**kwargs)

  

  List of compliance drifts that were detected while running an assessment.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/resiliencehub-2020-04-30/ListAppAssessmentComplianceDrifts>`_  


  **Request Syntax**
  ::

    response = client.list_app_assessment_compliance_drifts(
        assessmentArn='string',
        maxResults=123,
        nextToken='string'
    )
    
  :type assessmentArn: string
  :param assessmentArn: **[REQUIRED]** 

    Amazon Resource Name (ARN) of the assessment. The format for this ARN is: arn: ``partition``:resiliencehub: ``region``: ``account``:app-assessment/ ``app-id``. For more information about ARNs, see `Amazon Resource Names (ARNs) <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html>`__ in the *Amazon Web Services General Reference* guide.

    

  
  :type maxResults: integer
  :param maxResults: 

    Maximum number of compliance drifts requested.

    

  
  :type nextToken: string
  :param nextToken: 

    Null, or the token from a previous call to get the next set of results.

    

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

    
    ::

      {
          'complianceDrifts': [
              {
                  'actualReferenceId': 'string',
                  'actualValue': {
                      'string': {
                          'achievableRpoInSecs': 123,
                          'achievableRtoInSecs': 123,
                          'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotApplicable'|'MissingPolicy',
                          'currentRpoInSecs': 123,
                          'currentRtoInSecs': 123,
                          'message': 'string',
                          'rpoDescription': 'string',
                          'rpoReferenceId': 'string',
                          'rtoDescription': 'string',
                          'rtoReferenceId': 'string'
                      }
                  },
                  'appId': 'string',
                  'appVersion': 'string',
                  'diffType': 'NotEqual'|'Added'|'Removed',
                  'driftType': 'ApplicationCompliance'|'AppComponentResiliencyComplianceStatus',
                  'entityId': 'string',
                  'entityType': 'string',
                  'expectedReferenceId': 'string',
                  'expectedValue': {
                      'string': {
                          'achievableRpoInSecs': 123,
                          'achievableRtoInSecs': 123,
                          'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotApplicable'|'MissingPolicy',
                          'currentRpoInSecs': 123,
                          'currentRtoInSecs': 123,
                          'message': 'string',
                          'rpoDescription': 'string',
                          'rpoReferenceId': 'string',
                          'rtoDescription': 'string',
                          'rtoReferenceId': 'string'
                      }
                  }
              },
          ],
          'nextToken': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **complianceDrifts** *(list) --* 

        Indicates compliance drifts (recovery time objective (RTO) and recovery point objective (RPO)) detected for an assessed entity.

        
        

        - *(dict) --* 

          Indicates the compliance drifts (recovery time objective (RTO) and recovery point objective (RPO)) that were detected for an assessed entity.

          
          

          - **actualReferenceId** *(string) --* 

            Assessment identifier that is associated with this drift item.

            
          

          - **actualValue** *(dict) --* 

            Actual compliance value of the entity.

            
            

            - *(string) --* 
              

              - *(dict) --* 

                Defines the compliance against the resiliency policy for a disruption.

                
                

                - **achievableRpoInSecs** *(integer) --* 

                  The Recovery Point Objective (RPO) that is achievable, in seconds.

                  
                

                - **achievableRtoInSecs** *(integer) --* 

                  The Recovery Time Objective (RTO) that is achievable, in seconds

                  
                

                - **complianceStatus** *(string) --* 

                  The current status of compliance for the resiliency policy.

                  
                

                - **currentRpoInSecs** *(integer) --* 

                  The current RPO, in seconds.

                  
                

                - **currentRtoInSecs** *(integer) --* 

                  The current RTO, in seconds.

                  
                

                - **message** *(string) --* 

                  The disruption compliance message.

                  
                

                - **rpoDescription** *(string) --* 

                  The RPO description.

                  
                

                - **rpoReferenceId** *(string) --* 

                  Reference identifier of the RPO .

                  
                

                - **rtoDescription** *(string) --* 

                  The RTO description.

                  
                

                - **rtoReferenceId** *(string) --* 

                  Reference identifier of the RTO.

                  
            
        
      
          

          - **appId** *(string) --* 

            Identifier of your application.

            
          

          - **appVersion** *(string) --* 

            Published version of your application on which drift was detected.

            
          

          - **diffType** *(string) --* 

            Difference type between actual and expected recovery point objective (RPO) and recovery time objective (RTO) values. Currently, Resilience Hub supports only ``NotEqual`` difference type.

            
          

          - **driftType** *(string) --* 

            The type of drift detected. Currently, Resilience Hub supports only **ApplicationCompliance** drift type.

            
          

          - **entityId** *(string) --* 

            Identifier of an entity in which drift was detected. For compliance drift, the entity ID can be either application ID or the AppComponent ID.

            
          

          - **entityType** *(string) --* 

            The type of entity in which drift was detected. For compliance drifts, Resilience Hub supports ``AWS::ResilienceHub::AppComponent`` and ``AWS::ResilienceHub::Application``.

            
          

          - **expectedReferenceId** *(string) --* 

            Assessment identifier of a previous assessment of the same application version. Resilience Hub uses the previous assessment (associated with the reference identifier) to compare the compliance with the current assessment to identify drifts.

            
          

          - **expectedValue** *(dict) --* 

            The expected compliance value of an entity.

            
            

            - *(string) --* 
              

              - *(dict) --* 

                Defines the compliance against the resiliency policy for a disruption.

                
                

                - **achievableRpoInSecs** *(integer) --* 

                  The Recovery Point Objective (RPO) that is achievable, in seconds.

                  
                

                - **achievableRtoInSecs** *(integer) --* 

                  The Recovery Time Objective (RTO) that is achievable, in seconds

                  
                

                - **complianceStatus** *(string) --* 

                  The current status of compliance for the resiliency policy.

                  
                

                - **currentRpoInSecs** *(integer) --* 

                  The current RPO, in seconds.

                  
                

                - **currentRtoInSecs** *(integer) --* 

                  The current RTO, in seconds.

                  
                

                - **message** *(string) --* 

                  The disruption compliance message.

                  
                

                - **rpoDescription** *(string) --* 

                  The RPO description.

                  
                

                - **rpoReferenceId** *(string) --* 

                  Reference identifier of the RPO .

                  
                

                - **rtoDescription** *(string) --* 

                  The RTO description.

                  
                

                - **rtoReferenceId** *(string) --* 

                  Reference identifier of the RTO.

                  
            
        
      
      
    
      

      - **nextToken** *(string) --* 

        Null, or the token from a previous call to get the next set of results.

        
  
  **Exceptions**
  
  *   :py:class:`ResilienceHub.Client.exceptions.InternalServerException`

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

  
  *   :py:class:`ResilienceHub.Client.exceptions.ValidationException`

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

  