:doc:`Connect <../../connect>` / Paginator / SearchContactFlowModules

************************
SearchContactFlowModules
************************



.. py:class:: Connect.Paginator.SearchContactFlowModules

  ::

    
    paginator = client.get_paginator('search_contact_flow_modules')

  
  

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

    Creates an iterator that will paginate through responses from :py:meth:`Connect.Client.search_contact_flow_modules`.

    See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/SearchContactFlowModules>`_    


    **Request Syntax**
    ::

      response_iterator = paginator.paginate(
          InstanceId='string',
          SearchFilter={
              'TagFilter': {
                  'OrConditions': [
                      [
                          {
                              'TagKey': 'string',
                              'TagValue': 'string'
                          },
                      ],
                  ],
                  'AndConditions': [
                      {
                          'TagKey': 'string',
                          'TagValue': 'string'
                      },
                  ],
                  'TagCondition': {
                      'TagKey': 'string',
                      'TagValue': 'string'
                  }
              }
          },
          SearchCriteria={
              'OrConditions': [
                  {'... recursive ...'},
              ],
              'AndConditions': [
                  {'... recursive ...'},
              ],
              'StringCondition': {
                  'FieldName': 'string',
                  'Value': 'string',
                  'ComparisonType': 'STARTS_WITH'|'CONTAINS'|'EXACT'
              },
              'StateCondition': 'ACTIVE'|'ARCHIVED',
              'StatusCondition': 'PUBLISHED'|'SAVED'
          },
          PaginationConfig={
              'MaxItems': 123,
              'PageSize': 123,
              'StartingToken': 'string'
          }
      )
      
    :type InstanceId: string
    :param InstanceId: **[REQUIRED]** 

      The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

      

    
    :type SearchFilter: dict
    :param SearchFilter: 

      Filters to be applied to search results.

      

    
      - **TagFilter** *(dict) --* 

        An object that can be used to specify Tag conditions inside the ``SearchFilter``. This accepts an ``OR`` of ``AND`` (List of List) input where:

         

        
        * Top level list specifies conditions that need to be applied with ``OR`` operator
         
        * Inner list specifies conditions that need to be applied with ``AND`` operator.
        

        

      
        - **OrConditions** *(list) --* 

          A list of conditions which would be applied together with an ``OR`` condition.

          

        
          - *(list) --* 

          
            - *(dict) --* 

              A leaf node condition which can be used to specify a tag condition, for example, ``HAVE BPO = 123``.

              

            
              - **TagKey** *(string) --* 

                The tag key in the tag condition.

                

              
              - **TagValue** *(string) --* 

                The tag value in the tag condition.

                

              
            
        
      
        - **AndConditions** *(list) --* 

          A list of conditions which would be applied together with an ``AND`` condition.

          

        
          - *(dict) --* 

            A leaf node condition which can be used to specify a tag condition, for example, ``HAVE BPO = 123``.

            

          
            - **TagKey** *(string) --* 

              The tag key in the tag condition.

              

            
            - **TagValue** *(string) --* 

              The tag value in the tag condition.

              

            
          
      
        - **TagCondition** *(dict) --* 

          A leaf node condition which can be used to specify a tag condition.

          

        
          - **TagKey** *(string) --* 

            The tag key in the tag condition.

            

          
          - **TagValue** *(string) --* 

            The tag value in the tag condition.

            

          
        
      
    
    :type SearchCriteria: dict
    :param SearchCriteria: 

      The search criteria to be used to return flow modules.

       

      .. note::

        

        The ``name`` and ``description`` fields support "contains" queries with a minimum of 2 characters and a maximum of 25 characters. Any queries with character lengths outside of this range will result in invalid results.

        

      

    
      - **OrConditions** *(list) --* 

        A list of conditions which would be applied together with an ``OR`` condition.

        

      
        - *(dict) --* 

          The search criteria to be used to return flow modules.

          

        
    
      - **AndConditions** *(list) --* 

        A list of conditions which would be applied together with an ``AND`` condition.

        

      
        - *(dict) --* 

          The search criteria to be used to return flow modules.

          

        
    
      - **StringCondition** *(dict) --* 

        A leaf node condition which can be used to specify a string condition.

        

      
        - **FieldName** *(string) --* 

          The name of the field in the string condition.

          

        
        - **Value** *(string) --* 

          The value of the string.

          

        
        - **ComparisonType** *(string) --* 

          The type of comparison to be made when evaluating the string condition.

          

        
      
      - **StateCondition** *(string) --* 

        The state of the flow.

        

      
      - **StatusCondition** *(string) --* 

        The status of the flow.

        

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

      
      ::

        {
            'ContactFlowModules': [
                {
                    'Arn': 'string',
                    'Id': 'string',
                    'Name': 'string',
                    'Content': 'string',
                    'Description': 'string',
                    'State': 'ACTIVE'|'ARCHIVED',
                    'Status': 'PUBLISHED'|'SAVED',
                    'Tags': {
                        'string': 'string'
                    },
                    'FlowModuleContentSha256': 'string',
                    'Version': 123,
                    'VersionDescription': 'string',
                    'Settings': 'string',
                    'ExternalInvocationConfiguration': {
                        'Enabled': True|False
                    }
                },
            ],
            'ApproximateTotalCount': 123
        }
        
      **Response Structure**

      

      - *(dict) --* 
        

        - **ContactFlowModules** *(list) --* 

          The search criteria to be used to return flow modules.

          
          

          - *(dict) --* 

            Contains information about a flow module.

            
            

            - **Arn** *(string) --* 

              The Amazon Resource Name (ARN).

              
            

            - **Id** *(string) --* 

              The identifier of the flow module.

              
            

            - **Name** *(string) --* 

              The name of the flow module.

              
            

            - **Content** *(string) --* 

              The JSON string that represents the content of the flow. For an example, see `Example flow in Amazon Connect Flow language <https://docs.aws.amazon.com/connect/latest/APIReference/flow-language-example.html>`__.

              
            

            - **Description** *(string) --* 

              The description of the flow module.

              
            

            - **State** *(string) --* 

              The type of flow module.

              
            

            - **Status** *(string) --* 

              The status of the flow module.

              
            

            - **Tags** *(dict) --* 

              The tags used to organize, track, or control access for this resource. For example, { "Tags": {"key1":"value1", "key2":"value2"} }.

              
              

              - *(string) --* 
                

                - *(string) --* 
          
        
            

            - **FlowModuleContentSha256** *(string) --* 

              Hash of the module content for integrity verification.

              
            

            - **Version** *(integer) --* 

              The version of the flow module.

              
            

            - **VersionDescription** *(string) --* 

              Description of the version.

              
            

            - **Settings** *(string) --* 

              The configuration settings for the flow module.

              
            

            - **ExternalInvocationConfiguration** *(dict) --* 

              The external invocation configuration for the flow module

              
              

              - **Enabled** *(boolean) --* 

                Enable external invocation.

                
          
        
      
        

        - **ApproximateTotalCount** *(integer) --* 

          The total number of flows which matched your search query.

          
    