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

**************************************
list_resource_grouping_recommendations
**************************************



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

  

  Lists the resource grouping recommendations suggested by Resilience Hub for your application.

  

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


  **Request Syntax**
  ::

    response = client.list_resource_grouping_recommendations(
        appArn='string',
        maxResults=123,
        nextToken='string'
    )
    
  :type appArn: string
  :param appArn: 

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn: ``partition``:resiliencehub: ``region``: ``account``:app/ ``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 grouping recommendations to be displayed per Resilience Hub application.

    

  
  :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**

    
    ::

      {
          'groupingRecommendations': [
              {
                  'confidenceLevel': 'High'|'Medium',
                  'creationTime': datetime(2015, 1, 1),
                  'groupingAppComponent': {
                      'appComponentId': 'string',
                      'appComponentName': 'string',
                      'appComponentType': 'string'
                  },
                  'groupingRecommendationId': 'string',
                  'recommendationReasons': [
                      'string',
                  ],
                  'rejectionReason': 'DistinctBusinessPurpose'|'SeparateDataConcern'|'DistinctUserGroupHandling'|'Other',
                  'resources': [
                      {
                          'logicalResourceId': {
                              'eksSourceName': 'string',
                              'identifier': 'string',
                              'logicalStackName': 'string',
                              'resourceGroupName': 'string',
                              'terraformSourceName': 'string'
                          },
                          'physicalResourceId': {
                              'awsAccountId': 'string',
                              'awsRegion': 'string',
                              'identifier': 'string',
                              'type': 'Arn'|'Native'
                          },
                          'resourceName': 'string',
                          'resourceType': 'string',
                          'sourceAppComponentIds': [
                              'string',
                          ]
                      },
                  ],
                  'score': 123.0,
                  'status': 'Accepted'|'Rejected'|'PendingDecision'
              },
          ],
          'nextToken': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **groupingRecommendations** *(list) --* 

        List of resource grouping recommendations generated by Resilience Hub.

        
        

        - *(dict) --* 

          Creates a new grouping recommendation.

          
          

          - **confidenceLevel** *(string) --* 

            Indicates the confidence level of Resilience Hub on the grouping recommendation.

            
          

          - **creationTime** *(datetime) --* 

            Indicates the creation time of the grouping recommendation.

            
          

          - **groupingAppComponent** *(dict) --* 

            Indicates the name of the recommended Application Component (AppComponent).

            
            

            - **appComponentId** *(string) --* 

              Indicates the identifier of an AppComponent.

              
            

            - **appComponentName** *(string) --* 

              Indicates the name of an AppComponent.

              
            

            - **appComponentType** *(string) --* 

              Indicates the type of an AppComponent.

              
        
          

          - **groupingRecommendationId** *(string) --* 

            Indicates all the reasons available for rejecting a grouping recommendation.

            
          

          - **recommendationReasons** *(list) --* 

            Indicates all the reasons available for rejecting a grouping recommendation.

            
            

            - *(string) --* 
        
          

          - **rejectionReason** *(string) --* 

            Indicates the reason you had selected while rejecting a grouping recommendation.

            
          

          - **resources** *(list) --* 

            Indicates the resources that are grouped in a recommended AppComponent.

            
            

            - *(dict) --* 

              Indicates the resource that will be grouped in the recommended Application Component (AppComponent).

              
              

              - **logicalResourceId** *(dict) --* 

                Indicates the logical identifier of the resource.

                
                

                - **eksSourceName** *(string) --* 

                  Name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.

                   

                  .. note::

                    

                    This parameter accepts values in "eks-cluster/namespace" format.

                    

                  
                

                - **identifier** *(string) --* 

                  Identifier of the resource.

                  
                

                - **logicalStackName** *(string) --* 

                  The name of the CloudFormation stack this resource belongs to.

                  
                

                - **resourceGroupName** *(string) --* 

                  The name of the resource group that this resource belongs to.

                  
                

                - **terraformSourceName** *(string) --* 

                  The name of the Terraform S3 state file this resource belongs to.

                  
            
              

              - **physicalResourceId** *(dict) --* 

                Indicates the physical identifier of the resource.

                
                

                - **awsAccountId** *(string) --* 

                  The Amazon Web Services account that owns the physical resource.

                  
                

                - **awsRegion** *(string) --* 

                  The Amazon Web Services Region that the physical resource is located in.

                  
                

                - **identifier** *(string) --* 

                  Identifier of the physical resource.

                  
                

                - **type** *(string) --* 

                  Specifies the type of physical resource identifier.

                    Arn  

                  The resource identifier is an Amazon Resource Name (ARN) and it can identify the following list of resources:

                   

                  
                  * ``AWS::ECS::Service``
                   
                  * ``AWS::EFS::FileSystem``
                   
                  * ``AWS::ElasticLoadBalancingV2::LoadBalancer``
                   
                  * ``AWS::Lambda::Function``
                   
                  * ``AWS::SNS::Topic``
                  

                    Native  

                  The resource identifier is an Resilience Hub-native identifier and it can identify the following list of resources:

                   

                  
                  * ``AWS::ApiGateway::RestApi``
                   
                  * ``AWS::ApiGatewayV2::Api``
                   
                  * ``AWS::AutoScaling::AutoScalingGroup``
                   
                  * ``AWS::DocDB::DBCluster``
                   
                  * ``AWS::DocDB::DBGlobalCluster``
                   
                  * ``AWS::DocDB::DBInstance``
                   
                  * ``AWS::DynamoDB::GlobalTable``
                   
                  * ``AWS::DynamoDB::Table``
                   
                  * ``AWS::EC2::EC2Fleet``
                   
                  * ``AWS::EC2::Instance``
                   
                  * ``AWS::EC2::NatGateway``
                   
                  * ``AWS::EC2::Volume``
                   
                  * ``AWS::ElasticLoadBalancing::LoadBalancer``
                   
                  * ``AWS::RDS::DBCluster``
                   
                  * ``AWS::RDS::DBInstance``
                   
                  * ``AWS::RDS::GlobalCluster``
                   
                  * ``AWS::Route53::RecordSet``
                   
                  * ``AWS::S3::Bucket``
                   
                  * ``AWS::SQS::Queue``
                  

                  
            
              

              - **resourceName** *(string) --* 

                Indicates the resource name.

                
              

              - **resourceType** *(string) --* 

                Indicates the resource type.

                
              

              - **sourceAppComponentIds** *(list) --* 

                Indicates the identifier of the source AppComponents in which the resources were previously grouped into.

                
                

                - *(string) --* 
            
          
        
          

          - **score** *(float) --* 

            Indicates the confidence level of the grouping recommendation.

            
          

          - **status** *(string) --* 

            Indicates the status of grouping resources into AppComponents.

            
      
    
      

      - **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.ResourceNotFoundException`

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

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

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

  