:doc:`KafkaConnect <../../kafkaconnect>` / Client / update_connector

****************
update_connector
****************



.. py:method:: KafkaConnect.Client.update_connector(**kwargs)

  

  Updates the specified connector. For request body, specify only one parameter: either ``capacity`` or ``connectorConfiguration``.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/kafkaconnect-2021-09-14/UpdateConnector>`_  


  **Request Syntax**
  ::

    response = client.update_connector(
        capacity={
            'autoScaling': {
                'maxWorkerCount': 123,
                'mcuCount': 123,
                'minWorkerCount': 123,
                'scaleInPolicy': {
                    'cpuUtilizationPercentage': 123
                },
                'scaleOutPolicy': {
                    'cpuUtilizationPercentage': 123
                },
                'maxAutoscalingTaskCount': 123
            },
            'provisionedCapacity': {
                'mcuCount': 123,
                'workerCount': 123
            }
        },
        connectorConfiguration={
            'string': 'string'
        },
        connectorArn='string',
        currentVersion='string'
    )
    
  :type capacity: dict
  :param capacity: 

    The target capacity.

    

  
    - **autoScaling** *(dict) --* 

      The target auto scaling setting.

      

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

        The target maximum number of workers allocated to the connector.

        

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

        The target number of microcontroller units (MCUs) allocated to each connector worker. The valid values are 1,2,4,8.

        

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

        The target minimum number of workers allocated to the connector.

        

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

        The target scale-in policy for the connector.

        

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

          The target CPU utilization percentage threshold at which you want connector scale in to be triggered.

          

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

        The target scale-out policy for the connector.

        

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

          The target CPU utilization percentage threshold at which you want connector scale out to be triggered.

          

        
      
      - **maxAutoscalingTaskCount** *(integer) --* 

        The maximum number of tasks allocated to the connector during autoscaling operations. Must be at least equal to maxWorkerCount.

        

      
    
    - **provisionedCapacity** *(dict) --* 

      The target settings for provisioned capacity.

      

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

        The number of microcontroller units (MCUs) allocated to each connector worker. The valid values are 1,2,4,8.

        

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

        The number of workers that are allocated to the connector.

        

      
    
  
  :type connectorConfiguration: dict
  :param connectorConfiguration: 

    A map of keys to values that represent the configuration for the connector.

    

  
    - *(string) --* 

    
      - *(string) --* 

      


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

    The Amazon Resource Name (ARN) of the connector that you want to update.

    

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

    The current version of the connector that you want to update.

    

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

    
    ::

      {
          'connectorArn': 'string',
          'connectorState': 'RUNNING'|'CREATING'|'UPDATING'|'DELETING'|'FAILED',
          'connectorOperationArn': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **connectorArn** *(string) --* 

        The Amazon Resource Name (ARN) of the connector.

        
      

      - **connectorState** *(string) --* 

        The state of the connector.

        
      

      - **connectorOperationArn** *(string) --* 

        The Amazon Resource Name (ARN) of the connector operation.

        
  
  **Exceptions**
  
  *   :py:class:`KafkaConnect.Client.exceptions.NotFoundException`

  
  *   :py:class:`KafkaConnect.Client.exceptions.BadRequestException`

  
  *   :py:class:`KafkaConnect.Client.exceptions.ForbiddenException`

  
  *   :py:class:`KafkaConnect.Client.exceptions.ServiceUnavailableException`

  
  *   :py:class:`KafkaConnect.Client.exceptions.TooManyRequestsException`

  
  *   :py:class:`KafkaConnect.Client.exceptions.UnauthorizedException`

  
  *   :py:class:`KafkaConnect.Client.exceptions.InternalServerErrorException`

  