:doc:`Connect <../../connect>` / Client / create_routing_profile

**********************
create_routing_profile
**********************



.. py:method:: Connect.Client.create_routing_profile(**kwargs)

  

  Creates a new routing profile.

  

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


  **Request Syntax**
  ::

    response = client.create_routing_profile(
        InstanceId='string',
        Name='string',
        Description='string',
        DefaultOutboundQueueId='string',
        QueueConfigs=[
            {
                'QueueReference': {
                    'QueueId': 'string',
                    'Channel': 'VOICE'|'CHAT'|'TASK'|'EMAIL'
                },
                'Priority': 123,
                'Delay': 123
            },
        ],
        ManualAssignmentQueueConfigs=[
            {
                'QueueReference': {
                    'QueueId': 'string',
                    'Channel': 'VOICE'|'CHAT'|'TASK'|'EMAIL'
                }
            },
        ],
        MediaConcurrencies=[
            {
                'Channel': 'VOICE'|'CHAT'|'TASK'|'EMAIL',
                'Concurrency': 123,
                'CrossChannelBehavior': {
                    'BehaviorType': 'ROUTE_CURRENT_CHANNEL_ONLY'|'ROUTE_ANY_CHANNEL'
                }
            },
        ],
        Tags={
            'string': 'string'
        },
        AgentAvailabilityTimer='TIME_SINCE_LAST_ACTIVITY'|'TIME_SINCE_LAST_INBOUND'
    )
    
  :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 Name: string
  :param Name: **[REQUIRED]** 

    The name of the routing profile. Must not be more than 127 characters.

    

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

    Description of the routing profile. Must not be more than 250 characters.

    

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

    The default outbound queue for the routing profile.

    

  
  :type QueueConfigs: list
  :param QueueConfigs: 

    The inbound queues associated with the routing profile. If no queue is added, the agent can make only outbound calls.

     

    The limit of 10 array members applies to the maximum number of ``RoutingProfileQueueConfig`` objects that can be passed during a CreateRoutingProfile API request. It is different from the quota of 50 queues per routing profile per instance that is listed in `Amazon Connect service quotas <https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html>`__.

    

  
    - *(dict) --* 

      Contains information about the queue and channel for which priority and delay can be set.

      

    
      - **QueueReference** *(dict) --* **[REQUIRED]** 

        Contains information about a queue resource.

        

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

          The identifier for the queue.

          

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

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

          

        
      
      - **Priority** *(integer) --* **[REQUIRED]** 

        The order in which contacts are to be handled for the queue. For more information, see `Queues\: priority and delay <https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html>`__.

        

      
      - **Delay** *(integer) --* **[REQUIRED]** 

        The delay, in seconds, a contact should be in the queue before they are routed to an available agent. For more information, see `Queues\: priority and delay <https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html>`__ in the *Amazon Connect Administrator Guide*.

        

      
    

  :type ManualAssignmentQueueConfigs: list
  :param ManualAssignmentQueueConfigs: 

    The manual assignment queues associated with the routing profile. If no queue is added, agents and supervisors can't pick or assign any contacts from this routing profile. The limit of 10 array members applies to the maximum number of RoutingProfileManualAssignmentQueueConfig objects that can be passed during a CreateRoutingProfile API request. It is different from the quota of 50 queues per routing profile per instance that is listed in Amazon Connect service quotas.

     

    Note: Use this config for chat, email, and task contacts. It does not support voice contacts.

    

  
    - *(dict) --* 

      Contains information about the queue and channel for manual assignment behaviour can be enabled.

      

    
      - **QueueReference** *(dict) --* **[REQUIRED]** 

        Contains the channel and queue identifier for a routing profile.

        

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

          The identifier for the queue.

          

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

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

          

        
      
    

  :type MediaConcurrencies: list
  :param MediaConcurrencies: **[REQUIRED]** 

    The channels that 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) --* **[REQUIRED]** 

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

        

      
      - **Concurrency** *(integer) --* **[REQUIRED]** 

        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) --* **[REQUIRED]** 

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

          

        
      
    

  :type Tags: dict
  :param Tags: 

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

    

  
    - *(string) --* 

    
      - *(string) --* 

      


  :type AgentAvailabilityTimer: string
  :param AgentAvailabilityTimer: 

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

    

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

    
    ::

      {
          'RoutingProfileArn': 'string',
          'RoutingProfileId': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

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

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

        
      

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

        The identifier of the routing profile.

        
  
  **Exceptions**
  
  *   :py:class:`Connect.Client.exceptions.InvalidRequestException`

  
  *   :py:class:`Connect.Client.exceptions.InvalidParameterException`

  
  *   :py:class:`Connect.Client.exceptions.DuplicateResourceException`

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

  
  *   :py:class:`Connect.Client.exceptions.LimitExceededException`

  
  *   :py:class:`Connect.Client.exceptions.ThrottlingException`

  
  *   :py:class:`Connect.Client.exceptions.InternalServiceException`

  