:doc:`LexModelsV2 <../../lexv2-models>` / Client / list_intents

************
list_intents
************



.. py:method:: LexModelsV2.Client.list_intents(**kwargs)

  

  Get a list of intents that meet the specified criteria.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListIntents>`_  


  **Request Syntax**
  ::

    response = client.list_intents(
        botId='string',
        botVersion='string',
        localeId='string',
        sortBy={
            'attribute': 'IntentName'|'LastUpdatedDateTime',
            'order': 'Ascending'|'Descending'
        },
        filters=[
            {
                'name': 'IntentName',
                'values': [
                    'string',
                ],
                'operator': 'CO'|'EQ'
            },
        ],
        maxResults=123,
        nextToken='string'
    )
    
  :type botId: string
  :param botId: **[REQUIRED]** 

    The unique identifier of the bot that contains the intent.

    

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

    The version of the bot that contains the intent.

    

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

    The identifier of the language and locale of the intents to list. The string must match one of the supported locales. For more information, see `Supported languages <https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html>`__.

    

  
  :type sortBy: dict
  :param sortBy: 

    Determines the sort order for the response from the ``ListIntents`` operation. You can choose to sort by the intent name or last updated date in either ascending or descending order.

    

  
    - **attribute** *(string) --* **[REQUIRED]** 

      The attribute to use to sort the list of intents.

      

    
    - **order** *(string) --* **[REQUIRED]** 

      The order to sort the list. You can choose ascending or descending.

      

    
  
  :type filters: list
  :param filters: 

    Provides the specification of a filter used to limit the intents in the response to only those that match the filter specification. You can only specify one filter and only one string to filter on.

    

  
    - *(dict) --* 

      Filters the response from the ``ListIntents`` operation.

      

    
      - **name** *(string) --* **[REQUIRED]** 

        The name of the field to use for the filter.

        

      
      - **values** *(list) --* **[REQUIRED]** 

        The value to use for the filter.

        

      
        - *(string) --* 

        
    
      - **operator** *(string) --* **[REQUIRED]** 

        The operator to use for the filter. Specify ``EQ`` when the ``ListIntents`` operation should return only aliases that equal the specified value. Specify ``CO`` when the ``ListIntents`` operation should return aliases that contain the specified value.

        

      
    

  :type maxResults: integer
  :param maxResults: 

    The maximum number of intents to return in each page of results. If there are fewer results than the max page size, only the actual number of results are returned.

    

  
  :type nextToken: string
  :param nextToken: 

    If the response from the ``ListIntents`` operation contains more results than specified in the ``maxResults`` parameter, a token is returned in the response.

     

    Use the returned token in the ``nextToken`` parameter of a ``ListIntents`` request to return the next page of results. For a complete set of results, call the ``ListIntents`` operation until the ``nextToken`` returned in the response is null.

    

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

    
    ::

      {
          'botId': 'string',
          'botVersion': 'string',
          'localeId': 'string',
          'intentSummaries': [
              {
                  'intentId': 'string',
                  'intentName': 'string',
                  'intentDisplayName': 'string',
                  'description': 'string',
                  'parentIntentSignature': 'string',
                  'inputContexts': [
                      {
                          'name': 'string'
                      },
                  ],
                  'outputContexts': [
                      {
                          'name': 'string',
                          'timeToLiveInSeconds': 123,
                          'turnsToLive': 123
                      },
                  ],
                  'lastUpdatedDateTime': datetime(2015, 1, 1)
              },
          ],
          'nextToken': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **botId** *(string) --* 

        The identifier of the bot that contains the intent.

        
      

      - **botVersion** *(string) --* 

        The version of the bot that contains the intent.

        
      

      - **localeId** *(string) --* 

        The language and locale of the intents in the list.

        
      

      - **intentSummaries** *(list) --* 

        Summary information for the intents that meet the filter criteria specified in the request. The length of the list is specified in the ``maxResults`` parameter of the request. If there are more intents available, the ``nextToken`` field contains a token to get the next page of results.

        
        

        - *(dict) --* 

          Summary information about an intent returned by the ``ListIntents`` operation.

          
          

          - **intentId** *(string) --* 

            The unique identifier assigned to the intent. Use this ID to get detailed information about the intent with the ``DescribeIntent`` operation.

            
          

          - **intentName** *(string) --* 

            The name of the intent.

            
          

          - **intentDisplayName** *(string) --* 

            The display name of the intent.

            
          

          - **description** *(string) --* 

            The description of the intent.

            
          

          - **parentIntentSignature** *(string) --* 

            If this intent is derived from a built-in intent, the name of the parent intent.

            
          

          - **inputContexts** *(list) --* 

            The input contexts that must be active for this intent to be considered for recognition.

            
            

            - *(dict) --* 

              A context that must be active for an intent to be selected by Amazon Lex.

              
              

              - **name** *(string) --* 

                The name of the context.

                
          
        
          

          - **outputContexts** *(list) --* 

            The output contexts that are activated when this intent is fulfilled.

            
            

            - *(dict) --* 

              Describes a session context that is activated when an intent is fulfilled.

              
              

              - **name** *(string) --* 

                The name of the output context.

                
              

              - **timeToLiveInSeconds** *(integer) --* 

                The amount of time, in seconds, that the output context should remain active. The time is figured from the first time the context is sent to the user.

                
              

              - **turnsToLive** *(integer) --* 

                The number of conversation turns that the output context should remain active. The number of turns is counted from the first time that the context is sent to the user.

                
          
        
          

          - **lastUpdatedDateTime** *(datetime) --* 

            The timestamp of the date and time that the intent was last updated.

            
      
    
      

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

        A token that indicates whether there are more results to return in a response to the ``ListIntents`` operation. If the ``nextToken`` field is present, you send the contents as the ``nextToken`` parameter of a ``ListIntents`` operation request to get the next page of results.

        
  
  **Exceptions**
  
  *   :py:class:`LexModelsV2.Client.exceptions.ThrottlingException`

  
  *   :py:class:`LexModelsV2.Client.exceptions.ServiceQuotaExceededException`

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

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

  