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

*********************
SearchRoutingProfiles
*********************



.. py:class:: Connect.Paginator.SearchRoutingProfiles

  ::

    
    paginator = client.get_paginator('search_routing_profiles')

  
  

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

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

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


    **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'
              }
          },
          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 <https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html>`__ 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 routing profiles.

       

      .. 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 throw 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 routing profiles.

           

          .. 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 throw invalid results.

            

          

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

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

        

      
        - *(dict) --* 

          The search criteria to be used to return routing profiles.

           

          .. 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 throw invalid results.

            

          

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

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

         

        .. note::

          

          The currently supported values for ``FieldName`` are ``associatedQueueIds``, ``name``, ``description``, and ``resourceID``.

          

        

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

          

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

      
      ::

        {
            'RoutingProfiles': [
                {
                    'InstanceId': 'string',
                    'Name': 'string',
                    'RoutingProfileArn': 'string',
                    'RoutingProfileId': 'string',
                    'Description': 'string',
                    'MediaConcurrencies': [
                        {
                            'Channel': 'VOICE'|'CHAT'|'TASK'|'EMAIL',
                            'Concurrency': 123,
                            'CrossChannelBehavior': {
                                'BehaviorType': 'ROUTE_CURRENT_CHANNEL_ONLY'|'ROUTE_ANY_CHANNEL'
                            }
                        },
                    ],
                    'DefaultOutboundQueueId': 'string',
                    'Tags': {
                        'string': 'string'
                    },
                    'NumberOfAssociatedQueues': 123,
                    'NumberOfAssociatedManualAssignmentQueues': 123,
                    'NumberOfAssociatedUsers': 123,
                    'AgentAvailabilityTimer': 'TIME_SINCE_LAST_ACTIVITY'|'TIME_SINCE_LAST_INBOUND',
                    'LastModifiedTime': datetime(2015, 1, 1),
                    'LastModifiedRegion': 'string',
                    'IsDefault': True|False,
                    'AssociatedQueueIds': [
                        'string',
                    ],
                    'AssociatedManualAssignmentQueueIds': [
                        'string',
                    ]
                },
            ],
            'ApproximateTotalCount': 123
        }
        
      **Response Structure**

      

      - *(dict) --* 
        

        - **RoutingProfiles** *(list) --* 

          Information about the routing profiles.

          
          

          - *(dict) --* 

            Contains information about a routing profile.

            
            

            - **InstanceId** *(string) --* 

              The identifier of the Amazon Connect instance. You can `find the instance ID <https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html>`__ in the Amazon Resource Name (ARN) of the instance.

              
            

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

              The name of the routing profile.

              
            

            - **RoutingProfileArn** *(string) --* 

              The Amazon Resource Name (ARN) of the routing profile.

              
            

            - **RoutingProfileId** *(string) --* 

              The identifier of the routing profile.

              
            

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

              The description of the routing profile.

              
            

            - **MediaConcurrencies** *(list) --* 

              The channels agents can handle in the Contact Control Panel (CCP) for this routing profile.

              
              

              - *(dict) --* 

                Contains information about which channels are supported, and how many contacts an agent can have on a channel simultaneously.

                
                

                - **Channel** *(string) --* 

                  The channels that agents can handle in the Contact Control Panel (CCP).

                  
                

                - **Concurrency** *(integer) --* 

                  The number of contacts an agent can have on a channel simultaneously.

                   

                  Valid Range for ``VOICE``: Minimum value of 1. Maximum value of 1.

                   

                  Valid Range for ``CHAT``: Minimum value of 1. Maximum value of 10.

                   

                  Valid Range for ``TASK``: Minimum value of 1. Maximum value of 10.

                  
                

                - **CrossChannelBehavior** *(dict) --* 

                  Defines the cross-channel routing behavior for each channel that is enabled for this Routing Profile. For example, this allows you to offer an agent a different contact from another channel when they are currently working with a contact from a Voice channel.

                  
                  

                  - **BehaviorType** *(string) --* 

                    Specifies the other channels that can be routed to an agent handling their current channel.

                    
              
            
          
            

            - **DefaultOutboundQueueId** *(string) --* 

              The identifier of the default outbound queue for this routing profile.

              
            

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

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

              
              

              - *(string) --* 
                

                - *(string) --* 
          
        
            

            - **NumberOfAssociatedQueues** *(integer) --* 

              The number of associated queues in routing profile.

              
            

            - **NumberOfAssociatedManualAssignmentQueues** *(integer) --* 

              The number of associated manual assignment queues in routing profile.

              
            

            - **NumberOfAssociatedUsers** *(integer) --* 

              The number of associated users in routing profile.

              
            

            - **AgentAvailabilityTimer** *(string) --* 

              Whether agents with this routing profile will have their routing order calculated based on *time since their last inbound contact* or *longest idle time*.

              
            

            - **LastModifiedTime** *(datetime) --* 

              The timestamp when this resource was last modified.

              
            

            - **LastModifiedRegion** *(string) --* 

              The Amazon Web Services Region where this resource was last modified.

              
            

            - **IsDefault** *(boolean) --* 

              Whether this a default routing profile.

              
            

            - **AssociatedQueueIds** *(list) --* 

              The IDs of the associated queue.

              
              

              - *(string) --* 
          
            

            - **AssociatedManualAssignmentQueueIds** *(list) --* 

              The IDs of the associated manual assignment queues.

              
              

              - *(string) --* 
          
        
      
        

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

          The total number of routing profiles which matched your search query.

          
    