:doc:`AccessAnalyzer <../../accessanalyzer>` / Paginator / GetFindingRecommendation

************************
GetFindingRecommendation
************************



.. py:class:: AccessAnalyzer.Paginator.GetFindingRecommendation

  ::

    
    paginator = client.get_paginator('get_finding_recommendation')

  
  

  .. py:method:: paginate(**kwargs)

    Creates an iterator that will paginate through responses from :py:meth:`AccessAnalyzer.Client.get_finding_recommendation`.

    See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/GetFindingRecommendation>`_    


    **Request Syntax**
    ::

      response_iterator = paginator.paginate(
          analyzerArn='string',
          id='string',
          PaginationConfig={
              'MaxItems': 123,
              'PageSize': 123,
              'StartingToken': 'string'
          }
      )
      
    :type analyzerArn: string
    :param analyzerArn: **[REQUIRED]** 

      The `ARN of the analyzer <https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-getting-started.html#permission-resources>`__ used to generate the finding recommendation.

      

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

      The unique ID for the finding recommendation.

      

    
    :type PaginationConfig: dict
    :param PaginationConfig: 

      A dictionary that provides parameters to control pagination.

      

    
      - **MaxItems** *(integer) --* 

        The total number of items to return. If the total number of items available is more than the value specified in max-items then a ``NextToken`` will be provided in the output that you can use to resume pagination.

        

      
      - **PageSize** *(integer) --* 

        The size of each page.

        

      
      - **StartingToken** *(string) --* 

        A token to specify where to start paginating. This is the ``NextToken`` from a previous response.

        

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

      
      ::

        {
            'startedAt': datetime(2015, 1, 1),
            'completedAt': datetime(2015, 1, 1),
            'error': {
                'code': 'string',
                'message': 'string'
            },
            'resourceArn': 'string',
            'recommendedSteps': [
                {
                    'unusedPermissionsRecommendedStep': {
                        'policyUpdatedAt': datetime(2015, 1, 1),
                        'recommendedAction': 'CREATE_POLICY'|'DETACH_POLICY',
                        'recommendedPolicy': 'string',
                        'existingPolicyId': 'string'
                    }
                },
            ],
            'recommendationType': 'UnusedPermissionRecommendation',
            'status': 'SUCCEEDED'|'FAILED'|'IN_PROGRESS',
            'NextToken': 'string'
        }
        
      **Response Structure**

      

      - *(dict) --* 
        

        - **startedAt** *(datetime) --* 

          The time at which the retrieval of the finding recommendation was started.

          
        

        - **completedAt** *(datetime) --* 

          The time at which the retrieval of the finding recommendation was completed.

          
        

        - **error** *(dict) --* 

          Detailed information about the reason that the retrieval of a recommendation for the finding failed.

          
          

          - **code** *(string) --* 

            The error code for a failed retrieval of a recommendation for a finding.

            
          

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

            The error message for a failed retrieval of a recommendation for a finding.

            
      
        

        - **resourceArn** *(string) --* 

          The ARN of the resource of the finding.

          
        

        - **recommendedSteps** *(list) --* 

          A group of recommended steps for the finding.

          
          

          - *(dict) --* 

            Contains information about a recommended step for an unused access analyzer finding.

            .. note::    This is a Tagged Union structure. Only one of the     following top level keys will be set: ``unusedPermissionsRecommendedStep``.     If a client receives an unknown member it will     set ``SDK_UNKNOWN_MEMBER`` as the top level key,     which maps to the name or tag of the unknown     member. The structure of ``SDK_UNKNOWN_MEMBER`` is     as follows::

                        'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}


          
            

            - **unusedPermissionsRecommendedStep** *(dict) --* 

              A recommended step for an unused permissions finding.

              
              

              - **policyUpdatedAt** *(datetime) --* 

                The time at which the existing policy for the unused permissions finding was last updated.

                
              

              - **recommendedAction** *(string) --* 

                A recommendation of whether to create or detach a policy for an unused permissions finding.

                
              

              - **recommendedPolicy** *(string) --* 

                If the recommended action for the unused permissions finding is to replace the existing policy, the contents of the recommended policy to replace the policy specified in the ``existingPolicyId`` field.

                
              

              - **existingPolicyId** *(string) --* 

                If the recommended action for the unused permissions finding is to detach a policy, the ID of an existing policy to be detached.

                
          
        
      
        

        - **recommendationType** *(string) --* 

          The type of recommendation for the finding.

          
        

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

          The status of the retrieval of the finding recommendation.

          
        

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

          A token to resume pagination.

          
    