:doc:`ConnectWisdomService <../../wisdom>` / Client / get_recommendations

*******************
get_recommendations
*******************



.. py:method:: ConnectWisdomService.Client.get_recommendations(**kwargs)

  

  Retrieves recommendations for the specified session. To avoid retrieving the same recommendations in subsequent calls, use `NotifyRecommendationsReceived <https://docs.aws.amazon.com/wisdom/latest/APIReference/API_NotifyRecommendationsReceived.html>`__. This API supports long-polling behavior with the ``waitTimeSeconds`` parameter. Short poll is the default behavior and only returns recommendations already available. To perform a manual query against an assistant, use `QueryAssistant <https://docs.aws.amazon.com/wisdom/latest/APIReference/API_QueryAssistant.html>`__.

  

  .. danger::

        This operation is deprecated and may not function as expected. This operation should not be used going forward and is only kept for the purpose of backwards compatiblity.


  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/wisdom-2020-10-19/GetRecommendations>`_  


  **Request Syntax**
  ::

    response = client.get_recommendations(
        assistantId='string',
        maxResults=123,
        sessionId='string',
        waitTimeSeconds=123
    )
    
  :type assistantId: string
  :param assistantId: **[REQUIRED]** 

    The identifier of the Wisdom assistant. Can be either the ID or the ARN. URLs cannot contain the ARN.

    

  
  :type maxResults: integer
  :param maxResults: 

    The maximum number of results to return per page.

    

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

    The identifier of the session. Can be either the ID or the ARN. URLs cannot contain the ARN.

    

  
  :type waitTimeSeconds: integer
  :param waitTimeSeconds: 

    The duration (in seconds) for which the call waits for a recommendation to be made available before returning. If a recommendation is available, the call returns sooner than ``WaitTimeSeconds``. If no messages are available and the wait time expires, the call returns successfully with an empty list.

    

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

    
    ::

      {
          'recommendations': [
              {
                  'document': {
                      'contentReference': {
                          'contentArn': 'string',
                          'contentId': 'string',
                          'knowledgeBaseArn': 'string',
                          'knowledgeBaseId': 'string'
                      },
                      'excerpt': {
                          'highlights': [
                              {
                                  'beginOffsetInclusive': 123,
                                  'endOffsetExclusive': 123
                              },
                          ],
                          'text': 'string'
                      },
                      'title': {
                          'highlights': [
                              {
                                  'beginOffsetInclusive': 123,
                                  'endOffsetExclusive': 123
                              },
                          ],
                          'text': 'string'
                      }
                  },
                  'recommendationId': 'string',
                  'relevanceLevel': 'HIGH'|'MEDIUM'|'LOW',
                  'relevanceScore': 123.0,
                  'type': 'KNOWLEDGE_CONTENT'
              },
          ],
          'triggers': [
              {
                  'data': {
                      'query': {
                          'text': 'string'
                      }
                  },
                  'id': 'string',
                  'recommendationIds': [
                      'string',
                  ],
                  'source': 'ISSUE_DETECTION'|'RULE_EVALUATION'|'OTHER',
                  'type': 'QUERY'
              },
          ]
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **recommendations** *(list) --* 

        The recommendations.

        
        

        - *(dict) --* 

          Information about the recommendation.

          
          

          - **document** *(dict) --* 

            The recommended document.

            
            

            - **contentReference** *(dict) --* 

              A reference to the content resource.

              
              

              - **contentArn** *(string) --* 

                The Amazon Resource Name (ARN) of the content.

                
              

              - **contentId** *(string) --* 

                The identifier of the content.

                
              

              - **knowledgeBaseArn** *(string) --* 

                The Amazon Resource Name (ARN) of the knowledge base.

                
              

              - **knowledgeBaseId** *(string) --* 

                The identifier of the knowledge base. This should not be a QUICK_RESPONSES type knowledge base if you're storing Wisdom Content resource to it.

                
          
            

            - **excerpt** *(dict) --* 

              The excerpt from the document.

              
              

              - **highlights** *(list) --* 

                Highlights in the document text.

                
                

                - *(dict) --* 

                  Offset specification to describe highlighting of document excerpts for rendering search results and recommendations.

                  
                  

                  - **beginOffsetInclusive** *(integer) --* 

                    The offset for the start of the highlight.

                    
                  

                  - **endOffsetExclusive** *(integer) --* 

                    The offset for the end of the highlight.

                    
              
            
              

              - **text** *(string) --* 

                Text in the document.

                
          
            

            - **title** *(dict) --* 

              The title of the document.

              
              

              - **highlights** *(list) --* 

                Highlights in the document text.

                
                

                - *(dict) --* 

                  Offset specification to describe highlighting of document excerpts for rendering search results and recommendations.

                  
                  

                  - **beginOffsetInclusive** *(integer) --* 

                    The offset for the start of the highlight.

                    
                  

                  - **endOffsetExclusive** *(integer) --* 

                    The offset for the end of the highlight.

                    
              
            
              

              - **text** *(string) --* 

                Text in the document.

                
          
        
          

          - **recommendationId** *(string) --* 

            The identifier of the recommendation.

            
          

          - **relevanceLevel** *(string) --* 

            The relevance level of the recommendation.

            
          

          - **relevanceScore** *(float) --* 

            The relevance score of the recommendation.

            
          

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

            The type of recommendation.

            
      
    
      

      - **triggers** *(list) --* 

        The triggers corresponding to recommendations.

        
        

        - *(dict) --* 

          A recommendation trigger provides context on the event that produced the referenced recommendations. Recommendations are only referenced in ``recommendationIds`` by a single RecommendationTrigger.

          
          

          - **data** *(dict) --* 

            A union type containing information related to the trigger.

            .. note::    This is a Tagged Union structure. Only one of the     following top level keys will be set: ``query``.     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'}


          
            

            - **query** *(dict) --* 

              Data associated with the QUERY RecommendationTriggerType.

              
              

              - **text** *(string) --* 

                The text associated with the recommendation trigger.

                
          
        
          

          - **id** *(string) --* 

            The identifier of the recommendation trigger.

            
          

          - **recommendationIds** *(list) --* 

            The identifiers of the recommendations.

            
            

            - *(string) --* 
        
          

          - **source** *(string) --* 

            The source of the recommendation trigger.

             

            
            * ISSUE_DETECTION: The corresponding recommendations were triggered by a Contact Lens issue.
             
            * RULE_EVALUATION: The corresponding recommendations were triggered by a Contact Lens rule.
            

            
          

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

            The type of recommendation trigger.

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

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

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

  