:doc:`ChimeSDKMessaging <../../chime-sdk-messaging>` / Client / update_channel_flow

*******************
update_channel_flow
*******************



.. py:method:: ChimeSDKMessaging.Client.update_channel_flow(**kwargs)

  

  Updates channel flow attributes. This is a developer API.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/UpdateChannelFlow>`_  


  **Request Syntax**
  ::

    response = client.update_channel_flow(
        ChannelFlowArn='string',
        Processors=[
            {
                'Name': 'string',
                'Configuration': {
                    'Lambda': {
                        'ResourceArn': 'string',
                        'InvocationType': 'ASYNC'
                    }
                },
                'ExecutionOrder': 123,
                'FallbackAction': 'CONTINUE'|'ABORT'
            },
        ],
        Name='string'
    )
    
  :type ChannelFlowArn: string
  :param ChannelFlowArn: **[REQUIRED]** 

    The ARN of the channel flow.

    

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

    Information about the processor Lambda functions

    

  
    - *(dict) --* 

      The information about a processor in a channel flow.

      

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

        The name of the channel flow.

        

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

        The information about the type of processor and its identifier.

        

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

          Indicates that the processor is of type Lambda.

          

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

            The ARN of the Lambda message processing function.

            

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

            Controls how the Lambda function is invoked.

            

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

        The sequence in which processors run. If you have multiple processors in a channel flow, message processing goes through each processor in the sequence. The value determines the sequence. At this point, we support only 1 processor within a flow.

        

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

        Determines whether to continue with message processing or stop it in cases where communication with a processor fails. If a processor has a fallback action of ``ABORT`` and communication with it fails, the processor sets the message status to ``FAILED`` and does not send the message to any recipients. Note that if the last processor in the channel flow sequence has a fallback action of ``CONTINUE`` and communication with the processor fails, then the message is considered processed and sent to recipients of the channel.

        

      
    

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

    The name of the channel flow.

    

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

    
    ::

      {
          'ChannelFlowArn': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **ChannelFlowArn** *(string) --* 

        The ARN of the channel flow.

        
  
  **Exceptions**
  
  *   :py:class:`ChimeSDKMessaging.Client.exceptions.BadRequestException`

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

  
  *   :py:class:`ChimeSDKMessaging.Client.exceptions.UnauthorizedClientException`

  
  *   :py:class:`ChimeSDKMessaging.Client.exceptions.ConflictException`

  
  *   :py:class:`ChimeSDKMessaging.Client.exceptions.ThrottledClientException`

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

  
  *   :py:class:`ChimeSDKMessaging.Client.exceptions.ServiceFailureException`

  